@@ -70,3 +70,39 @@ tap.test('exit fail', function (t) {
70
70
t . notEqual ( code , 0 ) ;
71
71
} ) ;
72
72
} ) ;
73
+
74
+ tap . test ( 'too few exit' , function ( t ) {
75
+ t . plan ( 2 ) ;
76
+
77
+ var tc = tap . createConsumer ( ) ;
78
+
79
+ var rows = [ ] ;
80
+ tc . on ( 'data' , function ( r ) { rows . push ( r ) } ) ;
81
+ tc . on ( 'end' , function ( ) {
82
+ var rs = rows . map ( function ( r ) {
83
+ if ( r && typeof r === 'object' ) {
84
+ return { id : r . id , ok : r . ok , name : r . name . trim ( ) } ;
85
+ }
86
+ else return r ;
87
+ } ) ;
88
+ t . same ( rs , [
89
+ 'TAP version 13' ,
90
+ 'array' ,
91
+ { id : 1 , ok : true , name : 'should be equivalent' } ,
92
+ { id : 2 , ok : true , name : 'should be equivalent' } ,
93
+ { id : 3 , ok : true , name : 'should be equivalent' } ,
94
+ { id : 4 , ok : true , name : 'should be equivalent' } ,
95
+ { id : 5 , ok : true , name : 'should be equivalent' } ,
96
+ { id : 6 , ok : false , name : 'too few assertions' } ,
97
+ 'tests 6' ,
98
+ 'pass 5' ,
99
+ 'fail 1'
100
+ ] ) ;
101
+ } ) ;
102
+
103
+ var ps = spawn ( process . execPath , [ __dirname + '/exit/too_few.js' ] ) ;
104
+ ps . stdout . pipe ( tc ) ;
105
+ ps . on ( 'exit' , function ( code ) {
106
+ t . notEqual ( code , 0 ) ;
107
+ } ) ;
108
+ } ) ;
0 commit comments