我有一个函数返回一个(可能已填充) ES6 承诺,我想编写一个 Jasmine 测试来检查它是否成功解析并且解析的值是否正确。我该怎么做?
这是我目前找到的方式,但至少很无聊:
describe("Promises", function() {
it("should be tested", function(done) {
var promise = functionThatReturnsAPromise();
promise.then(function(result) {
expect(result).toEqual("Hello World");
done();
}, function() {
expect("promise").toBe("successfully resolved");
done();
});
});
});
还有一个名为jasmine-as-promised的库,看起来很有帮助,但遗憾的是它在 Jasmine 2.0 中不起作用,因为它使用runs()
的已被删除。
是否已经为测试 Jasmine 2.0 中的 Promise 开发了任何舒适的解决方案?