Commit Graph
4 Commits
Author SHA1 Message Date
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
kevinveenbirkenbachandClaude Opus 4.7 709f6f73dd refactor(tests/integration): promote remaining top-level tests into topical clusters
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>
2026-04-21 12:41:30 +02:00
kevinveenbirkenbachandClaude Opus 4.7 02da33b0a5 refactor(tests): reorganize into topical sub-clusters and consolidate linting
Under tests/integration/roles/ introduce four sub-clusters (meta/,
dependencies/, applications/, run_once/) plus nested dependencies/run_after/
and applications/id/. Fold tests/integration/application_id/ into
roles/applications/id/ and tests/integration/run_once/ into roles/run_once/.
Pull four application-related tests out of tests/integration/ into
roles/applications/, and test_run_after_references.py into the run_after/
sub-cluster.

Consolidate tests/integration/linting/ into tests/lint/{ansible,filesystem,
repository}/, so repository-wide lint checks now run under make test-lint
rather than make test-integration.

Each new cluster ships a README.md and __init__.py; cross-referencing
READMEs (categories, ports, services, roles, applications) are updated to
point at the new paths. Path depths inside moved tests and one hardcoded
ignore path in test_domain.py are adjusted accordingly. No behavior change;
all 32 lint tests and every moved cluster pass locally.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-21 12:22:33 +02:00
kevinveenbirkenbachandClaude Opus 4.7 bc9d10f085 refactor(tests/integration): reorganize tests into topical cluster subdirs
Move flat tests/integration/test_*.py files into thematic subfolders
(action_plugins, application_id, categories, compose, domains, filters,
handlers, jinja, linting, oauth2_oidc, passwords, ports, roles, run_once,
services, workflows), strip redundant prefixes from filenames, and
adjust path-depth references by +1 level. Add __init__.py and a scope-
focused README.md per cluster so the directory purpose is discoverable
without duplicating the integration.md SPOT. Update design/services.md
to point at the new test locations.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-21 11:04:35 +02:00