mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-08 12:32:43 +00:00
The v1.20.0 transport switch retargeted the Fitbit client from the Google Health API onto the classic Fitbit Web API, but the two sync integration tests still stubbed fetch with Google-shaped dataPoints responses. The mocks no longer matched the endpoints the client reads, so every ingest assertion saw zero rows. Rewrite the fetch-mock layer in both files to key on the classic endpoint paths and return classic-shaped JSON the real mappers parse: - body/log/weight, activities/heart for the metrics sync - activities/steps for the cumulative-activity sync - 1.2 sleep log levels.data for the per-stage sleep sync - activities/list for the workout sync The ingest contract is preserved (row counts, dedup, source priority, sleep stages, daily-total overwrite). Two assertions move to their classic equivalents: the workout externalId now anchors on the numeric logId, and the workout test pins the user to UTC so the offset-less local wall-clock timestamps the classic sleep/activity logs emit resolve to the same instants the cross-source picker buckets on.