我有以下功能,它使用 promise 和 .finally
进行服务调用:
myService.getStuff().then(function() {
this.doStuffWhenServiceOK();
}, function () {
this.doStuffWhenServiceFails();
}).finally(function() {
this.doFinally();
});
我正在使用以下 spy 监视此服务:
spyOn(myService, 'getStuff').and.callFake(function() {
return {
then: function (succesFn, errorFn) {
return succesFn();
}
};
});
问题是测试提示 .finally
未知。只是在 .then
之后添加它似乎不是一个解决方案......
return {
then: function(successFn) {
return successFn();
},
finally: function(successFn) {
return successFn();
}
}
谁知道如何在 callFake
spy 中链接 .then
和 .finally
?
我使用 Angular 1。
最佳答案
返回一个 finally 函数。
function then(succesFn, errorFn) {
succesFn();
return {finally:function() {}};
}
关于javascript - Jasmine - 如何在 callFake spy 中链接 `.then` 和 `.finally`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44157677/