approval-engine/tests/test_cli.py
tegwick 2bd2d19a98 Implement approval engine production readiness
Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a05e2e-805b-7042-a750-71f473bceea2
2026-09-02 00:52:04 +02:00

22 lines
800 B
Python

import json
import pytest
from approval_engine.cli import main
def test_migrate_verify_and_backup_commands(tmp_path, capsys):
database = tmp_path / "approval.sqlite"
backup = tmp_path / "approval.backup.sqlite"
assert main(["migrate", "--db", str(database)]) == 0
migrated = json.loads(capsys.readouterr().out)
assert migrated["ok"] is True
assert main(["verify", "--db", str(database)]) == 0
assert json.loads(capsys.readouterr().out)["schema_current"] is True
assert main(["backup", "--db", str(database), "--output", str(backup)]) == 0
assert json.loads(capsys.readouterr().out)["integrity"] == "ok"
def test_production_refuses_memory_store_before_serving():
with pytest.raises(SystemExit):
main(["serve", "--production", "--db", ":memory:"])