2017-05-19 7 views
0

を私は要素を頭に要素を追加するために反応し、ヘルメットを使用しています。ユニットテストが反応し、ヘルメットコード

<Helmet> 
    <title>title</title> 
    <meta name="description" content="description" /> 
    <meta name="keywords" content="keywords" /> 
</Helmet> 

そして、私はこのようなユニットテストを記述しようとしています:

it('should render metadata',() => { 
    const wrapper = mount(<Metadata/>); 
    // this is not working. 
    expect(document.title).to.equal("title"); 
}); 
+0

私は間違っているかもしれませんが、あなたの期待通りに 'wrapper'を参照する必要はありませんか? 'expect(wrapper.title)...'やそのようなものがあります。 – sesamechicken

+0

ヘルメットはコンテンツを表示しないので、タイトルはタイトルに追加されません。 – emphaticsunshine

+0

申し訳ありませんが、タイトルはドキュメントに追加されません。 – emphaticsunshine

答えて

1

私は答えを自分で考え出しました。私は次のようにしました:

it('should render metadata',() => { 
    const wrapper = mount(<Metadata/>); 
    // this will return all the markup assigned to helmet 
    // which will get rendered inside head. 
    const helmet = Helmet.peek(); 
    expect(helmet.title).to.equal("title"); 
}); 

これは単体テストのトリックです。

関連する問題