@@ -391,12 +391,15 @@ async function runDevBenchmark(buildTool, perfResult) {
391
391
let hmrLeafStart = - 1 ;
392
392
393
393
page . on ( 'console' , ( event ) => {
394
- const isFinished = ( ) => {
395
- return (
396
- perfResult [ buildTool . name ] ?. rootHmr &&
397
- perfResult [ buildTool . name ] ?. leafHmr
398
- ) ;
394
+ const afterHMR = ( ) => {
395
+ const currentResult = perfResult [ buildTool . name ] ;
396
+ if ( currentResult ?. rootHmr && currentResult ?. leafHmr ) {
397
+ currentResult . hmr = ( currentResult . rootHmr + currentResult . leafHmr ) / 2 ;
398
+ page . close ( ) ;
399
+ waitResolve ( ) ;
400
+ }
399
401
} ;
402
+
400
403
if ( event . text ( ) . includes ( 'root hmr' ) ) {
401
404
const match = / ( \d + ) / . exec ( event . text ( ) ) ;
402
405
if ( ! match ) {
@@ -412,10 +415,7 @@ async function runDevBenchmark(buildTool, perfResult) {
412
415
) ;
413
416
414
417
perfResult [ buildTool . name ] . rootHmr = hmrTime ;
415
- if ( isFinished ( ) ) {
416
- page . close ( ) ;
417
- waitResolve ( ) ;
418
- }
418
+ afterHMR ( ) ;
419
419
} else if ( event . text ( ) . includes ( 'leaf hmr' ) ) {
420
420
const hmrTime = Date . now ( ) - hmrLeafStart ;
421
421
logger . success (
@@ -424,10 +424,7 @@ async function runDevBenchmark(buildTool, perfResult) {
424
424
color . green ( hmrTime + 'ms' ) ,
425
425
) ;
426
426
perfResult [ buildTool . name ] . leafHmr = hmrTime ;
427
- if ( isFinished ( ) ) {
428
- page . close ( ) ;
429
- waitResolve ( ) ;
430
- }
427
+ afterHMR ( ) ;
431
428
}
432
429
} ) ;
433
430
@@ -644,29 +641,19 @@ if (runDev) {
644
641
averageResults ,
645
642
'devColdStart' ,
646
643
) ;
647
- const rootHmrRanked = addRankingEmojis (
648
- actualToolNames ,
649
- averageResults ,
650
- 'rootHmr' ,
651
- ) ;
652
- const leafHmrRanked = addRankingEmojis (
653
- actualToolNames ,
654
- averageResults ,
655
- 'leafHmr' ,
656
- ) ;
644
+ const hmrRanked = addRankingEmojis ( actualToolNames , averageResults , 'hmr' ) ;
657
645
const prodBuildRanked = addRankingEmojis (
658
646
actualToolNames ,
659
647
averageResults ,
660
648
'prodBuild' ,
661
649
) ;
662
650
663
651
markdownLogs += markdownTable ( [
664
- [ 'Name' , 'Dev cold start' , 'Root HMR' , 'Leaf HMR', 'Prod build' ] ,
652
+ [ 'Name' , 'Dev cold start' , 'HMR' , 'Prod build' ] ,
665
653
...actualToolNames . map ( ( name ) => [
666
654
name ,
667
655
`${ devColdStartRanked [ name ] } (${ averageResults [ name ] . serverStart . replace ( 'ms' , '' ) } + ${ averageResults [ name ] . onLoad . replace ( 'ms' , '' ) } )` ,
668
- rootHmrRanked [ name ] ,
669
- leafHmrRanked [ name ] ,
656
+ hmrRanked [ name ] ,
670
657
prodBuildRanked [ name ] ,
671
658
] ) ,
672
659
] ) ;
0 commit comments