Добавлены тесты для критических фиксов (lock_check, UniqueViolation, escName, idx_one_running)

This commit is contained in:
2026-07-31 18:28:49 +04:00
parent c1e7c4f9aa
commit 4d3ce74c03
5 changed files with 172 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
import db.scenario_defs as defs
def test_lock_check_returns_none_when_db_connection_missing(monkeypatch):
monkeypatch.setattr(defs, "get_conn", lambda: None)
result = defs.lock_check("cid", "test")
assert result is None
def test_lock_check_returns_none_on_db_exception(monkeypatch):
class BrokenCursor:
def execute(self, *args, **kwargs):
raise RuntimeError("db broken")
def close(self):
return None
class BrokenConn:
def cursor(self):
return BrokenCursor()
put_calls = {"n": 0}
monkeypatch.setattr(defs, "get_conn", lambda: BrokenConn())
monkeypatch.setattr(defs, "put_conn", lambda _c: put_calls.__setitem__("n", put_calls["n"] + 1))
result = defs.lock_check("cid", "test")
assert result is None
assert put_calls["n"] == 1