Jasmine测试嵌套角度承诺不会返回承诺

时间:2015-12-01 14:21:24

标签: javascript angularjs jasmine

我正在尝试编写具有嵌套承诺的测试工作。由于某种原因,承诺永远不会回来。

例如

describe('Some tests', function ()
{
    it("Should complete the test with the nested promises", function(done)
    {
        inject(function (SomeService, $rootScope)
        {
            SomeService.somePromise().then(function(err)
            {
                 console.log("Message 1");
                 expect(err).toBeNull();
                 SomeService.someOtherPromise.then(function(res)
                 {
                     console.log("Message 2");
                     // Check some data
                     done();
                 });
            });
            $rootScope.$digest();
        });
    });
});

奇怪的是,如果这个测试是由它自己运行的那么它会通过。但如果这些测试不止一个,那就失败了。

当测试失败时,似乎永远不会返回第一个承诺。所以我们甚至没有看到第一个控制台消息。 我的问题是如何运行这种测试,为什么它不能正常工作。

0 个答案:

没有答案