import { expect, test } from "@playwright/test" test.describe("i18n smoke", () => { test("web renders localized page headings on key routes", async ({ page }, testInfo) => { test.skip(testInfo.project.name !== "web-chromium") await page.goto("/") await page.locator("select").first().selectOption("de") await expect(page.getByRole("heading", { name: /dein next\.js cms frontend/i })).toBeVisible() await page.getByRole("link", { name: /über uns/i }).click() await expect(page.getByRole("heading", { name: /über dieses projekt/i })).toBeVisible() await page.locator("select").first().selectOption("es") await expect(page.getByRole("heading", { name: /sobre este proyecto/i })).toBeVisible() await page.getByRole("link", { name: /contacto/i }).click() await expect(page.getByRole("heading", { name: /^contacto$/i })).toBeVisible() }) test("admin login renders localized heading and labels", async ({ page }, testInfo) => { test.skip(testInfo.project.name !== "admin-chromium") await page.goto("/login") await expect(page.getByRole("heading", { name: /sign in to cms admin/i })).toBeVisible() await page.locator("select").first().selectOption("fr") await expect(page.getByRole("heading", { name: /se connecter à cms admin/i })).toBeVisible() await expect(page.getByLabel(/e-mail ou nom d’utilisateur/i)).toBeVisible() await page.locator("select").first().selectOption("es") await expect(page.getByRole("heading", { name: /iniciar sesión en cms admin/i })).toBeVisible() await expect(page.getByLabel(/correo o nombre de usuario/i)).toBeVisible() }) })