mirror of
https://github.com/outbackdingo/optimclaw.git
synced 2026-08-29 08:59:31 +00:00
26 lines
810 B
Markdown
26 lines
810 B
Markdown
---
|
|
paths:
|
|
- "src/**/*.rs"
|
|
- "tests/**"
|
|
---
|
|
# Testing Rules
|
|
|
|
## Test Tiers
|
|
|
|
| Tier | Command | External deps |
|
|
|------|---------|---------------|
|
|
| Unit | `cargo test` | None |
|
|
| Integration | `cargo test --features integration` | Running PostgreSQL |
|
|
| Live | `cargo test --features integration -- --ignored` | PostgreSQL + LLM API keys |
|
|
|
|
Run `bash scripts/check-boundaries.sh` to verify test tier gating.
|
|
|
|
## Key Patterns
|
|
|
|
- Unit tests in `mod tests {}` at the bottom of each file
|
|
- Async tests with `#[tokio::test]`
|
|
- No mocks, prefer real implementations or stubs
|
|
- Use `tempfile` crate for test directories, never hardcode `/tmp/`
|
|
- Regression test with every bug fix (enforced by commit-msg hook)
|
|
- Integration tests (`--test workspace_integration`) require PostgreSQL; skipped if DB is unreachable
|