Skip to content

Commit

Permalink
test: use Set.difference()
Browse files Browse the repository at this point in the history
Starting from V8 12.2 and Node.js 22, the built-in `Set` object now
has a `difference()` method.

Replace our implementation of Set difference in
`parallel/test-bootstrap-modules` with the built-in method.

PR-URL: #53597
Refs: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/difference
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Chemi Atlow <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Marco Ippolito <[email protected]>
  • Loading branch information
richardlau authored and aduh95 committed Jul 16, 2024
1 parent 80c1f5c commit 41e106c
Showing 1 changed file with 4 additions and 8 deletions.
12 changes: 4 additions & 8 deletions test/parallel/test-bootstrap-modules.js
Original file line number Diff line number Diff line change
Expand Up @@ -170,10 +170,6 @@ if (process.env.NODE_V8_COVERAGE) {
expected.atRunTime.add('Internal Binding profiler');
}

const difference = (setA, setB) => {
return new Set([...setA].filter((x) => !setB.has(x)));
};

// Accumulate all the errors and print them at the end instead of throwing
// immediately which makes it harder to update the test.
const errorLogs = [];
Expand All @@ -187,8 +183,8 @@ function err(message) {
}

if (common.isMainThread) {
const missing = difference(expected.beforePreExec, actual.beforePreExec);
const extra = difference(actual.beforePreExec, expected.beforePreExec);
const missing = expected.beforePreExec.difference(actual.beforePreExec);
const extra = actual.beforePreExec.difference(expected.beforePreExec);
if (missing.size !== 0) {
err('These builtins are now no longer loaded before pre-execution.');
err('If this is intentional, remove them from `expected.beforePreExec`.');
Expand Down Expand Up @@ -222,8 +218,8 @@ if (!common.isMainThread) {
}

{
const missing = difference(expected.atRunTime, actual.atRunTime);
const extra = difference(actual.atRunTime, expected.atRunTime);
const missing = expected.atRunTime.difference(actual.atRunTime);
const extra = actual.atRunTime.difference(expected.atRunTime);
if (missing.size !== 0) {
err('These builtins are now no longer loaded at run time.');
err('If this is intentional, remove them from `expected.atRunTime`.');
Expand Down

0 comments on commit 41e106c

Please sign in to comment.