Merge pull request 'Прогон тестов перестаёт спать по-настоящему' (#3499) from fix/3471-tests-no-real-sleep into main
Some checks failed
Deploy Trade-In / build-backend (push) Blocked by required conditions
Deploy Trade-In / deploy (push) Blocked by required conditions
Deploy Trade-In / perimeter-smoke (push) Blocked by required conditions
Deploy Trade-In / deploy-status (push) Blocked by required conditions
Deploy Trade-In / changes (push) Successful in 14s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-browser (push) Has been skipped
Deploy Trade-In / test (push) Has been cancelled
Some checks failed
Deploy Trade-In / build-backend (push) Blocked by required conditions
Deploy Trade-In / deploy (push) Blocked by required conditions
Deploy Trade-In / perimeter-smoke (push) Blocked by required conditions
Deploy Trade-In / deploy-status (push) Blocked by required conditions
Deploy Trade-In / changes (push) Successful in 14s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-browser (push) Has been skipped
Deploy Trade-In / test (push) Has been cancelled
This commit is contained in:
commit
a6619e1d3f
1 changed files with 17 additions and 0 deletions
|
|
@ -150,3 +150,20 @@ def pytest_sessionfinish(session, exitstatus) -> None:
|
||||||
)
|
)
|
||||||
if exitstatus == 0:
|
if exitstatus == 0:
|
||||||
session.exitstatus = 1
|
session.exitstatus = 1
|
||||||
|
|
||||||
|
|
||||||
|
# ── Никакого НАСТОЯЩЕГО сна в тестах ─────────────────────────────────────────
|
||||||
|
# Фоновый дослальщик алертов GlitchTip (#3471) спит между попытками по
|
||||||
|
# настоящим часам: три попытки по 30 секунд. `TestClient` из Starlette ждёт
|
||||||
|
# завершения background-задачи, привязанной к ответу, поэтому один-единственный
|
||||||
|
# тест на отказ доставки держал весь прогон около минуты, а в CI прогон просто
|
||||||
|
# умирал по таймауту без единой строки об ошибке.
|
||||||
|
#
|
||||||
|
# Ставим паузу в ноль для ВСЕХ тестов: проверять надо, что дослальщик вызван и
|
||||||
|
# сколько раз, а не то, что интерпретатор умеет спать. Тест, которому нужна
|
||||||
|
# настоящая пауза, переопределяет значение сам.
|
||||||
|
@pytest.fixture(autouse=True)
|
||||||
|
def _no_real_retry_sleep(monkeypatch: pytest.MonkeyPatch) -> None:
|
||||||
|
from app.tasks import glitchtip_alert_retry
|
||||||
|
|
||||||
|
monkeypatch.setattr(glitchtip_alert_retry, "_RETRY_DELAY_S", 0.0)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue