Appearance
Vitest baseline – 2025-12-02
- Command:
npm run test -- --coverage(enforced 5-minute timeout via Python wrapper). - Result: suite exited with status
124after timeout; coverage summary not written (coverage/coverage-summary.jsonmissing). - Passing suites (partial):
tests/adminMutations.test.ts,tests/bulkEditPreview.test.ts,tests/actionEditor.validation.test.ts,tests/patternVariables.test.ts,tests/textFields.runner.test.ts,tests/jobQueue.test.ts,tests/rollback.server.test.ts, etc.
Failing suites
| File | Failure summary |
|---|---|
tests/bulkDelete.test.ts | Expectation drift (Deleted 3 tasks. vs expected Deleted 4 tasks.) |
tests/rollback-route.test.ts | Redirect URLs missing error query params when guard rails trigger |
tests/FilterBuilder.dom.test.tsx | useFetcher requires Remix data router context; test renders component outside loader/router |
tests/FilterCard.dom.test.tsx | Preview table pagination spies never invoked; accessible controls not found |
Warnings surfaced
- Multiple React prop warnings in
VariantFilterAndSelection.dom.test.tsxandActionEditor.dom.test.tsx(blockAlign,borderWidth,ariaExpanded, etc.). useFetcherinvariant errors indicate we need router-aware test harness for filter editors/builders.
Coverage artifacts
- Only chunked
.tmp/coverage-*.jsonfiles exist; summary reporters (text,json-summary,html) were not emitted because the run timed out after test failures. - Need to re-run once failing suites are fixed to obtain accurate percentages and HTML report.
Playwright / E2E inventory
- Legacy specs under
e2e/:basic.spec.ts,import_export.spec.ts,import_edgecases.spec.ts. - Agent-authored specs under
tests/**/*.pw.spec.ts:bulk-tasks/*,bulk-variants/*,non-bulk/*,textFields-flow.pw.spec.ts,seed.pw.spec.ts. - Reference specs:
tests-coverage.md,playwright-agents.md, and repo rootspecs/*.mdfiles (specs/bulk-tasks.md,specs/bulk-variants.md,specs/non-bulk.md).
Observed gaps (per specs)
- No Vitest/E2E coverage for
app/routes/app.bulk.preview.table.tsxpagination logic. - CSV import failure modes (invalid headers, oversized files) covered only partially (
import_edgecaseslacks UI assertions). - Usage/billing gating relies on manual QA checklist; no automated coverage.
- Variant selection modes beyond VA-3 (first/last variant) absent in tests despite being documented.
Next steps: fix failing suites, add router-aware test harnesses, then implement new unit + Playwright coverage per testing plan.