diff --git a/backend/tests/test_2950_latest_image_revision_gate.py b/backend/tests/test_2950_latest_image_revision_gate.py index af602ef7..ad75bc28 100644 --- a/backend/tests/test_2950_latest_image_revision_gate.py +++ b/backend/tests/test_2950_latest_image_revision_gate.py @@ -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, "гард обязан ЖДАТЬ, а не падать сразу"