@@ -408,55 +408,67 @@ async function probeFrontendPlugins(plugins, port, pluginsRoot) {
408408// Reporting
409409// ---------------------------------------------------------------------------
410410
411+ function logResultAndCollectFailures ( result , failedPlugins ) {
412+ switch ( result . status ) {
413+ case "skip" :
414+ console . log ( ` SKIP ${ result . pkgName } (${ result . role } )` ) ;
415+ return ;
416+ case "pass" :
417+ if ( result . pluginId ) {
418+ console . log (
419+ ` PASS ${ result . pkgName } → /api/${ result . pluginId } (${ result . http } )` ,
420+ ) ;
421+ } else if ( isFrontendRole ( result . role ) ) {
422+ console . log ( ` PASS ${ result . pkgName } (${ result . role } )` ) ;
423+ }
424+ return ;
425+ case "warn" :
426+ console . log (
427+ ` WARN ${ result . pkgName } → /api/${ result . pluginId } (404 — pluginId guess may be wrong)` ,
428+ ) ;
429+ return ;
430+ case "fail-bundle" :
431+ console . log ( ` FAIL ${ result . pkgName } [bundle] ${ result . detail } ` ) ;
432+ failedPlugins . push ( result . pkgName ) ;
433+ return ;
434+ case "fail-load" :
435+ console . log ( ` FAIL ${ result . pkgName } [load] ${ result . detail } ` ) ;
436+ failedPlugins . push ( result . pkgName ) ;
437+ return ;
438+ default :
439+ console . log ( ` FAIL ${ result . pkgName } ${ result . error } ` ) ;
440+ failedPlugins . push ( result . pkgName ) ;
441+ }
442+ }
443+
444+ function updateResultCounts ( result , backendCounts , frontendCounts ) {
445+ const isFrontend = isFrontendRole ( result . role ) ;
446+ if ( result . status === "fail-bundle" || result . status === "fail-load" ) {
447+ if ( isFrontend ) frontendCounts . fail ++ ;
448+ else backendCounts . fail ++ ;
449+ return ;
450+ }
451+
452+ if ( isFrontend ) {
453+ frontendCounts [ result . status ] = ( frontendCounts [ result . status ] ?? 0 ) + 1 ;
454+ return ;
455+ }
456+
457+ backendCounts [ result . status ] = ( backendCounts [ result . status ] ?? 0 ) + 1 ;
458+ }
459+
411460function reportAndWrite ( results , resultsFile ) {
412461 console . log ( "\n========== Smoke Test Results ==========\n" ) ;
413462 const failedPlugins = [ ] ;
414463
415464 for ( const r of results ) {
416- switch ( r . status ) {
417- case "skip" :
418- console . log ( ` SKIP ${ r . pkgName } (${ r . role } )` ) ;
419- break ;
420- case "pass" :
421- if ( r . pluginId ) {
422- console . log (
423- ` PASS ${ r . pkgName } → /api/${ r . pluginId } (${ r . http } )` ,
424- ) ;
425- } else if ( isFrontendRole ( r . role ) ) {
426- console . log ( ` PASS ${ r . pkgName } (${ r . role } )` ) ;
427- }
428- break ;
429- case "warn" :
430- console . log (
431- ` WARN ${ r . pkgName } → /api/${ r . pluginId } (404 — pluginId guess may be wrong)` ,
432- ) ;
433- break ;
434- case "fail-bundle" :
435- console . log ( ` FAIL ${ r . pkgName } [bundle] ${ r . detail } ` ) ;
436- failedPlugins . push ( r . pkgName ) ;
437- break ;
438- case "fail-load" :
439- console . log ( ` FAIL ${ r . pkgName } [load] ${ r . detail } ` ) ;
440- failedPlugins . push ( r . pkgName ) ;
441- break ;
442- default :
443- console . log ( ` FAIL ${ r . pkgName } ${ r . error } ` ) ;
444- failedPlugins . push ( r . pkgName ) ;
445- }
465+ logResultAndCollectFailures ( r , failedPlugins ) ;
446466 }
447467
448468 const be = { pass : 0 , warn : 0 , skip : 0 , fail : 0 } ;
449469 const fe = { pass : 0 , fail : 0 } ;
450470 for ( const r of results ) {
451- const isFe = isFrontendRole ( r . role ) ;
452- if ( r . status === "fail-bundle" || r . status === "fail-load" ) {
453- if ( isFe ) fe . fail ++ ;
454- else be . fail ++ ;
455- } else if ( isFe ) {
456- fe [ r . status ] = ( fe [ r . status ] ?? 0 ) + 1 ;
457- } else {
458- be [ r . status ] = ( be [ r . status ] ?? 0 ) + 1 ;
459- }
471+ updateResultCounts ( r , be , fe ) ;
460472 }
461473 const total = results . length ;
462474 const totalFail = be . fail + fe . fail ;
0 commit comments