import { expect, test } from "@playwright/test"; import { signInAs } from "./fixtures/auth"; test("admin signs in and reaches each admin section", async ({ page }) => { await signInAs(page, "admin", "/admin"); await page.goto("/admin"); await expect(page).toHaveURL(/\/admin\/bookings$/); for (const [label, urlRe] of [ ["bookings", /\/admin\/bookings/], ["services", /\/admin\/services/], ["rooms", /\/admin\/rooms/], ["therapists", /\/admin\/therapists/], ] as const) { await page.getByRole("link", { name: new RegExp(`^${label}$`, "i") }).click(); await expect(page).toHaveURL(urlRe); await expect(page.getByRole("heading", { level: 1 })).toBeVisible(); } }); test("non-admin (therapist) hitting /admin sees the deny screen", async ({ page }) => { await signInAs(page, "therapist", "/admin"); await page.goto("/admin"); await expect(page.getByRole("heading", { name: /not authorized/i })).toBeVisible(); });