All
Я новичок в Jest, раздел Тестирование асинхронного кода привел меня в замешательство, он предоставляет множество способов справиться с одним и тем же случаем:
[1] done()
[2] expect.assertions(1) + return Promise
[3] expect.assertions(1) + return expect.resolves
[4] async callback + await + NO return expect
И еще более странно, когда я попадаю в раздел Mock Functions :
Секция макета модуля:
//users.test.js
import axios from 'axios';
import Users from './users';
jest.mock('axios');
test('should fetch users', () => {
const resp = {data: [{name: 'Bob'}]};
axios.get.mockResolvedValue(resp);
// or you could use the following depending on your use case:
// axios.get.mockImplementation(() => Promise.resolve(resp))
return Users.all().then(users => expect(users).toEqual(resp.data));
});
Интересно, какой из этих четырех способов используется здесь? Любая деталь?