我正在尝试编写具有嵌套承诺的测试工作。由于某种原因,承诺永远不会回来。
例如
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();
});
});
});
奇怪的是,如果这个测试是由它自己运行的那么它会通过。但如果这些测试不止一个,那就失败了。
当测试失败时,似乎永远不会返回第一个承诺。所以我们甚至没有看到第一个控制台消息。 我的问题是如何运行这种测试,为什么它不能正常工作。