Adds accounting-service PATCH/archive, fiscal helpers, COA templates and setup status, plus SuperApp Accounting UI (DS, scoreboard, masters, vouchers, ledger, ops modules) with session refresh and HTTPS public API URLs. Co-authored-by: Cursor <cursoragent@cursor.com>
42 lines
1.3 KiB
Markdown
42 lines
1.3 KiB
Markdown
# Testing Strategy
|
|
|
|
## Required Layers
|
|
|
|
| Layer | Purpose |
|
|
| --- | --- |
|
|
| Unit | Pure domain logic, validators, mappers |
|
|
| Service | Business rules with DB/fakes |
|
|
| Repository | Query correctness, tenant filters |
|
|
| API | HTTP contracts, authz, status codes |
|
|
| Integration | Multi-component flows (onboarding, OTP, SSO handoff) |
|
|
| Migration | Upgrade/downgrade smoke on clean DB |
|
|
| Tenant | Cross-tenant isolation negatives |
|
|
| Performance | Hot entitlement/resolve paths as needed |
|
|
| Security | Auth bypass attempts, token scope checks |
|
|
| Architecture | Boundary rules (optional lint/CI later) |
|
|
| Documentation validation | Links, registry completeness for the phase |
|
|
|
|
## Rules
|
|
|
|
1. New behavior ships with tests in the same phase.
|
|
2. Tenant tests must include at least one cross-tenant denial case for new tenant-scoped APIs.
|
|
3. Do not rely on production data for assertions.
|
|
4. Prefer deterministic time/OTP fakes.
|
|
5. Phase is incomplete if tests fail or are absent for claimed deliverables.
|
|
|
|
## Commands (current)
|
|
|
|
```bash
|
|
cd backend/core-service
|
|
pytest -q
|
|
|
|
cd backend/services/identity-access
|
|
pytest -q
|
|
```
|
|
|
|
## Related Documents
|
|
|
|
- [Project Principles](project-principles.md)
|
|
- [Developer Guide](developer-guide.md)
|
|
- [Branching Strategy](branching-strategy.md)
|