Я тестирую реактивный нативный компонент, который использует компонент ToastAndroid в методе, и во время тестирования с ферментом я получаю ошибку TypeError: _reactNative.ToastAndroid.show is not a function
Я использую react-native-mock-renderer
для шутки, и у моего компонента есть метод, который вызывается с помощью обработчика onPress.
validateAndProceed = () => {
ToastAndroid.show(
'Show toast',
ToastAndroid.SHORT,
);
};
и мой тест для проверки
it('should validate and process', () => {
const wrapper = shallow(<Component
/>);
const instance = wrapper.dive().instance();
jest.spyOn(instance, 'validateAndProceed');
instance.validateAndProceed();
expect(instance.validateAndProceed).toHaveBeenCalled();
});
Я создал пользовательский макет для ToastAndroid
const ToastAndroid = {
SHORT: '',
LONG: '',
TOP: '',
BOTTOM: '',
CENTER: '',
show: jest.fn(),
showWithGravity: jest.fn(),
showWithGravityAndOffset: jest.fn(),
};
module.exports = ToastAndroid;
Все еще не работает