fair-plugin/tests/sites/Dockerfile.wp
Chuck Adams 0ed8f2bfa7
refactor: flatten tests/sites/ephemeral/ → tests/sites/
Move everything from tests/sites/ephemeral/ up one level to tests/sites/.
The 'ephemeral' qualifier didn't add value — all sites under tests/sites/
are ephemeral Docker setups by design.

- tests/sites/Dockerfile.wp (shared WP image)
- tests/sites/docker-compose.base.yml (shared template)
- tests/sites/integration/ (WP + mock-server, used by both integration & HTTP)
- tests/sites/browser-test/ (WP + mock-server, used by Playwright)
- tests/sites/mutation/ (PHP 8.5 + Infection, isolated composer.json)

All context and volume mount paths updated for the new depth:
  context: ../../../.. → ../../..
  volumes: ../../../../ → ../../..

bin/run-integration.sh refactored:
- SUITE argument now gates which tests run: 'integration', 'http', or 'all'
- Both integration and http share the integration compose stack
- Separate project names (fair-integration-integration vs fair-integration-http)
  avoid port conflicts when both run in sequence

composer.json:
- test:integration → integration tests only
- test:http → HTTP tests only (own compose cycle)
- test:all chains unit, multisite, integration, http

Verified: test:all exits 0 (262+262+12+12 tests). Browser 15/15 pass.
Signed-off-by: Chuck Adams <chaz@chaz.works>
2026-06-09 16:25:09 -06:00

7 lines
299 B
Text

ARG WORDPRESS_VERSION=6.4
ARG PHP_VERSION=8.0
FROM wordpress:${WORDPRESS_VERSION}-php${PHP_VERSION}-apache
# The FAIR_DEFAULT_REPO_DOMAIN constant is set via wp-config extra.
# The PLC directory override is handled by a mu-plugin that rewrites
# the base URL to point at the mock-server container.