У меня есть простой функциональный компонент, который мне нужно проверить.
const Product = () => {
const handleOnChange = (value) => {
console.log(value);
}
return (
<div>
<input type="text" onChange={(e) => {handleOnChange(e.target.value)}} />
</div>
)
}
Я бы хотел проверить, вызывается ли функция handleOnChange, когда вход меняет свое значение. Я попробовал это:
let wrapper;
beforeEach(() => {
wrapper = shallow(<Product />);
});
describe('Product interactions', () => {
it('should call handleOnChange function on input change', () => {
const mockedhandleOnChange = jest.fn();
wrapper.handleOnChange = mockedhandleOnChange;
wrapper.find('input').simulate('change', {target: {value: 10}});
expect(mockedhandleOnChange).toHaveBeenCalledTimes(1);
});
});
Конечно, это не работает, так как я не могу добраться до функции через "wrapper.handleOnChange".
Пожалуйста, помогите !