У меня есть компонент, который использует Реактивная навигация
В ComponentA вызовет
oncallback = () => { this.setstate({called: true})};
navigation.navigate('ComponentB', {callBack:this.oncallback})
В ComponentB, в какой-то момент он вызовет
this.props.navigation.getParam('callback')();
Я попробовал следующее в моем тесте
const oncallbackMock = jest.fn();
const navigationMock: any = {
navigate: jest.fn(),
getParam: jest.fn().mockReturnValue(oncallbackMock),
};
const wrapper = shallow(<ComponentA navigation={navigationMock} />);
oncallbackMock(); // doesn't seem to call ComponentA's oncallback to set state?
expect(wrapper.state('called')).toEqual(true); // assert failed, it is false