@@ -68,7 +68,7 @@ function loadPngFromUrl(url: string): Promise<ImageDataWithCanvas> {
6868 } ) ;
6969}
7070
71- async function getExpectedImages ( currentTestName : string , renderTest : Record < string , unknown > ) : Promise < ImageDataWithCanvas [ ] > {
71+ async function getExpectedImages ( currentTestName : string , renderTest : Record < string , unknown > ) : Promise < Array < ImageDataWithCanvas & { src : string } > > {
7272 const urls : string [ ] = [ ] ;
7373 for ( const prop in renderTest ) {
7474 if ( prop . indexOf ( 'expected' ) > - 1 ) {
@@ -80,12 +80,16 @@ async function getExpectedImages(currentTestName: string, renderTest: Record<str
8080 urls . push ( url ) ;
8181 }
8282 }
83- return Promise . all ( urls . map ( loadPngFromUrl ) ) ;
83+ return Promise . all ( urls . map ( async ( url ) => {
84+ const result = await loadPngFromUrl ( url ) ;
85+ return Object . assign ( { } , result , { src : url } ) ;
86+ } ) ) ;
8487}
8588
8689type TestMetadata = {
8790 name : string ;
8891 minDiff : number ;
92+ allowed : number ;
8993 status : string ;
9094 actual ?: string ;
9195 expected ?: string ;
@@ -118,11 +122,12 @@ const getTest = (renderTestName: string) => async () => {
118122 throw new Error ( `No expected images found for ${ renderTestName } . Please run the test with UPDATE=true to generate expected images.` ) ;
119123 }
120124
121- const { minDiff, minDiffImage, expectedIndex, minImageSrc} = calculateDiff ( actualImageData , expectedImages . map ( ( { imageData} ) => imageData ) , { w, h} , options [ 'diff-calculation-threshold' ] ) ;
125+ const { minDiff, minDiffImage, expectedIndex, minImageSrc} = calculateDiff ( actualImageData , expectedImages . map ( ( { imageData, src } ) => ( { data : imageData . data , src } ) ) , { w, h} , options [ 'diff-calculation-threshold' ] ) ;
122126 const pass = minDiff <= options . allowed ;
123127 const testMetaData : TestMetadata = {
124128 name : renderTestName ,
125129 minDiff : Math . round ( 100000 * minDiff ) / 100000 ,
130+ allowed : options . allowed ,
126131 status : pass ? 'passed' : 'failed' ,
127132 } ;
128133
0 commit comments