make test-webkit runs the drag specs in WebKit against the test stack

WebKit takes *.localhost to loopback through GLib and ignores /etc/hosts, so
the container shares Traefik's network namespace. The webkit project only
exists with PLAYWRIGHT_WEBKIT=1, so test-frontend stays Chromium only.
This commit is contained in:
2026-10-15 16:15:39 +02:00
parent fbd886f7a7
commit 146ab72c17
3 changed files with 32 additions and 12 deletions
+8 -1
View File
@@ -3,7 +3,7 @@
# The workspace root delegates to these (see ../Makefile).
.PHONY: init env-check dev-utils dev dev-local dev-lan rebuild-frontend up down update install dev-backend dev-frontend \
generate-client sync-example test test-backend test-checks test-stack test-frontend soak \
generate-client sync-example test test-backend test-checks test-stack test-frontend test-webkit soak \
bench-startup lint lint-backend lint-frontend format-frontend umami build docs docs-serve clean help
COMPOSE_ROOT := $(CURDIR)
@@ -225,6 +225,13 @@ test-frontend: test-stack ## Run frontend tests (Playwright e2e) against the te
-e HOST_RESOLVER_RULES="MAP app.$(TEST_DOMAIN) $$ip, MAP api.$(TEST_DOMAIN) $$ip" \
$(PW_IMAGE) npx playwright test $(PLAYWRIGHT_ARGS)
# WebKit takes *.localhost to loopback through GLib and ignores /etc/hosts, so
# this run shares Traefik's network namespace, where loopback *is* Traefik.
# Only the drag specs, which is where the engines differ.
test-webkit: test-stack ## Run the drag specs in WebKit against the test stack
@$(PW_RUN) --network container:fluksio-app-proxy-1 -e PLAYWRIGHT_WEBKIT=1 \
$(PW_IMAGE) npx playwright test --project=webkit $(PLAYWRIGHT_ARGS)
# Load and chaos against a *running* stack, never part of `make test`: it
# restarts this stack's containers. `SOAK_ARGS="--dry-run"` only looks.
soak: ## Run the soak/chaos harness (SOAK_ARGS="--minutes 30 --scenario redis --force")