@@ -42,33 +42,51 @@ const SummarizeTestPlanReport = ({ testPlanVersion, testPlanReports }) => {
4242 ) ;
4343 if ( ! testPlanReport ) return < Navigate to = "/404" /> ;
4444
45- const { at, browser, recommendedAtVersion } = testPlanReport ;
45+ const {
46+ at,
47+ browser,
48+ recommendedAtVersion,
49+ exactAtVersion,
50+ minimumAtVersion
51+ } = testPlanReport ;
4652 const overallMetrics = getMetrics ( { testPlanReport } ) ;
4753
4854 // Construct testPlanTarget
4955 const testPlanTarget = {
5056 id : `${ at . id } ${ browser . id } ` ,
5157 at,
5258 browser,
53- atVersion : recommendedAtVersion
59+ atVersion : recommendedAtVersion || exactAtVersion || minimumAtVersion ,
60+ isMinimumAtVersion :
61+ ! recommendedAtVersion && ! exactAtVersion && ! ! minimumAtVersion
5462 } ;
5563
5664 const none = None ( 'No Data' ) ;
5765
5866 const renderVersionsSummaryTable = ( ) => {
59- if ( testPlanVersion . phase !== 'RECOMMENDED' ) return null ;
67+ if (
68+ ! (
69+ testPlanVersion . phase === 'RECOMMENDED' ||
70+ testPlanVersion . phase === 'CANDIDATE'
71+ )
72+ ) {
73+ return null ;
74+ }
75+ if ( ! testPlanTarget . atVersion ) return null ;
6076
6177 const title = `${ testPlanTarget . at . name } Versions Summary` ;
6278 const testPlanReportsForTarget = testPlanVersion . testPlanReports . filter (
6379 testPlanReport =>
6480 testPlanReport . at . id === at . id &&
6581 testPlanReport . browser . id === browser . id
6682 ) ;
67- testPlanReportsForTarget . sort (
68- ( a , b ) =>
69- new Date ( b . recommendedAtVersion . releasedAt ) -
70- new Date ( a . recommendedAtVersion . releasedAt )
71- ) ;
83+ testPlanReportsForTarget . sort ( ( a , b ) => {
84+ const aAtVersion =
85+ a . recommendedAtVersion || a . exactAtVersion || a . minimumAtVersion ;
86+ const bAtVersion =
87+ b . recommendedAtVersion || b . exactAtVersion || b . minimumAtVersion ;
88+ return new Date ( bAtVersion . releasedAt ) - new Date ( aAtVersion . releasedAt ) ;
89+ } ) ;
7290
7391 return (
7492 < >
@@ -88,22 +106,34 @@ const SummarizeTestPlanReport = ({ testPlanVersion, testPlanReports }) => {
88106 </ thead >
89107 < tbody >
90108 { testPlanReportsForTarget . map ( testPlanReport => {
91- const { recommendedAtVersion, metrics } = testPlanReport ;
109+ const {
110+ recommendedAtVersion,
111+ exactAtVersion,
112+ minimumAtVersion,
113+ metrics
114+ } = testPlanReport ;
92115 const { mustFormatted, shouldFormatted, mayFormatted } = metrics ;
93116
117+ const atVersion =
118+ recommendedAtVersion || exactAtVersion || minimumAtVersion ;
119+ const isMinimumAtVersion = atVersion === minimumAtVersion ;
120+ const atVersionDisplayName = isMinimumAtVersion
121+ ? `${ atVersion . name } or later`
122+ : atVersion . name ;
123+
94124 return (
95125 < tr key = { `VersionsSummaryRow_${ testPlanReport . id } ` } >
96126 < td >
97127 { testPlanReportId === testPlanReport . id ? (
98- < > { recommendedAtVersion . name } </ >
128+ < > { atVersionDisplayName } </ >
99129 ) : (
100130 < Link
101131 to = {
102132 `/report/${ testPlanVersion . id } ` +
103133 `/targets/${ testPlanReport . id } `
104134 }
105135 >
106- { recommendedAtVersion . name }
136+ { atVersionDisplayName }
107137 </ Link >
108138 ) }
109139 </ td >
0 commit comments