| 04-review-download-security |
01 |
testing |
| vitest |
| tdd |
| react-testing-library |
| red-baseline |
|
| phase |
provides |
| 03-wizard-ui |
WizardProvider, WizardState, useWizard hook — required for rendering ReviewStep in tests |
|
| phase |
provides |
| 02-generators |
buildRcloneConf, buildIntuneInstall, buildIntuneDetection, buildRmmScript — called in ReviewStep |
|
|
| RED baseline test stubs for CONF-02, CONF-03, DOWN-01–DOWN-06, SECU-01, SECU-02 |
| GREEN SECU-03 assertion in reducer.test.ts confirming no storage writes |
|
| 04-02-plan |
| 04-03-plan |
| 04-04-plan |
| 04-05-plan |
|
| added |
patterns |
|
|
| Wave 0 TDD stubs use expect.fail('not yet implemented') for named RED failures |
| Requirement IDs embedded in describe block names (CONF-02, DOWN-01, etc.) for traceability |
| Storage.prototype.setItem spied via vi.spyOn for SECU-03 coverage |
| vi.mock at file level for downloadFile and downloadZip modules |
| vi.stubGlobal for navigator.clipboard and URL in beforeEach |
|
|
| created |
modified |
| src/components/wizard/ReviewStep.test.tsx |
|
| src/store/reducer.test.ts |
|
|
| [04-01] Wave 0 stubs use expect.fail — named RED baseline, not import-error RED, for all 10 ReviewStep requirements |
| [04-01] renderWithState helper wraps with WizardProvider (no initialState prop) — actual state injection deferred to GREEN phase |
| [04-01] SECU-03 goes in reducer.test.ts not ReviewStep.test.tsx — reducer is the state boundary that must never touch storage |
|
| Pattern: Phase 4 test files include @vitest-environment jsdom directive at top |
|
| CONF-02 |
| CONF-03 |
| DOWN-01 |
| DOWN-02 |
| DOWN-03 |
| DOWN-04 |
| DOWN-05 |
| DOWN-06 |
| SECU-01 |
| SECU-02 |
| SECU-03 |
|
2min |
2026-03-27 |