Files
portfolio/e2e/i18n.spec.ts
Cursor Agent b219cc51a0 test(e2e): wait for locale navigation to complete
Locale switch can take longer in dev; wait explicitly for /de URL after click.

Co-authored-by: dennis <dennis@konkol.net>
2026-01-14 16:25:48 +00:00

26 lines
854 B
TypeScript

import { test, expect } from "@playwright/test";
test.describe("i18n routing", () => {
test("language switcher navigates between locales", async ({ page }) => {
await page.goto("/en", { waitUntil: "domcontentloaded" });
// Buttons have aria-labels; click the DE switcher.
const deButton = page.getByRole("button", { name: "Sprache auf Deutsch umstellen" });
if (await deButton.count()) {
// Verify an EN label is present before switching (nav.home)
await expect(page.getByRole("link", { name: "Home" })).toBeVisible();
await Promise.all([
page.waitForURL(/\/de(\/|$)/, { timeout: 30000 }),
deButton.click(),
]);
// Verify the nav label updates after switching
await expect(page.getByRole("link", { name: "Start" })).toBeVisible();
} else {
test.skip();
}
});
});