mirror of
https://github.com/nodejs/node.git
synced 2025-05-03 00:19:41 +00:00

Both are simple utility functions defined by the WHATWG console spec (https://console.spec.whatwg.org/). PR-URL: https://github.com/nodejs/node/pull/12678 Ref: https://github.com/nodejs/node/issues/12675 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Timothy Gu <timothygu99@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>
64 lines
1.4 KiB
JavaScript
64 lines
1.4 KiB
JavaScript
'use strict';
|
|
|
|
require('../common');
|
|
const assert = require('assert');
|
|
|
|
const stdoutWrite = process.stdout.write;
|
|
|
|
let buf = '';
|
|
|
|
process.stdout.write = (string) => buf = string;
|
|
|
|
console.count();
|
|
assert.strictEqual(buf, 'default: 1\n');
|
|
|
|
// 'default' and undefined are equivalent
|
|
console.count('default');
|
|
assert.strictEqual(buf, 'default: 2\n');
|
|
|
|
console.count('a');
|
|
assert.strictEqual(buf, 'a: 1\n');
|
|
|
|
console.count('b');
|
|
assert.strictEqual(buf, 'b: 1\n');
|
|
|
|
console.count('a');
|
|
assert.strictEqual(buf, 'a: 2\n');
|
|
|
|
console.count();
|
|
assert.strictEqual(buf, 'default: 3\n');
|
|
|
|
console.count({});
|
|
assert.strictEqual(buf, '[object Object]: 1\n');
|
|
|
|
console.count(1);
|
|
assert.strictEqual(buf, '1: 1\n');
|
|
|
|
console.count(null);
|
|
assert.strictEqual(buf, 'null: 1\n');
|
|
|
|
console.count('null');
|
|
assert.strictEqual(buf, 'null: 2\n');
|
|
|
|
console.countReset();
|
|
console.count();
|
|
assert.strictEqual(buf, 'default: 1\n');
|
|
|
|
console.countReset('a');
|
|
console.count('a');
|
|
assert.strictEqual(buf, 'a: 1\n');
|
|
|
|
// countReset('a') only reset the a counter
|
|
console.count();
|
|
assert.strictEqual(buf, 'default: 2\n');
|
|
|
|
process.stdout.write = stdoutWrite;
|
|
|
|
// Symbol labels do not work
|
|
assert.throws(
|
|
() => console.count(Symbol('test')),
|
|
/^TypeError: Cannot convert a Symbol value to a string$/);
|
|
assert.throws(
|
|
() => console.countReset(Symbol('test')),
|
|
/^TypeError: Cannot convert a Symbol value to a string$/);
|