У меня есть такой метод
fetch('first api')
.then(resp => {
if (resp.status === '500') {
return Promise.reject('some error');
}
return fetch('second api');
})
.then(resp => {
// do something;
})
.catch(resp => {
// do something;
});
Я озвучиваю первый вызов извлечения как
const stub = sinon.stub(window, 'fetch');
Теперь, чтобы проверить успех, позвоните
stub.withArgs('first api').returns(Promise.resolve(//window.Response));
или сбой
stub.withArgs('first api').returns(Promise.reject(//window.Response));
Есть два вопроса:
- Как я могу
spy
, чтобы в случае сценария с первой ошибкой API не вызывался API второй выборки?
- Как я могу заблокировать оба вызова выборки и проверить, что последний
then
вызывается, когда оба вызова выборки разрешены?
Спасибо.