v2.4.0
Test Coverage & Code Quality
This release significantly improves test coverage and code quality through 7 focused PRs (#81–#87):
New Tests (105 added, 62 → 167 total)
CSVDocumentTests— content storage, UTF-8 round-trip, invalid encodingExportErrorTests— all error description branchesSettingsEnumTests— all settings enum raw values, display names, formatsSettingsManagerTests— defaults, persistence, invalid value fallbacksFHIRLabResultParserTests— FHIR JSON parsing, LOINC matching, missing fieldsA1CSampleTests— memberwise init, value preservationExportLogicTests— export enablement, date ranges, record limits, filenamesHealthKitQueryHelpersTests— authorization types, date alignment, A1C filtering
Production Refactors
- Extract
ExportLogicenum fromDataSelectionViewfor testable export decision logic - Extract
HealthKitQueryHelpersenum fromHealthKitManager(eliminates triplicated date predicate code) - Extract
FHIRLabResultParser.extractLabResult(fromFHIRData:loincCode:)pure helper - Add 16 accessibility identifiers across LaunchView, DataSelectionView, SettingsView
Documentation
- Updated
docs/TESTING.mdwith full test inventory and manual verification matrix