| 03-wizard-ui |
01 |
testing |
| vitest |
| jsdom |
| react |
| tdd |
| test-infrastructure |
|
| phase |
provides |
| 01-foundation |
WizardState/WizardAction types, useWizard/WizardProvider context, BackendType |
|
| phase |
provides |
| 02-generators |
rclone config generation (tested separately, provides context for what forms must produce) |
|
|
| Vitest jsdom environment configured in vite.config.ts |
| Wave 0 RED baseline |
| 26 failing test stubs covering WIZD-01, WIZD-02, WIZD-03, WIZD-04, BACK-01, BACK-02, BACK-03 |
|
| src/components/wizard/ directory scaffolded |
|
| 03-02-PLAN (BackendSelectionStep implementation drives stubs to GREEN) |
| 03-03-PLAN (RemoteConfigStep implementation) |
| 03-04-PLAN (StepIndicator implementation) |
| 03-05-PLAN (App step routing) |
|
| added |
patterns |
|
|
| Wave 0 TDD |
| stubs written with expect.fail before any component files exist |
|
| Per-file jsdom directive via // @vitest-environment jsdom comments |
| Test names include requirement IDs (WIZD-xx, BACK-xx) for traceability |
|
|
| created |
modified |
| src/App.test.tsx |
| src/components/wizard/BackendSelectionStep.test.tsx |
| src/components/wizard/RemoteConfigStep.test.tsx |
| src/components/wizard/StepIndicator.test.tsx |
|
|
|
| jsdom environment added to vite.config.ts test block — no /// <reference types='vitest' /> needed with vitest ^4.x |
| Wave 0 stubs use expect.fail('not yet implemented') — gives named RED failures, cleaner than import errors |
| Test names embed requirement IDs (WIZD-01, BACK-02, etc.) — traceability without external matrix |
|
| Wave 0 TDD: create failing test stubs before component files exist — RED baseline before any implementation |
| Requirement traceability in test names: describe block names include requirement ID (e.g., 'WIZD-01: backend card grid') |
|
| WIZD-01 |
| WIZD-02 |
| WIZD-03 |
| WIZD-04 |
| BACK-01 |
| BACK-02 |
| BACK-03 |
|
1min |
2026-03-27 |