mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 10:59:59 +00:00
- New bidirectional contract test ensures `services.prometheus.native_metrics.enabled`
and `roles/<role>/templates/prometheus.yml.j2` stay consistent across the roles tree,
replacing per-role spot checks for gitea/mattermost/matrix. Document the `native-metrics`
suppression rule and apply it to web-app-mattermost (prepared-but-default-off fragment).
- Move every test in `tests/integration/meta/config/` into the per-domain layout under
`tests/integration/roles/meta/{services,server}`. Group prometheus tests under
`services/prometheus/`, repositories tests under `services/repositories/`, the
`server.csp` shape test under `server/`. Move `test_non_empty.py` one level up
(scans all meta/*.yml, not just services.yml).
- Delete `tests/integration/meta/spots/` — both files were only `assertIn` over file
contents (brittle, no behavioural coverage, knowledge belongs in code comments or
proper integration tests).
- Harden `test_project_root_import.py` to catch chained `Path(__file__)…parent.parent.…`
walks (the attribute-access twin of `parents[N]` that previously slipped through).
Refactor 6 surfaced sites to import canonical `PROJECT_ROOT` / `ROLES_DIR`, plus
delete the now-redundant `_find_roles_dir` / `_find_project_root` helpers in
`native_metrics_apps` lookup and `invokable_paths` filter plugin.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
8 lines
632 B
Markdown
8 lines
632 B
Markdown
# Meta-Layout Integration Tests 🗂️
|
|
|
|
Integration tests for cross-cutting metadata that describes the project itself: role categories, CLI entrypoints, domain declarations, and GitHub-side CI/CD artefacts (workflows, Dependabot).
|
|
|
|
Each child directory pins one meta surface; see the per-directory README for scope. Per-role structural rules (`meta/main.yml`, `meta/services.yml`, includes) live under [`roles/`](../roles/); infrastructure layout lives under [`infrastructure/`](../infrastructure/).
|
|
|
|
For framework and `make test-integration` usage see [integration.md](../../../docs/contributing/actions/testing/integration.md).
|