модульное тестирование if (! response.error) с использованием Jest Enzyme - PullRequest
0 голосов
/ 11 июня 2019

Пройдите следующий тест, используя Jest и Фермент

it('Test createAccount function ',async() => {
    wrapper.setProps({})
    wrapper.find('AccountForm').setState({});
    wrapper.update();
    await 
    expect(wrapper.find('AccountForm').instance().createAccount()).toBeDefined()
});

Вот основной файл JS

async createAccount(){
    const { user, services } = this.props;
    let AccountBody = { //list of this.states }
    let response = await Models.postAccount({
        user,
        services,
        firmId: FirmId,
        body: AccountBody
    })
    if(!response.error) { 
        return true;
    } else {
        return false;
    }
}

Не совсем уверен, как подойти к модульному тесту, чтобы проверить ответ и его возвращение

let response = await Models.postAccount({

Как я могу вызвать ответ в моем тесте выше, чтобы убедиться, что вся функция проверена правильно. Я делал подобные модульные тесты в прошлом, но не слишком знаком, когда дело доходит до async / await и response

Я ценю любую помощь.

1 Ответ

1 голос
/ 14 июня 2019

Вам нужны фиктивные models.postAccounts в ваших тестовых случаях

models.postAccounts = jest.fn().mockImplementation(() => Promise.resolve("YourResponse"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...