mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 10:59:59 +00:00
Introduce seven new top-level clusters under tests/integration/:
cli/ - CLI subcommand --help smoke tests
config/ - uniform rules over roles/*/config/main.yml (non-empty,
CSP shape, universal-logout bool)
lookups/ - custom lookup-plugin behavior (config-path validation,
runtime caching perf)
vars/ - cross-role vars/defaults hygiene (uppercase uniqueness,
fact override prohibition)
inventory/ - utils/manager/inventory integration
spots/ - role-specific spot checks (dashboard OIDC, keycloak
realm import); home for future test_<role>_<aspect>.py
playbooks/ - playbook-level wiring (invokable-paths filter ->
tasks/stages + tasks/groups/*-roles.yml)
Under tests/integration/roles/ add two sub-clusters:
when/ - block-level when: hygiene (guards, duplication, block size)
includes/ - include_tasks/import_tasks/include_role/import_role target
existence (roles-scope and whole-repo-scope, kept separate
for now)
Move 14 previously unclustered tests into these clusters, adjust path
depths accordingly (from +1 to +2 levels for most, walker-based tests
unchanged), strip stale file-path header comments, and extend
tests/integration/roles/README.md to document the new sub-clusters.
No behavior change; every new cluster passes locally.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
688 B
688 B
When-Guard Tests 🚦
Integration tests for block-level when: hygiene across roles/*/tasks/**: max-three-task guard blocks, no duplicated when-conditions across tasks, and the pure-guarded-include pattern for role inclusion.
Tests in this directory MUST only cover rules about block-level when: semantics and guard-block shape. run_once_<role> flag lifecycle checks MUST live under ../run_once/; rules about include_tasks / import_tasks target existence MUST live under ../includes/.
For framework, directory layout, and make test-integration usage see integration.md.