le king fu
|
12d1877870
|
test(categories): complete test coverage for migration flow (#123)
PR Check / rust (push) Successful in 22m48s
PR Check / frontend (push) Successful in 2m20s
PR Check / rust (pull_request) Successful in 22m51s
PR Check / frontend (pull_request) Successful in 2m21s
Adds unit + integration + regression tests and a QA checklist for the
v2→v1 seed migration feature.
- Fixtures: src/__fixtures__/profiles.ts (makeV2Profile, makeV1Profile,
makeV2ProfileWithCustom) with realistic categories, keywords,
suppliers, transactions, budgets.
- Unit: categoryMappingService (100 cases covering every DEFAULT_MAPPINGS
entry, 4-pass priority, splits, preserved/custom detection),
categoryBackupService (23 cases — Tauri mocks: success, write error,
integrity check, PIN-encrypted profile), categoryMigrationService (16
cases — BEGIN/COMMIT/ROLLBACK flow, backup-missing abort, journaling,
custom parent creation).
- Integration: full plan→backup→migrate→verify flow; rollback via SREF
import; backup failure → no DB write; migration SQL failure → ROLLBACK
+ intact state.
- Regression: parameterised v2/v1 fixtures covering auto-categorisation,
budget aggregation, splits preservation.
- Docs: docs/qa-refonte-seed-categories-ipc.md — manual checklist for UX,
system errors, encrypted profile, custom preservation, 90-day banner,
restore flow.
331 vitest tests pass (up from 193 baseline).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-21 19:25:13 -04:00 |
|