Testing¶
Zireael uses layered tests for correctness, regressions, safety, and deterministic behavior.
Test Tiers¶
- Unit tests: parser/core utility behavior
- Golden tests: deterministic renderer output fixtures
- Integration tests: backend/pty/conpty behavior (platform-specific)
- Fuzz smoke tests: malformed input resilience for parsers/unicode paths
CTest Namespaces¶
Current suite includes namespaces like:
zireael.unitzireael.goldenzireael.integration.*zireael.fuzz.*
Run Tests¶
Full preset run¶
By build directory¶
Filtered runs¶
ctest --test-dir out/build/posix-clang-debug -R zireael.golden --output-on-failure
ctest --test-dir out/build/posix-clang-debug -R zireael.fuzz --output-on-failure
Guardrails and Drift Checks¶
Run alongside tests:
CI-Oriented Recommendations¶
- run at least one clang and one gcc preset on POSIX
- include sanitizer preset on Linux
- run docs strict build in CI (
bash scripts/docs.sh build) scripts/docs.shreuses.venv-docsand respects$PYTHON, so CI can pin a deterministic interpreter- treat guardrail failures as blocking