Я запускаю некоторые асинхронные тесты в Mocha с помощью браузера Runner, и я пытаюсь использовать утверждения о ожиданиях Chai:
window.expect = chai.expect;
describe('my test', function() {
it('should do something', function (done) {
setTimeout(function () {
expect(true).to.equal(false);
}, 100);
}
}
Это не дает мне нормальное сообщение об ошибке, но я получаю:
Error: the string "Uncaught AssertionError: expected true to equal false" was thrown, throw an Error :)
at Runner.fail (http://localhost:8000/tests/integration/mocha/vendor/mocha.js:3475:11)
at Runner.uncaught (http://localhost:8000/tests/integration/mocha/vendor/mocha.js:3748:8)
at uncaught (http://localhost:8000/tests/integration/mocha/vendor/mocha.js:3778:10)
Таким образом, очевидно, что он поймал ошибку, просто не отображая ее правильно. Есть идеи, как это сделать? Думаю, я мог бы просто называть "сделанным" с объектом ошибки, но потом я теряю всю элегантность чего-то вроде Чай, и он становится очень неуклюжим...