@@ -26,8 +26,11 @@ const runTest = async (pkg, cliArgs = [], logMessage = undefined, isSubPackage =
2626 swapPkgName ( pkg , isSubPackage ) ;
2727
2828 const { execa } = await import ( "execa" ) ;
29+ const abortController = new AbortController ( ) ;
2930 const proc = execa ( CLI_ENTRY_PATH , cliArgs , {
3031 cwd : __dirname ,
32+ reject : false ,
33+ cancelSignal : abortController . signal ,
3134 } ) ;
3235
3336 proc . stdin . setDefaultEncoding ( "utf8" ) ;
@@ -61,8 +64,8 @@ const runTest = async (pkg, cliArgs = [], logMessage = undefined, isSubPackage =
6164 }
6265
6366 if ( hasLogMessage && hasPrompt ) {
67+ abortController . abort ( ) ;
6468 hasPassed = true ;
65- proc . kill ( ) ;
6669 }
6770 } ) ;
6871
@@ -85,8 +88,11 @@ const runTestStdout = async ({ packageName, cliArgs, logMessage, isSubPackage }
8588 swapPkgName ( packageName , isSubPackage ) ;
8689
8790 const { execa } = await import ( "execa" ) ;
91+ const abortController = new AbortController ( ) ;
8892 const proc = execa ( CLI_ENTRY_PATH , cliArgs , {
8993 cwd : __dirname ,
94+ reject : false ,
95+ cancelSignal : abortController . signal ,
9096 } ) ;
9197
9298 proc . stdin . setDefaultEncoding ( "utf8" ) ;
@@ -106,7 +112,7 @@ const runTestStdout = async ({ packageName, cliArgs, logMessage, isSubPackage }
106112
107113 if ( data . includes ( logMessage ) ) {
108114 hasPassed = true ;
109- proc . kill ( ) ;
115+ abortController . abort ( ) ;
110116 }
111117 } ) ;
112118
@@ -140,8 +146,11 @@ const runTestStdoutWithInput = async ({
140146 swapPkgName ( packageName , isSubPackage ) ;
141147
142148 const { execa } = await import ( "execa" ) ;
149+ const abortController = new AbortController ( ) ;
143150 const proc = execa ( CLI_ENTRY_PATH , cliArgs , {
144151 cwd : __dirname ,
152+ reject : false ,
153+ cancelSignal : abortController . signal ,
145154 } ) ;
146155
147156 proc . stdin . setDefaultEncoding ( "utf8" ) ;
@@ -160,7 +169,7 @@ const runTestStdoutWithInput = async ({
160169
161170 if ( data . includes ( logMessage ) ) {
162171 hasPassed = true ;
163- proc . kill ( ) ;
172+ abortController . abort ( ) ;
164173 }
165174
166175 for ( const input of Object . keys ( inputs ) ) {
@@ -194,8 +203,11 @@ const runTestWithHelp = async (pkg, cliArgs = [], logMessage = undefined, isSubP
194203 swapPkgName ( pkg , isSubPackage ) ;
195204
196205 const { execa } = await import ( "execa" ) ;
206+ const abortController = new AbortController ( ) ;
197207 const proc = execa ( CLI_ENTRY_PATH , cliArgs , {
198208 cwd : __dirname ,
209+ reject : false ,
210+ cancelSignal : abortController . signal ,
199211 } ) ;
200212
201213 proc . stdin . setDefaultEncoding ( "utf8" ) ;
@@ -230,7 +242,7 @@ const runTestWithHelp = async (pkg, cliArgs = [], logMessage = undefined, isSubP
230242
231243 if ( hasLogMessage || hasUndefinedLogMessage ) {
232244 hasPassed = true ;
233- proc . kill ( ) ;
245+ abortController . abort ( ) ;
234246 }
235247 } ) ;
236248
0 commit comments