@@ -6,16 +6,19 @@ const __dirname = import.meta.dirname || new URL('.', import.meta.url).pathname;
66
77const NODE_MAJOR_VERSION = parseInt ( process . versions . node . split ( '.' ) [ 0 ] , 10 ) ;
88
9+ // macOS emulated x64 in CI is very slow!
10+ const timeout = process . env . CI && process . platform === 'darwin' ? 60000 : 20000 ;
11+
912function runTest ( ...paths ) {
1013 console . time ( 'Test Run' ) ;
1114 const file = join ( ...paths ) ;
1215 const args = NODE_MAJOR_VERSION === 22 ? [ '--experimental-async-context-frame' , file ] : [ file ] ;
1316 const result = spawnSync ( 'node' , args ) ;
14- const stdoutLines = result . stdout ?. toString ( ) . split ( '\n' ) . filter ( line => line . trim ( ) !== '' ) ;
15- const stderrLines = result . stderr ?. toString ( ) . split ( '\n' ) . filter ( line => line . trim ( ) !== '' ) ;
17+ const stdout = result . stdout ?. toString ( ) . split ( '\n' ) . filter ( line => line . trim ( ) !== '' ) ;
18+ const stderr = result . stderr ?. toString ( ) . split ( '\n' ) . filter ( line => line . trim ( ) !== '' ) ;
1619
1720 let trace ;
18- for ( const line of stdoutLines ) {
21+ for ( const line of stdout ) {
1922 try {
2023 trace = JSON . parse ( line ) ;
2124 break ;
@@ -24,19 +27,18 @@ function runTest(...paths) {
2427 }
2528 }
2629
27- if ( stdoutLines . length > 0 ) {
28- console . log ( 'stdout:' , stdoutLines ) ;
30+ console . timeEnd ( 'Test Run' ) ;
31+ if ( stdout . length > 0 ) {
32+ console . log ( 'stdout:' , stdout ) ;
2933 }
30- if ( stderrLines . length > 0 ) {
31- console . log ( 'stderr:' , stderrLines ) ;
34+ if ( stderr . length > 0 ) {
35+ console . log ( 'stderr:' , stderr ) ;
3236 }
3337
34- console . timeEnd ( 'Test Run' ) ;
35-
36- return { status : result . status , stdoutLines, trace } ;
38+ return { status : result . status , stdout, trace } ;
3739}
3840
39- describe ( 'e2e Tests' , { timeout : 60000 } , ( ) => {
41+ describe ( 'e2e Tests' , { timeout } , ( ) => {
4042 test ( 'Capture stack trace from multiple threads' , ( ) => {
4143 const result = runTest ( __dirname , 'stack-traces.js' )
4244
@@ -90,7 +92,7 @@ describe('e2e Tests', { timeout: 60000 }, () => {
9092 } ) ) ;
9193 } ) ;
9294
93- test ( 'detect stalled thread' , { timeout : 20000 } , ( ) => {
95+ test ( 'detect stalled thread' , ( ) => {
9496 const result = runTest ( __dirname , 'stalled.js' ) ;
9597
9698 expect ( result . status ) . toEqual ( 0 ) ;
@@ -125,7 +127,7 @@ describe('e2e Tests', { timeout: 60000 }, () => {
125127 } ) ) ;
126128 } ) ;
127129
128- test ( 'async storage state' , { timeout : 20000 } , ( ctx ) => {
130+ test ( 'async storage state' , ( ctx ) => {
129131 if ( NODE_MAJOR_VERSION < 22 ) {
130132 ctx . skip ( ) ;
131133 return ;
@@ -162,11 +164,10 @@ describe('e2e Tests', { timeout: 60000 }, () => {
162164 } ) ) ;
163165 } ) ;
164166
165- test ( 'can be disabled' , { timeout : 20000 } , ( ) => {
167+ test ( 'can be disabled' , ( ) => {
166168 const result = runTest ( __dirname , 'stalled-disabled.js' ) ;
167169
168170 expect ( result . status ) . toEqual ( 0 ) ;
169-
170- expect ( result . stdoutLines ) . toContain ( 'complete' ) ;
171+ expect ( result . stdout ) . toContain ( 'complete' ) ;
171172 } ) ;
172173} ) ;
0 commit comments