我在茉莉花测试中有一个非常简单的功能,我只是返回$ q.reject
var mockFunction = function() {
return $q.reject("error");
};
我称之为:
mockFunction().catch(function(){
// ... blah
});
永远不会调用catch回调函数。如果我理解正确,$ q.resolve应该创建一个承诺,立即拒绝并返回被拒绝的承诺,所以我不确定为什么这不起作用
任何见解都表示赞赏。谢谢!
答案 0 :(得分:2)
$ q承诺链不会在规格中自动执行,它应该是
mockFunction().catch(function(){
// ... blah
});
$rootScope.$digest();
启动它,在这种情况下链将同步执行。