【发布时间】:2015-07-14 10:15:47
【问题描述】:
以下测试在与诗乃的假计时器和蓝鸟一起使用时会冻结。
var sinon = require('sinon');
var Promise = require('bluebird');
describe('failing test', function() {
beforeEach(function() {
this.clock = sinon.useFakeTimers();
});
afterEach(function() {
this.clock.restore();
});
it('test', function(done) {
Promise.delay(1000).then(function(){
done(); //This never gets called
});
});
});
我正在将 Mocha (v2.2.5) 与 Bluebird (v2.9.33) 和 Sinon (v1.15.3) 一起使用。
我尝试了 Bluebird 和 Sinon 的一些讨论中提供的建议,但我无法完成这项工作。这似乎是 Sinon 存根 setImmediate 方式的问题,但除此之外我不知道如何解决这个问题。
【问题讨论】:
-
使用 Promise.setScheduler