test: add full-stack Playwright integration test infrastructure

Sprint 12 Phase 2: Real integration tests with seed DB
- R__seed_test_data.sql (Flyway repeatable, 7 members, strains, batches, docs, board, events)
- TestResetController (profile-gated per-test DB reset)
- docker-compose.test.yml (self-contained, tmpfs Postgres)
- Dockerfile.playwright (v1.60.0, pre-installed deps)
- 13 integration spec files, 70+ test cases (@smoke + @full)
- seed-constants.ts, selectors.ts, api-client.ts test helpers
This commit is contained in:
Patrick Plate
2026-06-18 14:43:16 +02:00
parent 6e25914074
commit 776149e7d3
25 changed files with 2127 additions and 39 deletions
@@ -0,0 +1,18 @@
# IMPORTANT: Keep this version in sync with @playwright/test in package.json
FROM mcr.microsoft.com/playwright:v1.60.0-noble
WORKDIR /app
# Copy package files for dependency installation
COPY package.json pnpm-lock.yaml .npmrc ./
# Install pnpm and project dependencies at build time
RUN corepack enable && corepack prepare pnpm@latest --activate
RUN pnpm install --frozen-lockfile
# Copy playwright config and test infrastructure
COPY playwright.config.ts tsconfig.json ./
COPY e2e/ ./e2e/
# Default command (overridden by docker-compose)
CMD ["npx", "playwright", "test", "e2e/integration/", "--reporter=list"]