测试返回值是一个承诺

时间:2016-01-06 15:23:23

标签: javascript angularjs jasmine angular-promise

给定具有功能的角度控制器

string base64 = safeBase64.Replace('-','+').Replace('_','/').Replace(',','=')

我如何使用Jasmine测试返回值是一个承诺?我可以很容易地验证我在函数内调用了resolve或者拒绝,或者我收到了jasmine.any(Function),但是我如何确保它是一个承诺?

1 个答案:

答案 0 :(得分:1)

我在测试中会这样做:

//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();
    });
})

它将确保您必须返回一个承诺,否则它将失败并超时。对我来说,这是最快的解决方案。

这是你在找什么?或者我误解了你?