QA: auth e2e regression pack and fixture users #20
Labels
No Label
area:auth
area:docs
area:export
area:ops
area:storage
area:supply-chain
auth
backend
blocked
collab
deployment
docs
effort:L
effort:M
effort:S
frontend
plugins
qa
vs-nfd
vs-nfd:blocker
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: stwaidele/dorfteich#20
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
M1 closes with a stable, reusable e2e foundation: later milestones build their tests on seeded users instead of re-registering constantly.
Scope
Extend the seed script with fixture users (site admin, regular verified user, pending user) used by Playwright via storage-state login helpers. Consolidate M1 e2e specs into a
auth.spec.tsregression pack wired into the pipeline gate (#8). Document the fixture matrix inapps/web/e2e/README.md.Acceptance criteria
pnpm e2eruns green locally against the dev stack and in CI against TestTechnical notes
Dependencies
Depends on #8, #16, #19.
Size: ~1 day
Conventions: English code/comments, clear human-readable code, no hard-coded UI strings (ADR 0012, add
deanden), permission checks only via the shared guard (docs/architecture/permissions.md). Read the referenced ADRs before starting.Verified. Fixture matrix seeded idempotently (fixture-admin/-user/-pending, documented in apps/web/e2e/README.md); the six-test Playwright pack runs green in CI (run for
d05c367) against the production build served by a dependency-free static+proxy server, with postgres and Mailpit service containers. Full journey covered: signup → verification mail → verify → first login, plus wrong-password error, guarded-route redirect with ?next, menu logout, site-admin gating, and profile rename reflected in the top bar.Bugs the pack caught before they could ship: empty-201 handling in the web api client, StrictMode double-fire of the verification call, login-redirect race in the anonymous guard, dev-server instability under CI memory pressure (now testing the production build instead — more honest anyway).