30 lines
1.2 KiB
TypeScript
30 lines
1.2 KiB
TypeScript
import { expect, test } from "@playwright/test"
|
|
|
|
test.describe("i18n integration", () => {
|
|
test("web language switcher updates and persists locale", async ({ page }, testInfo) => {
|
|
test.skip(testInfo.project.name !== "web-chromium")
|
|
|
|
await page.goto("/")
|
|
await expect(page.getByRole("heading", { name: /your next\.js cms frontend/i })).toBeVisible()
|
|
|
|
await page.locator("select").first().selectOption("de")
|
|
await expect(page.getByRole("heading", { name: /dein next\.js cms frontend/i })).toBeVisible()
|
|
|
|
await page.reload()
|
|
await expect(page.getByRole("heading", { name: /dein next\.js cms frontend/i })).toBeVisible()
|
|
})
|
|
|
|
test("admin language switcher updates and persists locale", 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("de")
|
|
await expect(page.getByRole("heading", { name: /bei cms admin anmelden/i })).toBeVisible()
|
|
|
|
await page.reload()
|
|
await expect(page.getByRole("heading", { name: /bei cms admin anmelden/i })).toBeVisible()
|
|
})
|
|
})
|