diff --git a/report-app/src/app/pages/report-viewer/report-viewer.html b/report-app/src/app/pages/report-viewer/report-viewer.html
index 08369b9..548ca1f 100644
--- a/report-app/src/app/pages/report-viewer/report-viewer.html
+++ b/report-app/src/app/pages/report-viewer/report-viewer.html
@@ -80,10 +80,7 @@
Tests
-
+
}
@@ -258,7 +255,8 @@ Generated applications
[label]="`Filter by failed checks (${selectedChecks().length} selected)`"
[options]="allFailedChecks()"
[(selected)]="selectedChecks"
- class="check-filter"/>
+ class="check-filter"
+ />
}
@for (result of filteredResults(); track result) {
@@ -291,7 +289,7 @@
Generated applications
}
@if (hasBuildFailureDuringTestRepair(result)) {
- Build failed after a11y repair
+ Build failed after a11y/test repair
}
@if (finalAttempt.testResult) {
@@ -381,13 +379,15 @@ Test Results
@if (result.testResult.passed) {
✔ Tests passed
@if ((result.testRepairAttempts || 0) > 0) {
- after {{ result.testRepairAttempts }} repair attempt(s)
+ after {{ result.testRepairAttempts }} repair attempt(s)
}
} @else {
✘ Tests failed
}
-
+
@if (result.testResult.output && !result.testResult.passed) {
See Test Output
@@ -507,14 +507,16 @@ Generated Code
[audits]="category.audits"
[displayName]="category.displayName"
[score]="category.score"
- [description]="category.description"/>
+ [description]="category.description"
+ />
}
@if (lighthouse.uncategorized.length > 0) {
+ [score]="null"
+ />
}
}
diff --git a/runner/orchestration/build-serve-loop.ts b/runner/orchestration/build-serve-test-loop.ts
similarity index 93%
rename from runner/orchestration/build-serve-loop.ts
rename to runner/orchestration/build-serve-test-loop.ts
index 957f58c..2790b79 100644
--- a/runner/orchestration/build-serve-loop.ts
+++ b/runner/orchestration/build-serve-test-loop.ts
@@ -133,19 +133,16 @@ export async function attemptBuildAndTest(
progress,
userJourneyAgentTaskInput,
);
- const testResult = await runTest(
- env,
- evalID,
- directory,
- rootPromptDef,
- abortSignal,
- workerConcurrencyQueue,
- progress,
- );
-
- if (testResult !== null) {
- lastAttempt.testResult = testResult;
- }
+ lastAttempt.testResult =
+ (await runTest(
+ env,
+ evalID,
+ directory,
+ rootPromptDef,
+ abortSignal,
+ workerConcurrencyQueue,
+ progress,
+ )) ?? undefined;
}
// Attempt to repair testing. This only runs when the last build
@@ -236,19 +233,16 @@ export async function attemptBuildAndTest(
progress,
userJourneyAgentTaskInput,
);
- const testResult = await runTest(
- env,
- evalID,
- directory,
- rootPromptDef,
- abortSignal,
- workerConcurrencyQueue,
- progress,
- );
-
- if (testResult !== null) {
- lastAttempt.testResult = testResult;
- }
+ lastAttempt.testResult =
+ (await runTest(
+ env,
+ evalID,
+ directory,
+ rootPromptDef,
+ abortSignal,
+ workerConcurrencyQueue,
+ progress,
+ )) ?? undefined;
if (hasAxeFailure && lastAttempt.serveTestingResult.axeViolations?.length === 0) {
progress.log(rootPromptDef, 'success', `Successfully fixed all Axe accessibility violations`);
diff --git a/runner/orchestration/generate.ts b/runner/orchestration/generate.ts
index dd076b0..49a2926 100644
--- a/runner/orchestration/generate.ts
+++ b/runner/orchestration/generate.ts
@@ -47,7 +47,7 @@ import {getRunnerByName} from '../codegen/runner-creation.js';
import {summarizeReportWithAI} from '../reporting/report-ai-summary.js';
import {LocalExecutor} from './executors/local-executor.js';
import {EvalID} from './executors/executor.js';
-import {attemptBuildAndTest} from './build-serve-loop.js';
+import {attemptBuildAndTest} from './build-serve-test-loop.js';
/**
* Orchestrates the entire assessment process for each prompt defined in the `prompts` array.