@@ -33,12 +33,12 @@ async function * tapReporter(source) {
3333 for await ( const { type, data } of source ) {
3434 switch ( type ) {
3535 case 'test:fail' : {
36- yield reportTest ( data . nesting , data . testNumber , 'not ok' , data . name , data . skip , data . todo ) ;
36+ yield reportTest ( data . nesting , data . testNumber , 'not ok' , data . name , data . skip , data . todo , data . expectFailure ) ;
3737 const location = data . file ? `${ data . file } :${ data . line } :${ data . column } ` : null ;
3838 yield reportDetails ( data . nesting , data . details , location ) ;
3939 break ;
4040 } case 'test:pass' :
41- yield reportTest ( data . nesting , data . testNumber , 'ok' , data . name , data . skip , data . todo ) ;
41+ yield reportTest ( data . nesting , data . testNumber , 'ok' , data . name , data . skip , data . todo , data . expectFailure ) ;
4242 yield reportDetails ( data . nesting , data . details , null ) ;
4343 break ;
4444 case 'test:plan' :
@@ -65,7 +65,7 @@ async function * tapReporter(source) {
6565 }
6666}
6767
68- function reportTest ( nesting , testNumber , status , name , skip , todo ) {
68+ function reportTest ( nesting , testNumber , status , name , skip , todo , expectFailure ) {
6969 let line = `${ indent ( nesting ) } ${ status } ${ testNumber } ` ;
7070
7171 if ( name ) {
@@ -76,6 +76,8 @@ function reportTest(nesting, testNumber, status, name, skip, todo) {
7676 line += ` # SKIP${ typeof skip === 'string' && skip . length ? ` ${ tapEscape ( skip ) } ` : '' } ` ;
7777 } else if ( todo !== undefined ) {
7878 line += ` # TODO${ typeof todo === 'string' && todo . length ? ` ${ tapEscape ( todo ) } ` : '' } ` ;
79+ } else if ( expectFailure !== undefined ) {
80+ line += ' # EXPECTED FAILURE' ;
7981 }
8082
8183 line += '\n' ;
0 commit comments