如何测试在使用jest + enzyme + react + typescript的方法中调用函数?

时间:2018-02-22 14:52:22

标签: reactjs typescript enzyme jest

说我在反应组件中有这个方法

handleSubmit(){
    if (this.state.fireRedirect === false){
        this.setState({ fireRedirect: true }, () => { this.addEndpoint() });
    }
}

如何测试使用Jest和Enzyme调用addEndpoint?

1 个答案:

答案 0 :(得分:2)

使用jest.spyOn

  const spy = jest.spyOn(Component.prototype, "addEndPoint");
  const wrapper = shallow(<Component/>);
  expect(spy).not.toHaveBeenCalled();
  wrapper.instance().handleSubmit();
  expect(spy).toHaveBeenCalled();