Я использую энзим и шутку и хочу проверить, что родительский метод вызывается при вызове дочерних реквизитов.
У меня есть что-то вроде этого
class Parent extends Component {
method = () => {...}
render() {
<Child propMethod={method}/>
}
}
И в тесте I сделать что-то вроде этого
let shallow;
function setup() {
const props = {
mockMethod: jest.fn()
};
const enzymeWrapper = shallow(<Parent {...props}/>);
return {
props,
enzymeWrapper
};
}
beforeAll(() => {
shallow = createShallow({ dive: true });
});
describe('components', () => {
describe('Child', () => {
it('should call method', () => {
const { enzymeWrapper, props } = setup()
const component = enzymeWrapper.find(Child)
component.prop('propMethod')();
expect(props.mockMethod).toHaveBeenCalledTimes(1);
})
});
});
Но я получаю
Expected number of calls: 1
Received number of calls: 0
Структура теста из документации Redux
здесь