v5.0.2
5.0.2 / 2018-03-05
This release fixes a class of tests which report as false positives. Certain tests will now break, though they would have previously been reported as passing. Details below. Sorry for the inconvenience!
🐛 Fixes
-
#3226: Do not swallow errors that are thrown asynchronously from passing tests (@boneskull). Example:
it('should actually fail, sorry!', function (done) { // passing assertion assert(true === true); // test complete & is marked as passing done(); // ...but something evil lurks within setTimeout(() => { throw new Error('chaos!'); }, 100); });
Previously to this version, Mocha would have silently swallowed the
chaos!exception, and you wouldn't know. Well, now you know. Mocha cannot recover from this gracefully, so it will exit with a nonzero code.Maintainers of external reporters: If a test of this class is encountered, the
Runnerinstance will emit theendevent twice; you may need to change your reporter to userunner.once('end')intead ofrunner.on('end'). -
#3093: Fix stack trace reformatting problem (@outsideris)
🔩 Other
- #3248: Update
browser-stdoutto v1.3.1 (@honzajavorek)