1.2 KiB
1.2 KiB
tests — Test Suite
Purpose
230+ teste: unit pe fiecare modul + 8 scenarii de regresie FSM pe imagini reale + env loader. Rulează headless pe Linux/WSL (de aceea FSM & config nu importă cv2).
Ownership
Tot tests/. Fiecare test_<modul>.py oglindește un modul din src/atm/.
Local Contracts
- Un modul nou în
src/atm/⇒ untest_<modul>.pycorespondent. test_scenarios_regression.pyrulează FSM-ul peste secvențele dincalibration/scenarios.jsonpe frame-uri reale. Schimbi FSM ⇒ adaugă/actualizează scenariu acolo (vezicalibration/AGENTS.md).test_env_loader.pymonkeypatchează env-ul; păstrează regula „shell wins" dinconfig._ensure_env_loaded.- Testele nu trebuie să atingă rețeaua reală (Telegram/Discord) — mock-uiește.
Work Guidance
- Rulează suita completă înainte de orice commit care atinge
src/atm/. - Dacă un test cere Pillow/OpenCV pe checkout-ul Windows, folosește venv-ul repo
(vezi
scripts/AGENTS.md).
Verification
pytest -q # toată suita
pytest tests/test_scenarios_regression.py -v # FSM pe imagini reale
Child DOX Index
(none — leaf)