如何用笑话测试功能?

时间:2019-05-06 09:42:26

标签: reactjs unit-testing react-native jestjs

我正在对本机进行一些测试以测试本机,但我仍然保持功能。如果您在下面有关于此功能的解决方案,请写下回复。 预先感谢!

resetPassOrCode() {

    this.setState({
        confirm: true
    });

    fetch(getResetPasswordUrl(), {
        method: 'POST',
        headers: {
            'Accept': 'application/json',
            'Content-Type': 'application/json'
        },
        body: JSON.stringify({resetCriteria: this.state.cd})
    })
    .then(function (response) {
        if (response.status === 201) {
            Toast.show(LOGIN[this.state.language].EMAIL_SENT_SUCCESS)
        } else if (response.status === 404) {
            this.setState({
                confirm: false
            });
            Toast.show(LOGIN[this.state.language].USER_FOUND_ERROR)
        }
    })
    .catch((error) => {
        this.setState({
            confirm: false
        });
        console.log(error);
    })
}

1 个答案:

答案 0 :(得分:0)

您可以如下模拟获取:

var mockPromise = new Promise((resolve, reject) => {
  resolve(<mock response data similar to actual promise response>);
});

fetch = jest.fn().mockReturnValueOnce(mockPromise)