【发布时间】:2016-04-18 22:00:14
【问题描述】:
我正在尝试让 chai-as-promised 与 $q 承诺与业力单元测试一起工作。
svc.test = function(foo){
if (!foo){
// return Promise.reject(new Error('foo is required'));
return $q.reject(new Error('foo is required'));
} else {
// get data via ajax here
return $q.resolve({});
}
};
it.only('should error on no foo', function(){
var resolvedValue = MyServices.test();
$rootScope.$apply();
return resolvedValue.should.eventually.be.rejectedWith(TypeError, 'foo is required');
});
单元测试只是超时。我不确定我在这里做错了什么才能得到正确解决的承诺。使用$q 似乎是个问题——当我使用本机Promise.reject() 时它工作正常。
我在这里提交了一张票,但似乎没有人回应: https://github.com/domenic/chai-as-promised/issues/150
【问题讨论】:
标签: angularjs karma-runner chai chai-as-promised