@@ -44,6 +44,7 @@ export class CITGMComparisonBuild {
4444 const { failures : comparisonFailures } = comparisonBuild . results ;
4545
4646 const failures = { } ;
47+ let allPlatformFailures = undefined ;
4748 for ( const platform in comparisonFailures ) {
4849 // Account for no failure on this platform, or different platform.
4950 if ( ! Object . prototype . hasOwnProperty . call ( baseFailures , platform ) ) {
@@ -66,11 +67,18 @@ export class CITGMComparisonBuild {
6667 if ( newFailures . length !== 0 ) {
6768 result = statusType . FAILURE ;
6869 }
69-
70+ if ( allPlatformFailures === undefined ) {
71+ allPlatformFailures = newFailures ;
72+ } else if ( allPlatformFailures . length > 0 ) {
73+ allPlatformFailures = allPlatformFailures . filter ( f => {
74+ return newFailures . includes ( f ) ;
75+ } ) ;
76+ }
7077 failures [ platform ] = newFailures ;
7178 }
7279
7380 this . results . failures = failures ;
81+ this . results . allPlatformFailures = allPlatformFailures ;
7482 this . result = result ;
7583
7684 return result ;
@@ -124,6 +132,12 @@ export class CITGMComparisonBuild {
124132 const str = `${ totalFailures } failures in ${ cID } not present in ${ bID } ` ;
125133 cli . log ( `${ statusType . FAILURE } : ${ str } \n\n` ) ;
126134 console . table ( output ) ;
135+ if (
136+ results . allPlatformFailures &&
137+ results . allPlatformFailures . length ) {
138+ const failures = results . allPlatformFailures . join ( ', ' ) ;
139+ console . warn ( `These modules failed in all platforms: ${ failures } ` ) ;
140+ }
127141 }
128142
129143 formatAsJson ( ) {
0 commit comments