@@ -52,7 +52,7 @@ describe('spawn', function() {
5252
5353 it ( 'resolves with process output' , async ( ) => {
5454 let finallyDone = false
55- const { stdout, stderr } = await spawn (
55+ const { code , signal , stdout, stderr } = await spawn (
5656 process . execPath ,
5757 [ require . resolve ( './resolvesWithProcessOutput' ) ] ,
5858 { maxBuffer : 200 * 1024 }
@@ -61,6 +61,8 @@ describe('spawn', function() {
6161 finallyDone = true
6262 } )
6363 expect ( finallyDone , 'finally handler finished' ) . to . be . true
64+ expect ( code , 'code' ) . to . equal ( 0 )
65+ expect ( signal , 'signal' ) . to . equal ( null )
6466 if ( stdout == null || stderr == null ) throw new Error ( 'missing output' )
6567 if ( ! ( stdout instanceof Buffer ) )
6668 throw new Error ( 'expected stdout to be a buffer' )
@@ -85,7 +87,11 @@ describe('spawn', function() {
8587 { maxBuffer : 1 }
8688 ) . catch ( err => ( error = err ) )
8789 if ( error == null ) throw new Error ( 'missing error' )
88- const { stdout, stderr } = error
90+ const { code, signal, stdout, stderr } = error
91+ if ( process . env . BABEL_ENV !== 'coverage' )
92+ expect ( code , 'code' ) . to . equal ( null )
93+ if ( process . env . BABEL_ENV !== 'coverage' )
94+ expect ( signal , 'signal' ) . to . equal ( 'SIGTERM' )
8995 expect ( stdout . toString ( 'utf8' ) ) . to . equal ( 'h' )
9096 expect ( stderr . toString ( 'utf8' ) ) . to . equal ( '' )
9197 } )
@@ -112,9 +118,10 @@ describe('spawn', function() {
112118 . catch ( err => ( error = err ) )
113119 expect ( finallyDone , 'finally handler finished' ) . to . be . true
114120 if ( error == null ) throw new Error ( 'missing error' )
115- const { code, message, stdout, stderr } = error
121+ const { code, signal , message, stdout, stderr } = error
116122 expect ( message ) . to . equal ( 'Process exited with code 2' )
117- expect ( code ) . to . equal ( 2 )
123+ expect ( code , 'code' ) . to . equal ( 2 )
124+ expect ( signal , 'signal' ) . to . equal ( null )
118125 if ( ! ( stdout instanceof Buffer ) )
119126 throw new Error ( 'expected stdout to be a buffer' )
120127 if ( ! ( stderr instanceof Buffer ) )
@@ -145,9 +152,10 @@ describe('spawn', function() {
145152 } )
146153 await child . catch ( err => ( error = err ) )
147154 if ( error == null ) throw new Error ( 'missing error' )
148- const { signal, message, stdout, stderr } = error
155+ const { code , signal, message, stdout, stderr } = error
149156 expect ( message ) . to . equal ( 'Process was killed with SIGINT' )
150- expect ( signal ) . to . equal ( 'SIGINT' )
157+ expect ( code , 'code' ) . to . equal ( null )
158+ expect ( signal , 'signal' ) . to . equal ( 'SIGINT' )
151159 if ( ! ( stdout instanceof Buffer ) )
152160 throw new Error ( 'expected stdout to be a buffer' )
153161 if ( ! ( stderr instanceof Buffer ) )
@@ -171,13 +179,15 @@ describe('fork', function() {
171179
172180 it ( 'resolves with process output' , async ( ) => {
173181 let finallyDone = false
174- const { stdout, stderr } = await fork (
182+ const { code , signal , stdout, stderr } = await fork (
175183 require . resolve ( './resolvesWithProcessOutput' ) ,
176184 { silent : true , maxBuffer : 200 * 1024 }
177185 ) . finally ( async ( ) => {
178186 await delay ( 50 )
179187 finallyDone = true
180188 } )
189+ expect ( code , 'code' ) . to . equal ( 0 )
190+ expect ( signal , 'signal' ) . to . equal ( null )
181191 expect ( finallyDone , 'finally handler finished' ) . to . be . true
182192 if ( stdout == null || stderr == null ) throw new Error ( 'missing output' )
183193 if ( ! ( stdout instanceof Buffer ) )
@@ -202,7 +212,11 @@ describe('fork', function() {
202212 maxBuffer : 1 ,
203213 } ) . catch ( err => ( error = err ) )
204214 if ( error == null ) throw new Error ( 'missing error' )
205- const { stdout, stderr } = error
215+ const { code, signal, stdout, stderr } = error
216+ if ( process . env . BABEL_ENV !== 'coverage' )
217+ expect ( code , 'code' ) . to . equal ( null )
218+ if ( process . env . BABEL_ENV !== 'coverage' )
219+ expect ( signal , 'signal' ) . to . equal ( 'SIGTERM' )
206220 expect ( stdout . toString ( 'utf8' ) ) . to . equal ( 'h' )
207221 expect ( stderr . toString ( 'utf8' ) ) . to . equal ( '' )
208222 } )
@@ -229,9 +243,10 @@ describe('fork', function() {
229243 . catch ( err => ( error = err ) )
230244 expect ( finallyDone , 'finally handler finished' ) . to . be . true
231245 if ( error == null ) throw new Error ( 'missing error' )
232- const { code, message, stdout, stderr } = error
246+ const { code, signal , message, stdout, stderr } = error
233247 expect ( message ) . to . equal ( 'Process exited with code 2' )
234- expect ( code ) . to . equal ( 2 )
248+ expect ( code , 'code' ) . to . equal ( 2 )
249+ expect ( signal , 'signal' ) . to . equal ( null )
235250 if ( ! ( stdout instanceof Buffer ) )
236251 throw new Error ( 'expected stdout to be a buffer' )
237252 if ( ! ( stderr instanceof Buffer ) )
@@ -259,9 +274,10 @@ describe('fork', function() {
259274 } )
260275 await child . catch ( err => ( error = err ) )
261276 if ( error == null ) throw new Error ( 'missing error' )
262- const { signal, message, stdout, stderr } = error
277+ const { code , signal, message, stdout, stderr } = error
263278 expect ( message ) . to . equal ( 'Process was killed with SIGINT' )
264- expect ( signal ) . to . equal ( 'SIGINT' )
279+ expect ( code , 'code' ) . to . equal ( null )
280+ expect ( signal , 'signal' ) . to . equal ( 'SIGINT' )
265281 if ( ! ( stdout instanceof Buffer ) )
266282 throw new Error ( 'expected stdout to be a buffer' )
267283 if ( ! ( stderr instanceof Buffer ) )
@@ -281,10 +297,12 @@ describe('exec', function() {
281297 this . timeout ( 30000 )
282298
283299 it ( 'resolves with process output' , async ( ) => {
284- const { stdout, stderr } = await exec (
300+ const { code , signal , stdout, stderr } = await exec (
285301 `${ process . execPath } ${ require . resolve ( './resolvesWithProcessOutput' ) } `
286302 )
287303 if ( stdout == null || stderr == null ) throw new Error ( 'missing output' )
304+ expect ( code , 'code' ) . to . equal ( 0 )
305+ expect ( signal , 'signal' ) . to . equal ( null )
288306 expect ( stdout ) . to . equal ( 'hello' )
289307 expect ( stderr ) . to . equal ( 'world' )
290308 } )
@@ -294,8 +312,9 @@ describe('exec', function() {
294312 `${ process . execPath } ${ require . resolve ( './rejectsWithExitCode' ) } `
295313 ) . catch ( err => ( error = err ) )
296314 if ( error == null ) throw new Error ( 'missing error' )
297- const { code, stdout, stderr } = error
298- expect ( code ) . to . equal ( 2 )
315+ const { code, signal, stdout, stderr } = error
316+ expect ( code , 'code' ) . to . equal ( 2 )
317+ expect ( signal , 'signal' ) . to . equal ( null )
299318 expect ( stdout ) . to . equal ( 'hello' )
300319 expect ( stderr ) . to . equal ( 'world' )
301320 } )
@@ -318,8 +337,9 @@ describe('exec', function() {
318337 } )
319338 await child . catch ( err => ( error = err ) )
320339 if ( error == null ) throw new Error ( 'missing error' )
321- const { signal, stdout, stderr } = error
322- expect ( signal ) . to . equal ( 'SIGINT' )
340+ const { code, signal, stdout, stderr } = error
341+ expect ( code , 'code' ) . to . equal ( null )
342+ expect ( signal , 'signal' ) . to . equal ( 'SIGINT' )
323343 expect ( stdout ) . to . equal ( 'hello' )
324344 expect ( stderr ) . to . equal ( 'world' )
325345 } )
@@ -329,10 +349,12 @@ describe('execFile', function() {
329349 this . timeout ( 30000 )
330350
331351 it ( 'resolves with process output' , async ( ) => {
332- const { stdout, stderr } = await execFile (
352+ const { code , signal , stdout, stderr } = await execFile (
333353 require . resolve ( './resolvesWithProcessOutput' )
334354 )
335355 if ( stdout == null || stderr == null ) throw new Error ( 'missing output' )
356+ expect ( code , 'code' ) . to . equal ( 0 )
357+ expect ( signal , 'signal' ) . to . equal ( null )
336358 expect ( stdout ) . to . equal ( 'hello' )
337359 expect ( stderr ) . to . equal ( 'world' )
338360 } )
@@ -342,8 +364,9 @@ describe('execFile', function() {
342364 err => ( error = err )
343365 )
344366 if ( error == null ) throw new Error ( 'missing error' )
345- const { code, stdout, stderr } = error
346- expect ( code ) . to . equal ( 2 )
367+ const { code, signal, stdout, stderr } = error
368+ expect ( code , 'code' ) . to . equal ( 2 )
369+ expect ( signal , 'signal' ) . to . equal ( null )
347370 expect ( stdout ) . to . equal ( 'hello' )
348371 expect ( stderr ) . to . equal ( 'world' )
349372 } )
@@ -364,8 +387,9 @@ describe('execFile', function() {
364387 } )
365388 await child . catch ( err => ( error = err ) )
366389 if ( error == null ) throw new Error ( 'missing error' )
367- const { signal, stdout, stderr } = error
368- expect ( signal ) . to . equal ( 'SIGINT' )
390+ const { code, signal, stdout, stderr } = error
391+ expect ( code , 'code' ) . to . equal ( null )
392+ expect ( signal , 'signal' ) . to . equal ( 'SIGINT' )
369393 expect ( stdout ) . to . equal ( 'hello' )
370394 expect ( stderr ) . to . equal ( 'world' )
371395 } )
0 commit comments