gpt4 book ai didi

javascript - Jasmine - 如何在 callFake spy 中链接 `.then` 和 `.finally`?

转载 作者:行者123 更新时间:2023-11-28 21:24:26 24 4
gpt4 key购买 nike

我有以下功能,它使用 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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com