Files
SREBOT/BOT/tests/smoke_recap.py
T
FURRO404 2b399fdb81 add SREBOT, SHARED, TSSBOT contents (fixup for #1223)
PR #1223 only staged the deletions of the old paths because the new
top-level directories were still untracked when the commit was authored.
This commit adds the actual restructured tree: SREBOT/ (existing bot),
SHARED/ (vromfs, data_parser, ICONS/MAPS/FONTS, DAGOR_FILES,
update_game_files), and TSSBOT/ (skeleton).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 23:17:02 -07:00

51 lines
1.5 KiB
Python

"""
Smoke test for BOT/render_recap.py.
Runs the renderer end-to-end against the live HC storage volume databases
and verifies a PNG lands at the --out path.
Usage:
source .venv/bin/activate && python BOT/tests/smoke_recap.py
"""
import subprocess
import sys
import tempfile
from pathlib import Path
def run_smoke(clan_id: int = 123456, season: str = "2026-II") -> int:
"""Run the renderer for a given clan/season; return exit code."""
with tempfile.TemporaryDirectory() as tmp:
out = Path(tmp) / "card.png"
cmd = [
sys.executable,
"BOT/render_recap.py",
"--mode", "squadron",
"--clan-id", str(clan_id),
"--season", season,
"--season-start", "1772348400",
"--season-end", "1777852799",
"--out", str(out),
]
print("Running:", " ".join(cmd))
result = subprocess.run(cmd, capture_output=True, text=True)
print("stdout:", result.stdout)
print("stderr:", result.stderr)
if result.returncode != 0:
print(f"FAIL: exit={result.returncode}")
return result.returncode
if not out.exists():
print(f"FAIL: {out} does not exist")
return 1
if out.stat().st_size == 0:
print(f"FAIL: {out} is empty")
return 1
print(f"OK: wrote {out.stat().st_size} bytes")
return 0
if __name__ == "__main__":
code = run_smoke()
sys.exit(code)