summaryrefslogtreecommitdiff
path: root/lib/assert.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/assert.js')
-rw-r--r--lib/assert.js11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/assert.js b/lib/assert.js
index 50ab6b39b1..0b256e604e 100644
--- a/lib/assert.js
+++ b/lib/assert.js
@@ -620,8 +620,13 @@ function expectedException(actual, expected, message, fn) {
generatedMessage = true;
message = 'The error is expected to be an instance of ' +
`"${expected.name}". Received `;
+ // TODO: Special handle identical names.
if (isError(actual)) {
- message += `"${actual.name}"`;
+ const name = actual.constructor && actual.constructor.name;
+ message += `"${name || actual.name}"`;
+ if (actual.message) {
+ message += `\n\nError message:\n\n${actual.message}`;
+ }
} else {
message += `"${inspect(actual, { depth: -1 })}"`;
}
@@ -636,6 +641,10 @@ function expectedException(actual, expected, message, fn) {
const name = expected.name ? `"${expected.name}" ` : '';
message = `The ${name}validation function is expected to return` +
` "true". Received ${inspect(res)}`;
+
+ if (isError(actual)) {
+ message += `\n\nCaught error:\n\n${actual}`;
+ }
}
throwError = true;
}