我应该怎样用mocha和chai测试我的承诺失败了?
我很困惑,因为我最初认为我应该使用'mocha-as-promised',但是该软件包现在已被弃用(我正在使用mocha 2.1.0),建议只使用现在内置的promise测试摩卡.请参阅:https://github.com/domenic/mocha-as-promised
另一篇文章建议废除it()回调的'done'参数 - 不确定我理解为什么,因为我的理解是传递'done'参数是表示测试是异步测试的方式.请参阅:如何使用mocha和chai正确测试承诺?
无论如何,我试图将我的问题减少到下面的代码 - 请帮我修改这个,以便我可以测试我的承诺确实失败了.
it.only("do something (negative test)", function (done) {
var Q = require('q');
function makePromise() {
var deferred = Q.defer();
deferred.reject(Error('fail'));
return deferred.promise;
};
makePromise()
.then(done, done);
});
Run Code Online (Sandbox Code Playgroud)