@@ -113,7 +113,7 @@ class ExpandedComparisonResult extends LitElement {
113113 #diffCanvas {
114114 width: 100%;
115115 height: 100%;
116- margin-top: 35px ;
116+ margin-top: 22px ;
117117 margin-bottom: 5px;
118118 }
119119 .selector {
@@ -151,33 +151,9 @@ class ExpandedComparisonResult extends LitElement {
151151
152152 _viewer ( name , choices , current , viewType ) {
153153 const url = viewType == 'rendered' ? getCompUrl ( current ) : getGoldenUrl ( current ) ;
154- const onSelect = ( ev ) => {
155- const testName = ev . target . value ;
156- const test = this . tests . find ( ( t ) => t . name == testName ) ;
157- if ( name == 'left' ) {
158- this . left = test ;
159- this . leftImageLoaded = false ;
160- } else {
161- this . right = test ;
162- this . rightImageLoaded = false ;
163- }
164- this . showDiff = false ;
165- } ;
166-
167- const dropdown = ( ) => {
168- if ( this . disableDropdowns ) {
169- return html `< div class ="selector "> ${ current . name } (${ viewType } )</ div > ` ;
170- }
171- return html `
172- < select class ="selector " @change =${ onSelect } >
173- ${ choices . map ( ( c ) => html `< option value =${ c . name } ?selected =${ c . name == current . name } > ${ c . name } </ option > ` ) }
174- </ select >
175- ` ;
176- }
177-
178154 return html `
179155 < div style ="flex: 1; margin: 0 5px; ">
180- ${ dropdown ( ) }
156+ < div > ${ current . name } </ div >
181157 < tiff-viewer id ="viewer- ${ name } " class ="viewer "
182158 name ="${ current . name } "
183159 fileurl ="${ url } "> </ tiff-viewer >
@@ -405,6 +381,9 @@ class App extends LitElement {
405381 selectedTests : { type : Array } ,
406382 comparisonContent : { type : Object } ,
407383 compareMode : { type : Boolean } ,
384+
385+ // This is used to cache urls that are not found
386+ missingFile : { type : Object } ,
408387 } ;
409388
410389 async _init ( ) {
@@ -420,12 +399,27 @@ class App extends LitElement {
420399 this . selectedTests = [ ] ;
421400 this . comparisonContent = null ;
422401 this . compareMode = false ;
402+ this . missingFile = {
403+ [ getDiffUrl ( 'undefined' ) ] : true ,
404+ } ;
423405 this . _init ( ) ;
424406
425407 this . addEventListener ( 'dialog-closed' , ( ) => {
426408 this . dialogContent = null ;
427409 this . comparisonContent = null ;
428410 } ) ;
411+
412+ this . addEventListener ( 'url-hit' , ( ev ) => {
413+ delete this . missingFile [ ev . detail . value ] ;
414+ this . missingFile = this . missingFile ;
415+ this . requestUpdate ( ) ;
416+ } ) ;
417+
418+ this . addEventListener ( 'url-miss' , ( ev ) => {
419+ this . missingFile [ ev . detail . value ] = true ;
420+ this . missingFile = this . missingFile ;
421+ this . requestUpdate ( ) ;
422+ } ) ;
429423 }
430424
431425 updated ( props ) {
@@ -470,8 +464,24 @@ class App extends LitElement {
470464 }
471465
472466 render ( ) {
473- let passed = this . tests . filter ( ( t ) => t . result == 'ok' ) ;
474- let failed = this . tests . filter ( ( t ) => t . result != 'ok' ) ;
467+ const sortFn = ( a , b ) => {
468+ const aparts = a . name . split ( '.' ) ;
469+ const bparts = b . name . split ( '.' ) ;
470+ // 0 = test names
471+ // 1 = backend
472+ // 2 = model
473+ for ( let i of [ 0 , 2 , 1 ] ) {
474+ if ( aparts [ i ] < bparts [ i ] ) {
475+ return - 1 ;
476+ }
477+ if ( aparts [ i ] > bparts [ i ] ) {
478+ return 1 ;
479+ }
480+ }
481+ return 0 ;
482+ } ;
483+ let passed = this . tests . filter ( ( t ) => t . result == 'ok' ) . sort ( sortFn ) ;
484+ let failed = this . tests . filter ( ( t ) => t . result != 'ok' ) . sort ( sortFn ) ;
475485 const singleTiff = ( url ) => {
476486 return html `< tiff-viewer style ="max-width:100px " fileurl ="${ url } "> </ tiff-viewer > ` ;
477487 } ;
@@ -502,7 +512,8 @@ class App extends LitElement {
502512 [ goldenUrl , 'golden' ] ,
503513 [ compUrl , 'rendered' ] ,
504514 [ diffUrl , 'diff' ]
505- ] . map ( ( a ) => [ singleTiff ( a [ 0 ] ) , a [ 1 ] ] )
515+ ] . filter ( ( a ) => ! this . missingFile [ a [ 0 ] ] )
516+ . map ( ( a ) => [ singleTiff ( a [ 0 ] ) , a [ 1 ] ] )
506517 . map ( ( a ) => wrap ( ...a ) ) ;
507518 return html `
508519 < div class ="test-item " @click ="${ ( e ) => this . _onClick ( t , e ) } " >
0 commit comments