diff options
author | Ruben Bridgewater <ruben@bridgewater.de> | 2019-06-14 10:49:20 +0200 |
---|---|---|
committer | Ruben Bridgewater <ruben@bridgewater.de> | 2019-10-01 22:55:11 +0200 |
commit | 0b3242c3ce0ff2cdf9c740f45f3755a683073c32 (patch) | |
tree | 02d52090b0e692b17ed2b9fb1e9a70ad7721bd2e /lib/assert.js | |
parent | ace3f169172d1f2d9e72707ec949b802f09d47d1 (diff) | |
download | android-node-v8-0b3242c3ce0ff2cdf9c740f45f3755a683073c32.tar.gz android-node-v8-0b3242c3ce0ff2cdf9c740f45f3755a683073c32.tar.bz2 android-node-v8-0b3242c3ce0ff2cdf9c740f45f3755a683073c32.zip |
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.
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>
Diffstat (limited to 'lib/assert.js')
-rw-r--r-- | lib/assert.js | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/assert.js b/lib/assert.js index 035a7e1746..1beb33265d 100644 --- a/lib/assert.js +++ b/lib/assert.js @@ -571,14 +571,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. |