Files
computer-playbook/tests/integration/roles/README.md
kevinveenbirkenbachandClaude Opus 4.7 391009f7e2 docs: fix broken markdown links to renamed/moved test files
The meta-tests reorganisation in 8d8576e53 renamed and moved
``tests/integration/roles/meta/test_services_dynamic_flags.py`` to
``tests/integration/roles/meta/services/test_dynamic_flags.py``
and shifted the dependency-graph cluster from
``tests/integration/roles/dependencies/`` to
``tests/integration/roles/meta/dependencies/``. Four markdown
links still pointed at the pre-rename paths and tripped
``test_markdown_relative_links_resolve``:

- ``docs/contributing/actions/testing/suppression.md:62`` (the
  ``dynamic-flag`` row of the suppression catalog)
- ``docs/requirements/017-playwright-biber-rbac-coverage.md:46``
- ``docs/requirements/018-playwright-ldap-coverage.md:47``
- ``tests/integration/roles/README.md:5`` (also added a pointer
  to the sibling ``meta/services/run_after/`` cluster that owns
  the ``run_after`` checks)

Verification: ``test_markdown_relative_links_resolve`` passes; no
other content changes.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 20:44:06 +02:00

8 lines
1.3 KiB
Markdown

# Role Structure Tests 📚
Integration tests that enforce structural invariants of every role under `roles/`: folder-name conventions and `include_tasks` / `import_tasks` target existence.
Tests in this directory MUST only cover role-level structural rules (folder naming, role-name regex). `meta/main.yml` presence and field checks MUST live under [`meta/`](meta/). Dependency-graph checks (self-, circular, unnecessary dependencies, `run_after`) MUST live under [`meta/dependencies/`](meta/dependencies/) (and the sibling [`meta/services/run_after/`](meta/services/run_after/)). Application-specific role rules (web-app README, `applications[...]` / `group_names` usage, `application_id` identity) MUST live under [`applications/`](applications/). `run_once_<role>` flag lifecycle checks MUST live under [`run_once/`](run_once/). Block-level `when:` hygiene (guard blocks, duplication, size) MUST live under [`when/`](when/). `include_tasks` / `import_tasks` / `include_role` / `import_role` target existence MUST live under [`includes/`](includes/). Compose- or handler-specific checks MUST live in their respective topical clusters.
For framework, directory layout, and `make test-integration` usage see [integration.md](../../../docs/contributing/actions/testing/integration.md).