@@ -80,6 +80,41 @@ describe('TAP reporter', function () {
8080 } ) ;
8181
8282 describe ( 'on fail' , function ( ) {
83+ describe ( 'if there is an error message' , function ( ) {
84+ it ( 'should write expected message and error message' , function ( ) {
85+ var expectedTitle = 'some title' ;
86+ var countAfterTestEnd = 2 ;
87+ var expectedErrorMessage = 'some error' ;
88+ var test = {
89+ fullTitle : function ( ) {
90+ return expectedTitle ;
91+ } ,
92+ slow : function ( ) { }
93+ } ;
94+ var error = {
95+ message : expectedErrorMessage
96+ } ;
97+ runner . on = function ( event , callback ) {
98+ if ( event === 'test end' ) {
99+ callback ( ) ;
100+ }
101+ if ( event === 'fail' ) {
102+ callback ( test , error ) ;
103+ }
104+ } ;
105+ runner . suite = '' ;
106+ runner . grepTotal = function ( ) { } ;
107+ TAP . call ( { } , runner ) ;
108+
109+ process . stdout . write = stdoutWrite ;
110+
111+ var expectedArray = [
112+ 'not ok ' + countAfterTestEnd + ' ' + expectedTitle + '\n' ,
113+ ' ' + expectedErrorMessage + '\n'
114+ ] ;
115+ expect ( stdout ) . to . eql ( expectedArray ) ;
116+ } ) ;
117+ } ) ;
83118 describe ( 'if there is an error stack' , function ( ) {
84119 it ( 'should write expected message and stack' , function ( ) {
85120 var expectedStack = 'some stack' ;
@@ -100,7 +135,45 @@ describe('TAP reporter', function () {
100135 expect ( stdout ) . to . eql ( expectedArray ) ;
101136 } ) ;
102137 } ) ;
103- describe ( 'if there is no error stack' , function ( ) {
138+ describe ( 'if there is an error stack and error message' , function ( ) {
139+ it ( 'should write expected message and stack' , function ( ) {
140+ var expectedTitle = 'some title' ;
141+ var countAfterTestEnd = 2 ;
142+ var expectedStack = 'some stack' ;
143+ var expectedErrorMessage = 'some error' ;
144+ var test = {
145+ fullTitle : function ( ) {
146+ return expectedTitle ;
147+ } ,
148+ slow : function ( ) { }
149+ } ;
150+ var error = {
151+ stack : expectedStack ,
152+ message : expectedErrorMessage
153+ } ;
154+ runner . on = function ( event , callback ) {
155+ if ( event === 'test end' ) {
156+ callback ( ) ;
157+ }
158+ if ( event === 'fail' ) {
159+ callback ( test , error ) ;
160+ }
161+ } ;
162+ runner . suite = '' ;
163+ runner . grepTotal = function ( ) { } ;
164+ TAP . call ( { } , runner ) ;
165+
166+ process . stdout . write = stdoutWrite ;
167+
168+ var expectedArray = [
169+ 'not ok ' + countAfterTestEnd + ' ' + expectedTitle + '\n' ,
170+ ' ' + expectedErrorMessage + '\n' ,
171+ ' ' + expectedStack + '\n'
172+ ] ;
173+ expect ( stdout ) . to . eql ( expectedArray ) ;
174+ } ) ;
175+ } ) ;
176+ describe ( 'if there is no error stack or error message' , function ( ) {
104177 it ( 'should write expected message only' , function ( ) {
105178 var error = { } ;
106179 runner . on = runner . once = function ( event , callback ) {
0 commit comments