diff --git a/lib/mocha/asyncWrapper.js b/lib/mocha/asyncWrapper.js index 354cb35ed..a3aba83cb 100644 --- a/lib/mocha/asyncWrapper.js +++ b/lib/mocha/asyncWrapper.js @@ -121,9 +121,19 @@ module.exports.injected = function (fn, suite, hookName) { const errHandler = err => { recorder.session.start('teardown') recorder.cleanAsyncErr() - if (hookName == 'before' || hookName == 'beforeSuite') suiteTestFailedHookError(suite, err, hookName) - if (hookName === 'after') suite.eachTest(test => event.emit(event.test.after, test)) - if (hookName === 'afterSuite') event.emit(event.suite.after, suite) + if (hookName === 'before' || hookName === 'beforeSuite') { + suiteTestFailedHookError(suite, err, hookName) + } + if (hookName === 'after') { + suiteTestFailedHookError(suite, err, hookName) + suite.eachTest(test => { + event.emit(event.test.after, test) + }) + } + if (hookName === 'afterSuite') { + suiteTestFailedHookError(suite, err, hookName) + event.emit(event.suite.after, suite) + } recorder.add(() => doneFn(err)) }