Trey T
6c3c9d3e0c
Coverage: iOS ViewModel DI seam + populated-state snapshots
6 user-facing ViewModels now accept optional `dataManager: DataManagerObservable = .shared`
init param — production call-sites unchanged; tests inject fixture-backed
observables. Refactored: ResidenceViewModel, TaskViewModel, ContractorViewModel,
DocumentViewModel, ProfileViewModel, LoginViewModel.
DataManagerObservable gains test-only init(observeSharedDataManager:) + convenience
init(kotlin: IDataManager).
SnapshotGalleryTests.setUp() resets .shared to FixtureDataManager.empty() per test;
populated tests call seedPopulated() to copy every StateFlow from
FixtureDataManager.populated() onto .shared synchronously. 15 populated surfaces ×
2 modes = 30 new PNGs.
iOS goldens: 58 → 88. 44 SnapshotGalleryTests green.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 01:45:04 -05:00
..
2026-02-18 10:54:25 -06:00
2026-03-07 07:45:12 -06:00
2026-03-07 15:13:19 -06:00
2026-04-18 19:37:09 -05:00
2026-03-07 06:33:57 -06:00
2026-03-07 06:33:57 -06:00
2026-04-19 01:45:04 -05:00
2026-04-15 08:38:31 -05:00
2026-04-19 01:45:04 -05:00
2026-03-07 06:33:57 -06:00
2026-03-07 07:45:12 -06:00
2026-04-01 20:32:09 -05:00
2026-04-01 20:32:09 -05:00
2025-12-26 21:21:48 -06:00
2025-11-20 23:07:14 -06:00
2026-03-07 07:45:12 -06:00
2026-03-23 15:05:37 -05:00
2026-04-02 16:11:47 -05:00
2026-04-15 08:38:31 -05:00
2026-04-01 20:32:09 -05:00
2025-12-04 15:55:34 -06:00
2026-03-07 06:33:57 -06:00
2026-02-19 17:30:58 -06:00