Skip to content

Commit

Permalink
test: simplify date inspection tests
Browse files Browse the repository at this point in the history
The code duplicated a lot of logic that was already abstracted. Use
the abstraction instead to remove code overhead.

PR-URL: #26922
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com>
  • Loading branch information
BridgeAR committed Apr 3, 2019
1 parent e1e9f1e commit 666c67e
Showing 1 changed file with 3 additions and 45 deletions.
48 changes: 3 additions & 45 deletions test/parallel/test-util-inspect.js
Original file line number Diff line number Diff line change
Expand Up @@ -1815,7 +1815,9 @@ assert.strictEqual(util.inspect('"\'${a}'), "'\"\\'${a}'");
[RegExp, ['foobar', 'g'], '/foobar/g'],
[WeakSet, [[{}]], '{ <items unknown> }'],
[WeakMap, [[[{}, {}]]], '{ <items unknown> }'],
[BigInt64Array, [10], '[ 0n, 0n, 0n, 0n, 0n, 0n, 0n, 0n, 0n, 0n ]']
[BigInt64Array, [10], '[ 0n, 0n, 0n, 0n, 0n, 0n, 0n, 0n, 0n, 0n ]'],
[Date, ['Sun, 14 Feb 2010 11:48:40 GMT'], '2010-02-14T11:48:40.000Z'],
[Date, ['invalid_date'], 'Invalid Date']
].forEach(([base, input, rawExpected]) => {
class Foo extends base {}
const value = new Foo(...input);
Expand All @@ -1841,50 +1843,6 @@ assert.strictEqual(util.inspect('"\'${a}'), "'\"\\'${a}'");
assert(/\[Symbol\(foo\)]: 'yeah'/.test(res), res);
});

// Date null prototype checks
{
class CustomDate extends Date {
}

const date = new CustomDate('Sun, 14 Feb 2010 11:48:40 GMT');
assert.strictEqual(util.inspect(date), 'CustomDate 2010-02-14T11:48:40.000Z');

// add properties
date.foo = 'bar';
assert.strictEqual(util.inspect(date),
'{ CustomDate 2010-02-14T11:48:40.000Z foo: \'bar\' }');

// Check for null prototype
Object.setPrototypeOf(date, null);
assert.strictEqual(util.inspect(date),
'{ [Date: null prototype] 2010-02-14T11:48:40.000Z' +
' foo: \'bar\' }');

const anotherDate = new CustomDate('Sun, 14 Feb 2010 11:48:40 GMT');
Object.setPrototypeOf(anotherDate, null);
assert.strictEqual(util.inspect(anotherDate),
'[Date: null prototype] 2010-02-14T11:48:40.000Z');
}

// Check for invalid dates and null prototype
{
class CustomDate extends Date {
}

const date = new CustomDate('invalid_date');
assert.strictEqual(util.inspect(date), 'CustomDate Invalid Date');

// add properties
date.foo = 'bar';
assert.strictEqual(util.inspect(date),
'{ CustomDate Invalid Date foo: \'bar\' }');

// Check for null prototype
Object.setPrototypeOf(date, null);
assert.strictEqual(util.inspect(date),
'{ [Date: null prototype] Invalid Date foo: \'bar\' }');
}

assert.strictEqual(inspect(1n), '1n');
assert.strictEqual(inspect(Object(-1n)), '[BigInt: -1n]');
assert.strictEqual(inspect(Object(13n)), '[BigInt: 13n]');
Expand Down

0 comments on commit 666c67e

Please sign in to comment.