Skip to content

Commit 531d6be

Browse files
committed
squash: optimize benchmark
1 parent 65c4619 commit 531d6be

File tree

1 file changed

+18
-12
lines changed

1 file changed

+18
-12
lines changed

benchmark/fs/bench-glob.js

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
'use strict';
22

33
const common = require('../common');
4-
const fs = require('fs');
4+
const {
5+
glob,
6+
globSync,
7+
promises: { glob: globAsync },
8+
} = require('fs');
59
const path = require('path');
610
const assert = require('node:assert');
711

@@ -20,28 +24,30 @@ const bench = common.createBenchmark(main, configs);
2024
async function main(config) {
2125
const fullPath = path.resolve(benchmarkDirectory, config.dir);
2226
const { pattern, recursive, mode } = config;
27+
const options = { cwd: fullPath, recursive };
28+
const callback = (resolve, reject) => {
29+
glob(pattern, options, (err, matches) => {
30+
if (err) {
31+
reject(err)
32+
} else {
33+
resolve(matches);
34+
}
35+
});
36+
}
2337

2438
let noDead;
2539
bench.start();
2640

2741
for (let i = 0; i < config.n; i++) {
2842
switch (mode) {
2943
case 'sync':
30-
noDead = fs.globSync(pattern, { cwd: fullPath, recursive });
44+
noDead = globSync(pattern, options);
3145
break;
3246
case 'promise':
33-
noDead = await fs.promises.glob(pattern, { cwd: fullPath, recursive });
47+
noDead = await globAsync(pattern, options);
3448
break;
3549
case 'callback':
36-
noDead = await new Promise((resolve, reject) => {
37-
fs.glob(pattern, { cwd: fullPath, recursive }, (err, matches) => {
38-
if (err) {
39-
reject(err);
40-
} else {
41-
resolve(matches);
42-
}
43-
});
44-
});
50+
noDead = await new Promise(callback);
4551
break;
4652
default:
4753
throw new Error(`Unknown mode: ${mode}`);

0 commit comments

Comments
 (0)