fix: address pre-push review findings
This commit is contained in:
@@ -87,6 +87,28 @@ def test_merge_observation_records_metadata_for_fresh_value():
|
||||
assert merged["last_error"] is None
|
||||
|
||||
|
||||
def test_merge_observation_rejects_error_only_payload_as_fresh_data():
|
||||
old = {
|
||||
"value": 1.25,
|
||||
"observed_at": "2026-07-25T12:00:00+00:00",
|
||||
"source": "lookintobitcoin",
|
||||
"stale": False,
|
||||
"last_error": None,
|
||||
}
|
||||
|
||||
merged = merge_observation(
|
||||
old,
|
||||
{"value": None, "error": "No data returned"},
|
||||
source="lookintobitcoin",
|
||||
error="metric missing from scrape",
|
||||
)
|
||||
|
||||
assert merged["value"] == 1.25
|
||||
assert merged["observed_at"] == old["observed_at"]
|
||||
assert merged["stale"] is True
|
||||
assert merged["last_error"] == "No data returned"
|
||||
|
||||
|
||||
@pytest.mark.parametrize("timestamp", [None, "", "not-a-time"])
|
||||
def test_onchain_refresh_due_when_timestamp_is_missing_or_invalid(timestamp):
|
||||
assert onchain_refresh_due(timestamp, now=datetime(2026, 7, 26, tzinfo=timezone.utc)) is True
|
||||
|
||||
Reference in New Issue
Block a user