From 8ae37ae80de38728c8c878ab24249450a570e97a Mon Sep 17 00:00:00 2001 From: kumavis Date: Thu, 30 Mar 2017 14:49:39 -0700 Subject: [PATCH] tests - helper - add note --- test/helper.js | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/test/helper.js b/test/helper.js index dd22d80b4..aaac7580e 100644 --- a/test/helper.js +++ b/test/helper.js @@ -26,27 +26,29 @@ function enableFailureOnUnhandledPromiseRejection() { // overwrite node's promise with the stricter Bluebird promise global.Promise = require('bluebird') + // modified from https://github.com/mochajs/mocha/issues/1926#issuecomment-180842722 + // rethrow unhandledRejections if (typeof process !== 'undefined') { process.on('unhandledRejection', function (reason) { - throw reason; - }); + throw reason + }) } else if (typeof window !== 'undefined') { // 2016-02-01: No browsers support this natively, however bluebird, when.js, // and probably other libraries do. if (typeof window.addEventListener === 'function') { window.addEventListener('unhandledrejection', function (evt) { - throw evt.detail.reason; - }); + throw evt.detail.reason + }) } else { - var oldOHR = window.onunhandledrejection; + var oldOHR = window.onunhandledrejection window.onunhandledrejection = function (evt) { - if (typeof oldOHR === 'function') oldOHR.apply(this, arguments); - throw evt.detail.reason; - }; + if (typeof oldOHR === 'function') oldOHR.apply(this, arguments) + throw evt.detail.reason + } } } else if (typeof console !== 'undefined' && typeof (console.error || console.log) === 'function') { - (console.error || console.log)('Unhandled rejections will be ignored!'); + (console.error || console.log)('Unhandled rejections will be ignored!') } } \ No newline at end of file