test(quarter-dump): un-rot freshness date-bomb (hardcoded 2026-01-01 → now−1d)
test_nspd_path_used_when_zouit_count_nonzero хардкодил dump fetched_at = datetime(2026, 1, 1) как «свежий». С 2026-06-30 разница превысила _DUMP_MAX_AGE_DAYS=180 → код уходил в stale-ветку (_trigger_harvest → _empty_unavailable) → nspd_zouit_overlaps=[] → assert 0 == 1. Не регрессия этой ветки: PR #2101 был frontend-only (backend-tests не гонял полный suite), PR-B — первый backend-PR после пересечения порога, поэтому date-bomb всплыл здесь. Свежесть теперь относительна now (now − 1 день) — устойчиво к дате прогона.
This commit is contained in:
parent
83a063f0ee
commit
0413d59b89
1 changed files with 5 additions and 2 deletions
|
|
@ -685,12 +685,15 @@ def test_nspd_path_used_when_zouit_count_nonzero() -> None:
|
|||
Проверяем source='nspd-quarter-dump' (не cad_zouit).
|
||||
"""
|
||||
# Строка дампа: все поля через MagicMock
|
||||
from datetime import UTC, datetime
|
||||
from datetime import UTC, datetime, timedelta
|
||||
|
||||
dump_row = MagicMock()
|
||||
dump_row.__getitem__ = lambda self, i: [
|
||||
"66:41:0603016", # quarter_cad
|
||||
datetime(2026, 1, 1, tzinfo=UTC), # fetched_at_utc (свежий)
|
||||
# Свежесть ОТНОСИТЕЛЬНО now: был хардкод datetime(2026, 1, 1) → date-bomb
|
||||
# (с 2026-06-30 перевалил _DUMP_MAX_AGE_DAYS=180 → stale-ветка → _trigger_harvest
|
||||
# → _empty_unavailable → overlaps=[] → assert 0 == 1). now − 1 день всегда свеж.
|
||||
datetime.now(UTC) - timedelta(days=1), # fetched_at_utc (свежий)
|
||||
100, # total_features
|
||||
None, # harvest_error
|
||||
1, # territorial_zones_count
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue