mirror of
https://github.com/nodejs/node.git
synced 2025-08-15 13:48:44 +02:00
console: console.countReset() should emit warning
The Console Standard specifies that console.countReset() should emit some type of a warning when given a label that has no previous account associated with it. This PR brings node's implementation of console.countReset() up-to-spec and adds a test asserting that a warning is emitted. Fixes: https://github.com/nodejs/node/issues/20524 PR-URL: https://github.com/nodejs/node/pull/21649 Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Minwoo Jung <minwoo@nodesource.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
parent
85b0f1649d
commit
d4164ca559
2 changed files with 14 additions and 9 deletions
|
@ -107,6 +107,7 @@ function Console(options /* or: stdout, stderr, ignoreErrors = true */) {
|
|||
if (typeof colorMode !== 'boolean' && colorMode !== 'auto')
|
||||
throw new ERR_INVALID_ARG_VALUE('colorMode', colorMode);
|
||||
|
||||
// Corresponds to https://console.spec.whatwg.org/#count-map
|
||||
this[kCounts] = new Map();
|
||||
this[kColorMode] = colorMode;
|
||||
|
||||
|
@ -308,12 +309,14 @@ Console.prototype.count = function count(label = 'default') {
|
|||
this.log(`${label}: ${count}`);
|
||||
};
|
||||
|
||||
// Not yet defined by the https://console.spec.whatwg.org, but
|
||||
// proposed to be added and currently implemented by Edge. Having
|
||||
// the ability to reset counters is important to help prevent
|
||||
// the counter from being a memory leak.
|
||||
// Defined by: https://console.spec.whatwg.org/#countreset
|
||||
Console.prototype.countReset = function countReset(label = 'default') {
|
||||
const counts = this[kCounts];
|
||||
if (!counts.has(label)) {
|
||||
process.emitWarning(`Count for '${label}' does not exist`);
|
||||
return;
|
||||
}
|
||||
|
||||
counts.delete(`${label}`);
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue