使用ember mocha和chai可能有两个var.labels
?
尝试做这样的事情(不起作用)
dones
但我不想说function doSomething() {
it('somethinng else', function(done) {
var res = false
Ember.run.later(() => {
expect(res).to.be.true
done()
})
})
}
it('somethinng', function(done) {
doSomething()
Ember.run.later(() => {
//do other things
done()
})
})
实际上已经完成了。在一个mocha / chai测试中测试两个异步函数的正确方法是什么
一个很好的选择是,如果它们是mocha或chai中的一些功能,相当于Qunit的assert.async https://api.qunitjs.com/async/
答案 0 :(得分:1)
您的初始尝试无效,因为Mocha不允许嵌套it
次呼叫(即it
无法呼叫it
)。如果要链接两个带回调的异步操作,您只需将自定义回调传递给第一个,然后将it
的{{1}}传递给第二个。调整代码:
done
function doSomething (done) {
var res = false;
Ember.run.later(() => {
expect(res).to.be.true;
done();
});
}
it('something', function (done) {
doSomething(function () {
doSomethingElse(done);
});
});
将在doSomethingElse
完成后运行。我假设doSomething
是一些异步操作,需要回调来通知完成。