File tree Expand file tree Collapse file tree 3 files changed +290
-175
lines changed
Expand file tree Collapse file tree 3 files changed +290
-175
lines changed Original file line number Diff line number Diff line change 1+ 'use strict' ;
2+
3+ const common = require ( '../common' ) ;
4+ const fs = require ( 'fs' ) ;
5+ const tmpdir = require ( '../../test/common/tmpdir' ) ;
6+ tmpdir . refresh ( ) ;
7+
8+ const bench = common . createBenchmark ( main , {
9+ type : [ 'existing' , 'non-existing' ] ,
10+ n : [ 1e3 ] ,
11+ } ) ;
12+
13+ function main ( { n, type } ) {
14+ switch ( type ) {
15+ case 'existing' : {
16+ for ( let i = 0 ; i < n ; i ++ ) {
17+ const p = tmpdir . resolve ( `rmdirsync-bench-dir-${ i } ` ) ;
18+ fs . mkdirSync ( p , { recursive : true } ) ;
19+ }
20+
21+ bench . start ( ) ;
22+ for ( let i = 0 ; i < n ; i ++ ) {
23+ const p = tmpdir . resolve ( `rmdirsync-bench-dir-${ i } ` ) ;
24+
25+ fs . rmdirSync ( p , {
26+ recursive : true ,
27+ maxRetries : 3 ,
28+ } ) ;
29+ }
30+ bench . end ( n ) ;
31+ break ;
32+ }
33+ case 'non-existing' : {
34+ bench . start ( ) ;
35+ for ( let i = 0 ; i < n ; i ++ ) {
36+ try {
37+ fs . rmdirSync ( tmpdir . resolve ( `.non-existent-folder-${ i } ` ) , {
38+ recursive : true ,
39+ } ) ;
40+ } catch {
41+ // do nothing
42+ }
43+ }
44+ bench . end ( n ) ;
45+ break ;
46+ }
47+ default :
48+ new Error ( 'Invalid type' ) ;
49+ }
50+ }
You can’t perform that action at this time.
0 commit comments