This commit is contained in:
@@ -40,3 +40,53 @@ def test_auto_heal_code_fix_writes_audit(monkeypatch):
|
||||
assert result.success is True
|
||||
assert calls
|
||||
assert calls[0][2].action == "CODE_FIX"
|
||||
|
||||
|
||||
def test_incident_model_keeps_legacy_and_current_columns():
|
||||
from database.manager import Base
|
||||
|
||||
columns = set(Base.metadata.tables["incidents"].columns.keys())
|
||||
|
||||
assert {
|
||||
"error_traceback",
|
||||
"traceback_str",
|
||||
"playbook_id",
|
||||
"matched_playbook_id",
|
||||
"resolved_at",
|
||||
} <= columns
|
||||
|
||||
|
||||
def test_auto_heal_status_update_backfills_dual_playbook_columns(monkeypatch):
|
||||
from services.auto_heal_service import AutoHealResult, AutoHealService
|
||||
|
||||
captured = {}
|
||||
|
||||
class Session:
|
||||
def execute(self, stmt, params):
|
||||
captured["sql"] = str(stmt)
|
||||
captured["params"] = params
|
||||
|
||||
def commit(self):
|
||||
captured["committed"] = True
|
||||
|
||||
def rollback(self):
|
||||
captured["rolled_back"] = True
|
||||
|
||||
def close(self):
|
||||
captured["closed"] = True
|
||||
|
||||
monkeypatch.setattr("services.auto_heal_service.get_session", lambda: Session())
|
||||
|
||||
svc = AutoHealService()
|
||||
svc._update_incident_status(
|
||||
{"incident_id": 123, "matched_playbook_id": 77},
|
||||
AutoHealResult(True, "ALERT_ONLY", "ok"),
|
||||
)
|
||||
|
||||
assert "matched_playbook_id" in captured["sql"]
|
||||
assert "playbook_id" in captured["sql"]
|
||||
assert "resolved_at" in captured["sql"]
|
||||
assert captured["params"]["status"] == "closed"
|
||||
assert captured["params"]["playbook_id"] == 77
|
||||
assert captured["params"]["incident_id"] == 123
|
||||
assert captured["committed"] is True
|
||||
|
||||
Reference in New Issue
Block a user