11#!/usr/bin/env ts-node
22
3- import fs from 'fs' ;
4- import path from 'path' ;
3+ import fs from 'node:fs' ;
4+ import path from 'node:path' ;
5+ import url from 'node:url' ;
56import si from 'systeminformation' ;
6- import workerManager from './worker_manager' ;
7+ import workerManager from './worker_manager.js ' ;
78
89async function main ( ) : Promise < void > {
9- await fs . promises . mkdir ( path . join ( __dirname , 'results' ) , { recursive : true } ) ;
10+ await fs . promises . mkdir ( path . join ( benchesPath , 'results' ) , {
11+ recursive : true ,
12+ } ) ;
1013 await workerManager ( ) ;
1114 const resultFilenames = await fs . promises . readdir (
12- path . join ( __dirname , 'results' ) ,
15+ path . join ( benchesPath , 'results' ) ,
1316 ) ;
1417 const metricsFile = await fs . promises . open (
15- path . join ( __dirname , 'results' , 'metrics.txt' ) ,
18+ path . join ( benchesPath , 'results' , 'metrics.txt' ) ,
1619 'w' ,
1720 ) ;
1821 let concatenating = false ;
1922 for ( const resultFilename of resultFilenames ) {
2023 if ( / .+ _ m e t r i c s \. t x t $ / . test ( resultFilename ) ) {
2124 const metricsData = await fs . promises . readFile (
22- path . join ( __dirname , 'results' , resultFilename ) ,
25+ path . join ( benchesPath , 'results' , resultFilename ) ,
2326 ) ;
2427 if ( concatenating ) {
2528 await metricsFile . write ( '\n' ) ;
@@ -35,9 +38,16 @@ async function main(): Promise<void> {
3538 system : 'model, manufacturer' ,
3639 } ) ;
3740 await fs . promises . writeFile (
38- path . join ( __dirname , 'results' , 'system.json' ) ,
41+ path . join ( benchesPath , 'results' , 'system.json' ) ,
3942 JSON . stringify ( systemData , null , 2 ) ,
4043 ) ;
4144}
4245
43- void main ( ) ;
46+ if ( import . meta. url . startsWith ( 'file:' ) ) {
47+ const modulePath = url . fileURLToPath ( import . meta. url ) ;
48+ if ( process . argv [ 1 ] === modulePath ) {
49+ void main ( ) ;
50+ }
51+ }
52+
53+ export default main ;
0 commit comments