条件付きで呼び出されるprop(callback)関数をテストするにはどうすればよいですか?次のような条件でprop関数を子に渡すコンポーネントがあります。
if(this.props.myFun) {
this.props.myFun();
}
これをテストするために、ここに2つのケースがあります。1。小道具がコンポーネントに渡される場合
<ChildComp myFun={value => value } /> and I can test it from the child-
const comp = mountWithIntl(<ChildComp myFun={value => value } />);
expect(comp.instance().props.myFun).toHaveBeenCalled();
- 小道具が渡されない場合:私は
const comp = mountWithIntl(<MyComp />);
expect(comp.instance().props.myFun).not.toHaveBeenCalled();
ただし、コンポーネントのマウント中に支柱をモックすると、メソッドが呼び出されます。しかし、未定義またはモックされていない小道具をテストするにはどうすればよいですか?私が小道具を渡さない場合:
expect(comp.instance().props.myFun).not.toHaveBeenCalled();
私は取得します:
jest.fn()の値はモック関数またはスパイである必要があります
私のコードではできないことを助けてください
渡されなかった関数が呼び出されないことをテストできるとは思いません。その関数なしでレンダリングされるかどうかをテストするためにできること。それで十分なはずです
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加