这是我问的上一个问题Event listeners and refs in React 16的后续内容。我正在尝试实施一项测试,以确保resize事件已正确侦听并使用组件中的Top Level start 77976
Id Per_Router Prod_No Rout_No
NULL 1 81253 77976
NULL 1 81235 77976
NULL 1 67907 77976
NULL 1 66772 77976
21202 2 NULL 77976
41978 1 NULL 77976
41979 1 NULL 77976
Sub-components of 81253
20373 11 NULL 81253
20377 1 NULL 81253
20379 1 NULL 81253
20388 4 NULL 81253
Sub-components of 81235
20265 1 NULL 81235
28957 1 NULL 81235
NULL 1 53755 81235
NULL 1 53788 81235
NULL 1 59516 81235
Sub-sub-components 53755
Sub-sub-components 53788
Sub-sub-components 59516
Sub-components of 67907
Sub-components of 66772
...
...
函数进行处理。我有以下测试:
updateWidth
但是当我运行它时,出现以下错误:
it(`should always listen to 'resize' event and handle it with 'updateWidth'`, () => {
const map = {};
window.addEventListener = jest.fn((event, callback) => {
map[event] = callback;
});
const wrapper = mount(<Footer {...props} />);
// simulate event
map.resize();
expect(wrapper.updateWidth).toHaveBeenCalled();
});
我该如何解决?
答案 0 :(得分:0)
我不确定props
是什么对象,但是如果它包含updateWidth
方法,则您需要expect(wrapper.props().updateWidth).toHaveBeenCalled();
或只是expect(props.updateWidth).toHaveBeenCalled();