lib: update inspect output format for subclasses · nodejs/node@396cc8e
@@ -1415,11 +1415,11 @@ if (typeof Symbol !== 'undefined') {
14151415assert.strictEqual(util.inspect(new ArraySubclass(1, 2, 3)),
14161416'ArraySubclass(3) [ 1, 2, 3 ]');
14171417assert.strictEqual(util.inspect(new SetSubclass([1, 2, 3])),
1418-'SetSubclass(3) [Set] { 1, 2, 3 }');
1418+'SetSubclass(3) { 1, 2, 3 }');
14191419assert.strictEqual(util.inspect(new MapSubclass([['foo', 42]])),
1420-"MapSubclass(1) [Map] { 'foo' => 42 }");
1420+"MapSubclass(1) { 'foo' => 42 }");
14211421assert.strictEqual(util.inspect(new PromiseSubclass(() => {})),
1422-'PromiseSubclass [Promise] { <pending> }');
1422+'PromiseSubclass { <pending> }');
14231423assert.strictEqual(util.inspect(new SymbolNameClass()),
14241424'Symbol(name) {}');
14251425assert.strictEqual(
@@ -1430,6 +1430,29 @@ if (typeof Symbol !== 'undefined') {
14301430util.inspect(Object.setPrototypeOf(x, null)),
14311431'[ObjectSubclass: null prototype] { foo: 42 }'
14321432);
1433+1434+class MiddleErrorPart extends Error {}
1435+assert(util.inspect(new MiddleErrorPart('foo')).includes('MiddleErrorPart: foo'));
1436+1437+class MapClass extends Map {}
1438+assert.strictEqual(util.inspect(new MapClass([['key', 'value']])),
1439+"MapClass(1) { 'key' => 'value' }");
1440+1441+class AbcMap extends Map {}
1442+assert.strictEqual(util.inspect(new AbcMap([['key', 'value']])),
1443+"AbcMap(1) { 'key' => 'value' }");
1444+1445+class SetAbc extends Set {}
1446+assert.strictEqual(util.inspect(new SetAbc([1, 2, 3])),
1447+'SetAbc(3) { 1, 2, 3 }');
1448+1449+class FooSet extends Set {}
1450+assert.strictEqual(util.inspect(new FooSet([1, 2, 3])),
1451+'FooSet(3) { 1, 2, 3 }');
1452+1453+class Settings extends Set {}
1454+assert.strictEqual(util.inspect(new Settings([1, 2, 3])),
1455+'Settings(3) [Set] { 1, 2, 3 }');
14331456}
1434145714351458// Empty and circular before depth.