test(ci): гард #2950 — дедлайн теста ожидания 3 с вместо 1 (секундная гранулярность date +%s давала флейк 2 из 3)
All checks were successful
CI Trade-In / changes (pull_request) Successful in 11s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI / changes (pull_request) Successful in 14s
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Successful in 2m9s
CI / backend-tests (pull_request) Successful in 17m49s

This commit is contained in:
bot-backend 2026-08-21 16:52:07 +05:00
parent 54889a956b
commit 4d9d03cb07

View file

@ -111,7 +111,10 @@ def test_newer_revision_passes(repo: dict[str, object]) -> None:
def test_stale_latest_fails_after_timeout(repo: dict[str, object]) -> None:
"""Головной: :latest из c1, а по backend последний — c3 → ждёт, затем 1 с ::error."""
r = _run(repo, str(repo["c1"]), "backend")
# timeout=3: дедлайн считается целыми секундами (`date +%s`), и при 1 с первый
# опрос может прийти уже за дедлайном — гард честно падает сразу, а тест ждёт
# строки ожидания. 3 с при паузе 0.2 с дают её гарантированно.
r = _run(repo, str(repo["c1"]), "backend", timeout="3")
assert r.returncode == 1, r.stdout + r.stderr
assert "::error::" in r.stderr and "отстаёт" in r.stderr
assert "жду билд предшественника" in r.stdout, "гард обязан ЖДАТЬ, а не падать сразу"