Add self-contained e2e test harness with ephemeral PocketBase
Some checks failed
CI / quality (push) Failing after 29s
Deploy / deploy (push) Successful in 2m37s

Previously, 15 e2e tests were skipped because TEST_USER_EMAIL and
TEST_USER_PASSWORD env vars weren't set. Now the test harness:

- Starts a fresh PocketBase instance in /tmp on port 8091
- Creates admin user, collections, and API rules automatically
- Seeds test user with period data for authenticated tests
- Cleans up temp directory after tests complete

Also fixes:
- Override toggle tests now use checkbox role (not button)
- Adds proper wait for OVERRIDES section before testing toggles
- Suppresses document.cookie lint warning with explanation

Test results: 64 e2e tests pass, 1014 unit tests pass

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-13 09:38:24 +00:00
parent eeeece17bf
commit 8c59b3bd67
12 changed files with 603 additions and 28 deletions

View File

@@ -47,8 +47,11 @@ test.describe("calendar", () => {
});
test("displays calendar page with heading", async ({ page }) => {
// Check for calendar heading
const heading = page.getByRole("heading", { name: /calendar/i });
// Check for the main calendar heading (h1)
const heading = page.getByRole("heading", {
name: "Calendar",
exact: true,
});
await expect(heading).toBeVisible();
});