summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuben Bridgewater <ruben@bridgewater.de>2019-06-14 10:49:20 +0200
committerBeth Griggs <Bethany.Griggs@uk.ibm.com>2020-02-06 02:49:39 +0000
commit749bc16cca015c1370b90870fd031d3b7a1bbf4d (patch)
tree2f81d2897c2341fde581da5daffe6493102762a6
parenta1d36db9d899f7b5ad3f5f33c65d1628a79a7d82 (diff)
downloadnode-new-749bc16cca015c1370b90870fd031d3b7a1bbf4d.tar.gz
assert: fix generatedMessage property
This makes sure the `generatedMessage` property is always set as expected. This was not the case some `assert.throws` and `assert.rejects` calls. Backport-PR-URL: https://github.com/nodejs/node/pull/31431 PR-URL: https://github.com/nodejs/node/pull/28263 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
-rw-r--r--lib/assert.js13
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/assert.js b/lib/assert.js
index 025e5bedc0..eb74493c44 100644
--- a/lib/assert.js
+++ b/lib/assert.js
@@ -578,14 +578,21 @@ function expectedException(actual, expected, message, fn) {
if (expected.test(str))
return;
- throw new AssertionError({
+ if (!message) {
+ generatedMessage = true;
+ message = 'The input did not match the regular expression ' +
+ `${inspect(expected)}. Input:\n\n${inspect(str)}\n`;
+ }
+
+ const err = new AssertionError({
actual,
expected,
- message: message || 'The input did not match the regular expression ' +
- `${inspect(expected)}. Input:\n\n${inspect(str)}\n`,
+ message,
operator: fn.name,
stackStartFn: fn
});
+ err.generatedMessage = generatedMessage;
+ throw err;
}
// Handle primitives properly.