测试返回值是一个承诺
Test that returned value is a promise
给定 angular 具有功能的控制器
this.checkResponse = function (response) {
if (response.success === true) {
return $q.resolve(response);
} else {
return $q.reject(response);
}
};
如何使用 Jasmine 测试返回值是否为 Promise?我可以很容易地验证我在函数内部调用了 resolve 或 reject,或者我收到了 jasmine.any(Function),但我如何确保它是一个承诺?
我会在测试中这样做:
//done callback will ensure that success function should called
it('blabla', function(done){
//when
app.checkResponse().then(function(){
done();
}, function(){
fail("error callback has been called");
done();
});
})
它将确保您必须 return 承诺,否则它将因超时而失败。对我来说,这是最快的解决方案。
这就是您要找的吗?还是我误会你了?
给定 angular 具有功能的控制器
this.checkResponse = function (response) {
if (response.success === true) {
return $q.resolve(response);
} else {
return $q.reject(response);
}
};
如何使用 Jasmine 测试返回值是否为 Promise?我可以很容易地验证我在函数内部调用了 resolve 或 reject,或者我收到了 jasmine.any(Function),但我如何确保它是一个承诺?
我会在测试中这样做:
//done callback will ensure that success function should called
it('blabla', function(done){
//when
app.checkResponse().then(function(){
done();
}, function(){
fail("error callback has been called");
done();
});
})
它将确保您必须 return 承诺,否则它将因超时而失败。对我来说,这是最快的解决方案。
这就是您要找的吗?还是我误会你了?