jest.spyOn не называется
Я пытаюсь проверить этот компонент, используя шутку и фермент в реакции нативного:
export class MyItem extends PureComponent {
_onDelete = () => {
console.log('Deleting !')
}
_renderSwpItem = () => {
return (
<TouchableOpacity id="delete" onPress={this._onDelete}>
<Icon name="delete" size={50} color={Colors.white}/>
</TouchableOpacity>
)
}
...
}
Итак, я написал:
describe('Testing MyItem', () => {
const wrapper = shallow( <MyItem />)
it('_renderSwptItem press works', () => {
const instance = wrapper.instance()
const swpWrapper = shallow(instance._renderSwpItem())
const deletePressSpy = jest.spyOn(instance, '_onDelete')
swpWrapper.find('#delete').simulate('press')
expect(deletePressSpy).toHaveBeenCalledTimes(1)
})
})
Я могу видеть в журнале Deleting !
но expect(deletePressSpy).toHaveBeenCalledTimes(1)
выходит из строя. Что я делаю неправильно?
1 ответ
Кажется, что вызов spyOn перед вызовом shallow(instance._renderSwpItem())
делает трюк. Не уверен, почему подумал...