From fcf11230521c244cec914316a488cae59c12b071 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9s=20M=2E=20G=C3=B3mez?= Date: Mon, 30 Mar 2020 17:39:17 -0500 Subject: [PATCH] test: validate util.format when the value is 'Infinity' PR-URL: https://github.com/nodejs/node/pull/32573 Reviewed-By: James M Snell Reviewed-By: Anna Henningsen --- test/parallel/test-util-format.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/test/parallel/test-util-format.js b/test/parallel/test-util-format.js index d39df436146820..d1cb83b51d1986 100644 --- a/test/parallel/test-util-format.js +++ b/test/parallel/test-util-format.js @@ -57,6 +57,8 @@ assert.strictEqual(util.format('%d', -0.0), '-0'); assert.strictEqual(util.format('%d', ''), '0'); assert.strictEqual(util.format('%d', ' -0.000'), '-0'); assert.strictEqual(util.format('%d', Symbol()), 'NaN'); +assert.strictEqual(util.format('%d', Infinity), 'Infinity'); +assert.strictEqual(util.format('%d', -Infinity), '-Infinity'); assert.strictEqual(util.format('%d %d', 42, 43), '42 43'); assert.strictEqual(util.format('%d %d', 42), '42 %d'); assert.strictEqual( @@ -81,6 +83,8 @@ assert.strictEqual(util.format('%i', '42.0'), '42'); assert.strictEqual(util.format('%i', 1.5), '1'); assert.strictEqual(util.format('%i', -0.5), '-0'); assert.strictEqual(util.format('%i', ''), 'NaN'); +assert.strictEqual(util.format('%i', Infinity), 'NaN'); +assert.strictEqual(util.format('%i', -Infinity), 'NaN'); assert.strictEqual(util.format('%i', Symbol()), 'NaN'); assert.strictEqual(util.format('%i %i', 42, 43), '42 43'); assert.strictEqual(util.format('%i %i', 42), '42 %i'); @@ -120,6 +124,8 @@ assert.strictEqual(util.format('%f', Math.PI), '3.141592653589793'); assert.strictEqual(util.format('%f', ''), 'NaN'); assert.strictEqual(util.format('%f', Symbol('foo')), 'NaN'); assert.strictEqual(util.format('%f', 5n), '5'); +assert.strictEqual(util.format('%f', Infinity), 'Infinity'); +assert.strictEqual(util.format('%f', -Infinity), '-Infinity'); assert.strictEqual(util.format('%f %f', 42, 43), '42 43'); assert.strictEqual(util.format('%f %f', 42), '42 %f'); @@ -141,6 +147,8 @@ assert.strictEqual(util.format('%s', { a: [1, 2, 3] }), '{ a: [Array] }'); assert.strictEqual(util.format('%s', { toString() { return 'Foo'; } }), 'Foo'); assert.strictEqual(util.format('%s', { toString: 5 }), '{ toString: 5 }'); assert.strictEqual(util.format('%s', () => 5), '() => 5'); +assert.strictEqual(util.format('%s', Infinity), 'Infinity'); +assert.strictEqual(util.format('%s', -Infinity), '-Infinity'); // String format specifier including `toString` properties on the prototype. {