我正在尝试使用 Jasmine 2 的新done()
回调来测试异步设置的值。
我的测试基于 Jasmine 在他们的文档中给出的示例(http://jasmine.github.io/2.0/upgrading.html#section-Asynchronous_Specs):
it('can set a flag after a delay', function(done) {
var flag = false,
setFlag = function() {
//set the flag after a delay
setTimeout(function() {
flag = true;
done();
}, 100);
};
setFlag();
expect(flag).toBe(true);
});
我得到的结果是“预期为真”,所以我猜测它没有等待在检查标志值之前调用 done() 回调。
有谁知道为什么这个测试失败了?
谢谢!