fiddy/apps/web/e2e/groups.spec.ts

29 lines
1.2 KiB
TypeScript

import { test, expect } from "@playwright/test";
import { login } from "./test-helpers";
test("group dropdown lists seeded groups", async ({ page }) => {
await login(page, "admin1@fiddy.dev", "FiddyDev123!");
await expect(page).toHaveURL("/");
const dropdown = page.getByRole("button", { name: /▼$/ });
await dropdown.click();
await expect(page.getByRole("button", { name: "Alpha Household GROUP_ADMIN" })).toBeVisible();
await expect(page.getByRole("button", { name: "Beta Office GROUP_OWNER" })).toBeVisible();
await expect(page.getByRole("button", { name: "Gamma Club MEMBER" })).toBeVisible();
});
test("group settings show join requests and policy", async ({ page }) => {
await login(page, "admin1@fiddy.dev", "FiddyDev123!");
await expect(page).toHaveURL("/");
await page.getByRole("button", { name: "Group settings" }).click();
await expect(page).toHaveURL(/\/groups\/settings/);
await expect(page.getByText("Join requests")).toBeVisible();
await expect(page.getByText("requester1@fiddy.dev")).toBeVisible();
const approvalButton = page.getByRole("button", { name: "Manual" });
await expect(approvalButton).toHaveAttribute("aria-pressed", "true");
});