@@ -22,10 +22,22 @@ function makeTextStack() {
2222// 5 Stacks
2323const textStacks = Array . from ( new Array ( 5 ) ) . map ( makeTextStack )
2424
25+ const diff = `
26+ \x1B[32m- Expected\x1B[39m
27+ \x1B[31m+ Received\x1B[39m
28+
29+ \x1B[2m Object {\x1B[22m
30+ \x1B[2m "a": 1,\x1B[22m
31+ \x1B[32m- "b": 2,\x1B[39m
32+ \x1B[31m+ "b": 3,\x1B[39m
33+ \x1B[2m }\x1B[22m
34+ `
35+
2536const error = {
2637 name : 'Do some test' ,
2738 stacks : textStacks ,
2839 message : 'Error: Transform failed with 1 error:' ,
40+ diff,
2941}
3042
3143const fileWithTextStacks = {
@@ -34,6 +46,7 @@ const fileWithTextStacks = {
3446 type : 'suite' ,
3547 mode : 'run' ,
3648 filepath : 'test/plain-stack-trace.ts' ,
49+ meta : { } ,
3750 result : {
3851 state : 'fail' ,
3952 error,
@@ -73,12 +86,14 @@ describe('ViewReport', () => {
7386 type : 'suite' ,
7487 mode : 'run' ,
7588 filepath : 'test/plain-stack-trace.ts' ,
89+ meta : { } ,
7690 result : {
7791 state : 'fail' ,
7892 errors : [ {
7993 name : 'Do some test' ,
8094 stack : '\x1B[33mtest/plain-stack-trace.ts\x1B[0m' ,
8195 message : 'Error: Transform failed with 1 error:' ,
96+ diff,
8297 } ] ,
8398 } ,
8499 tasks : [ ] ,
@@ -110,18 +125,20 @@ describe('ViewReport', () => {
110125 type : 'suite' ,
111126 mode : 'run' ,
112127 filepath : 'test/plain-stack-trace.ts' ,
128+ meta : { } ,
113129 result : {
114130 state : 'fail' ,
115131 errors : [ {
116132 name : 'Do some test' ,
117133 stack : '\x1B[33mtest/plain-stack-trace.ts\x1B[0m' ,
118134 message : '\x1B[44mError: Transform failed with 1 error:\x1B[0m' ,
135+ diff,
119136 } ] ,
120137 } ,
121138 tasks : [ ] ,
122139 }
123- const container = cy . mount ( < ViewReport file = { file } /> )
124- . get ( taskErrorSelector )
140+ const component = cy . mount ( < ViewReport file = { file } /> )
141+ const container = component . get ( taskErrorSelector )
125142 container . should ( 'exist' )
126143 container . children ( 'pre' ) . then ( ( c ) => {
127144 expect ( c . text ( ) , 'error has the correct plain text' ) . equals ( 'Do some test: Error: Transform failed with 1 error:test/plain-stack-trace.ts' )
@@ -145,4 +162,15 @@ describe('ViewReport', () => {
145162 } )
146163 } )
147164 } )
165+
166+ it ( 'test diff display' , ( ) => {
167+ const component = cy . mount ( < ViewReport file = { fileWithTextStacks as File } /> )
168+
169+ const diffElement = component . get ( '[data-testid="diff"]' )
170+ diffElement . should ( 'exist' )
171+ diffElement
172+ . should ( 'contain.text' , 'Expected' )
173+ . and ( 'contain.text' , 'Received' )
174+ . and ( 'not.contain.text' , '\x1B' )
175+ } )
148176} )
0 commit comments