我在进行简单的异步测试时遇到了一些麻烦。以下代码不会在控制台中引发任何错误,即使它应该,因为data
传递给函数的值不等于0
:
define([
'intern!bdd',
'intern/chai!expect'
], function (bdd, expect) {
with (bdd) {
describe('Test', function () {
it('async test', function(){
var dfd = this.async(2000);
var wait = function(ms) {
setTimeout(function(){
dfd.resolve('test');
}, ms);
return dfd.promise;
};
wait(1500).then(dfd.callback(function (data) {
// data === 'test', so this should fail.
expect(data).to.equal(0);
}), dfd.reject.bind(dfd));
});
});
}
});
我很确定我在某个地方搞砸了,因为直到现在我才使用承诺,但我不知道在哪里。任何想法都会有很大帮助。谢谢!