我在通过测试规范(以下)时遇到麻烦,该规范在获取失败后将调用间谍日志。故障参考是“预期的间谍日志已被调用”。我在handleErrors中调用的函数将输出预期的结果,因此间谍日志是我想要了解的唯一内容。任何建议将不胜感激!谢谢。
//Test
it('should recover on fetch error', function(done){
window.path = "xyz";
spyOn(console, "log").and.callFake(function(){});
function check(output) {
window.path = "xyy";
expect(console.log).toHaveBeenCalled();
console.log.calls.reset();
retrieve().then(function(output){
var expected = {expectedOutput}
expect(output).toEqual(expected);
expect(console.log).not.toHaveBeenCalled();
done();
});
}
retrieve().then(check);
});
//function
function handleErrors(response) {
if (!response.ok) {
normalRetrieve()
}
return response;
}
//directly after fetch request
.then(handleErrors)