errors: update error name

This updates all Node.js errors by removing the `code` being part
of the `name` property. Instead, the name is just changed once on
instantiation, the stack is accessed to create the stack as expected
and then the `name` property is set back to it's original form.

PR-URL: https://github.com/nodejs/node/pull/26738
Fixes: https://github.com/nodejs/node/issues/26669
Fixes: https://github.com/nodejs/node/issues/20253
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
This commit is contained in:
Ruben Bridgewater 2019-03-16 12:09:14 +01:00
parent c757cb1b98
commit 1ed3c54ecb
No known key found for this signature in database
GPG key ID: F07496B3EB3C1762
71 changed files with 283 additions and 284 deletions

View file

@ -6,7 +6,7 @@ const assert = require('assert');
const { E, SystemError, codes } = require('internal/errors');
assert.throws(
() => { throw new SystemError(); },
() => { new SystemError(); },
{
name: 'TypeError',
message: 'Cannot read property \'match\' of undefined'
@ -29,7 +29,7 @@ const { ERR_TEST } = codes;
() => { throw new ERR_TEST(ctx); },
{
code: 'ERR_TEST',
name: 'SystemError [ERR_TEST]',
name: 'SystemError',
message: 'custom message: syscall_test returned ETEST (code message)' +
' /str => /str2',
info: ctx
@ -49,7 +49,7 @@ const { ERR_TEST } = codes;
() => { throw new ERR_TEST(ctx); },
{
code: 'ERR_TEST',
name: 'SystemError [ERR_TEST]',
name: 'SystemError',
message: 'custom message: syscall_test returned ETEST (code message)' +
' /buf => /str2',
info: ctx
@ -69,7 +69,7 @@ const { ERR_TEST } = codes;
() => { throw new ERR_TEST(ctx); },
{
code: 'ERR_TEST',
name: 'SystemError [ERR_TEST]',
name: 'SystemError',
message: 'custom message: syscall_test returned ETEST (code message)' +
' /buf => /buf2',
info: ctx
@ -121,12 +121,12 @@ const { ERR_TEST } = codes;
assert.throws(
() => {
const err = new ERR_TEST(ctx);
err.name = 'SystemError [CUSTOM_ERR_TEST]';
err.name = 'Foobar';
throw err;
},
{
code: 'ERR_TEST',
name: 'SystemError [CUSTOM_ERR_TEST]',
name: 'Foobar',
message: 'custom message: syscall_test returned ERR_TEST ' +
'(Error occurred)',
info: ctx