plano/demos/use_cases/vercel-ai-sdk/tests/e2e/auth.test.ts
2026-01-08 15:22:08 -08:00

31 lines
1.3 KiB
TypeScript

import { expect, test } from "@playwright/test";
test.describe("Authentication Pages", () => {
test("login page renders correctly", async ({ page }) => {
await page.goto("/login");
await expect(page.getByPlaceholder("user@acme.com")).toBeVisible();
await expect(page.getByLabel("Password")).toBeVisible();
await expect(page.getByRole("button", { name: "Sign In" })).toBeVisible();
await expect(page.getByText("Don't have an account?")).toBeVisible();
});
test("register page renders correctly", async ({ page }) => {
await page.goto("/register");
await expect(page.getByPlaceholder("user@acme.com")).toBeVisible();
await expect(page.getByLabel("Password")).toBeVisible();
await expect(page.getByRole("button", { name: "Sign Up" })).toBeVisible();
await expect(page.getByText("Already have an account?")).toBeVisible();
});
test("can navigate from login to register", async ({ page }) => {
await page.goto("/login");
await page.getByRole("link", { name: "Sign up" }).click();
await expect(page).toHaveURL("/register");
});
test("can navigate from register to login", async ({ page }) => {
await page.goto("/register");
await page.getByRole("link", { name: "Sign in" }).click();
await expect(page).toHaveURL("/login");
});
});