延迟加载测试:
我正在尝试为 Jasmine 构建一个测试来测试使用 Q.delay 的方法. 为了等待 10 秒,我正在使用 Jasmine 的 clock :
jasmine.Clock.tick(10010);
这适用于 Chrome 但不适用于 Firefox。我看到 Q 的延迟方法使用了 setTimeout 所以我看不出有任何不同行为的原因。
知道为什么它在 Firefox 上失败了吗?
最佳答案
Jasmine 2.0 和 Q 在 v1 tag ,我能够运行这个规范:
describe("testing", function() {
beforeEach(function() {
jasmine.clock().install();
});
afterEach(function() {
jasmine.clock().uninstall();
});
it("should work", function() {
var foo = null;
Q.delay('hi', 10000).then(function(arg) {
foo = arg;
});
jasmine.clock().tick(10010);
expect(foo).toEqual('hi');
});
});
chrome、firefox 和 phantomjs 都没有问题。我不确定这是否是因为我们已经在 2.0 中解决了这个问题,或者如果您有一些更复杂的规范,我不会在这里复制。
关于javascript - Jasmine clock tick & Firefox : failing to trigger a Q.延时方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18126604/