Skip to content

Commit ac1cb8d

Browse files
luketahermarco-ippolito
authored andcommitted
perf_hooks: add missing type argument to getEntriesByName
Fixes: #54766 PR-URL: #54767 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
1 parent 94302b6 commit ac1cb8d

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

lib/internal/perf/performance.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,13 +97,16 @@ class Performance extends EventTarget {
9797
return filterBufferMapByNameAndType();
9898
}
9999

100-
getEntriesByName(name) {
100+
getEntriesByName(name, type = undefined) {
101101
validateInternalField(this, kPerformanceBrand, 'Performance');
102102
if (arguments.length === 0) {
103103
throw new ERR_MISSING_ARGS('name');
104104
}
105105
name = `${name}`;
106-
return filterBufferMapByNameAndType(name, undefined);
106+
if (type !== undefined) {
107+
type = `${type}`;
108+
}
109+
return filterBufferMapByNameAndType(name, type);
107110
}
108111

109112
getEntriesByType(type) {

test/parallel/test-performance-timeline.mjs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,12 @@ await setTimeout(50);
3333
performance.measure('a', 'one');
3434
const entriesByName = performance.getEntriesByName('a');
3535
assert.deepStrictEqual(entriesByName.map((x) => x.entryType), ['measure', 'mark', 'measure', 'mark']);
36+
const marksByName = performance.getEntriesByName('a', 'mark');
37+
assert.deepStrictEqual(marksByName.map((x) => x.entryType), ['mark', 'mark']);
38+
const measuresByName = performance.getEntriesByName('a', 'measure');
39+
assert.deepStrictEqual(measuresByName.map((x) => x.entryType), ['measure', 'measure']);
40+
const invalidTypeEntriesByName = performance.getEntriesByName('a', null);
41+
assert.strictEqual(invalidTypeEntriesByName.length, 0);
3642

3743
// getEntriesBy[Name|Type](undefined)
3844
performance.mark(undefined);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy