Enzyme 浅いレンダリングを使用してテストしている SFC があります。このステートレス コンポーネントに小道具としてインライン スタイルを持つスタイル オブジェクトを渡しています。ただし、単体テストを適用すると、未定義が返されます。このコンポーネントは、渡されたものを小道具として返すだけであり、何も渡されたりレンダリングされたりしないため、未定義になっていることを理解しているため、それで問題ないかどうかはわかりません。これに対する回避策はありますか?
const LoginForm = ({ style, handleSubmit }) => {
return (
<form onSubmit={handleSubmit}>
<div style={_.get(style, 'container')}>
{inputFields}
</div>
</form>
);
};
テスト:
it('should apply styles to first div', () => {
const wrapper = shallow(<LoginForm style={{display: 'inline'}}/>);
expect(wrapper.find('div').first().prop('style')).to.eql({display: 'inline'});
});