71 lines
2.9 KiB
TypeScript
71 lines
2.9 KiB
TypeScript
import { test, expect } from "@playwright/test";
|
|
import { headerTest } from "@/playwright/tests/components/header/headerTest";
|
|
import { navTest } from "@/playwright/tests/components/navigation/navTest";
|
|
import { footerTest } from "@/playwright/tests/components/footer/footerTest";
|
|
|
|
test.use({
|
|
viewport: {
|
|
height: 900,
|
|
width: 1600,
|
|
},
|
|
});
|
|
|
|
test("Dashboard", async ({ page }) => {
|
|
await page.goto("http://localhost:3000/dashboard");
|
|
// Gemeinsame Layout-Checks
|
|
await headerTest(page);
|
|
await navTest(page);
|
|
await footerTest(page);
|
|
// Seitenspezifische Checks
|
|
await expect(page.getByRole("main").locator("svg").first()).toBeVisible();
|
|
await expect(
|
|
page.getByRole("heading", { name: "Letzten 20 Meldungen" })
|
|
).toBeVisible();
|
|
await expect(page.getByRole("cell", { name: "Prio" })).toBeVisible();
|
|
await expect(page.getByRole("cell", { name: "Zeitstempel" })).toBeVisible();
|
|
await expect(page.getByRole("cell", { name: "Quelle" })).toBeVisible();
|
|
await expect(page.getByRole("cell", { name: "Meldung" })).toBeVisible();
|
|
await expect(page.getByRole("cell", { name: "Status" })).toBeVisible();
|
|
await expect(
|
|
page.getByRole("heading", { name: "Versionsinformationen" })
|
|
).toBeVisible();
|
|
await expect(page.getByRole("main").locator("path").nth(2)).toBeVisible();
|
|
await expect(
|
|
page
|
|
.getByRole("listitem")
|
|
.filter({ hasText: "Webversion:" })
|
|
.locator("path")
|
|
).toBeVisible();
|
|
await expect(page.locator("div").filter({ hasText: /^1$/ })).toBeVisible();
|
|
await expect(page.getByText("8", { exact: true })).toBeVisible();
|
|
await expect(page.getByText("9", { exact: true })).toBeVisible();
|
|
await expect(
|
|
page.locator(
|
|
"div:nth-child(2) > .flex.gap-1 > div:nth-child(8) > .border > .bg-littwin-blue.flex-grow > div:nth-child(2)"
|
|
)
|
|
).toBeVisible();
|
|
await expect(page.getByText("17KÜ705FO")).toBeVisible();
|
|
await expect(
|
|
page.locator(
|
|
"div:nth-child(3) > .flex.gap-1 > div:nth-child(8) > .border > .bg-littwin-blue.flex-grow > div:nth-child(2)"
|
|
)
|
|
).toBeVisible();
|
|
await expect(page.getByText("25KÜ705FO")).toBeVisible();
|
|
await expect(page.getByText("32KÜ705FO")).toBeVisible();
|
|
await expect(page.getByRole("img", { name: "IP Address" })).toBeVisible();
|
|
await expect(page.getByText("IP-Adresse")).toBeVisible();
|
|
await expect(page.getByRole("main")).toContainText("10.10.0.243");
|
|
await expect(page.getByRole("main")).toContainText("255.255.255.0");
|
|
await expect(page.getByRole("main")).toContainText("10.10.0.1");
|
|
await page.getByText("Server betriebsbereit").click();
|
|
await page
|
|
.getByRole("row", { name: "2025-09-05 11:52:44" })
|
|
.getByRole("cell")
|
|
.first()
|
|
.click();
|
|
await expect(page.locator("tbody")).toContainText("2025-09-05 11:52:44");
|
|
await expect(page.locator("tbody")).toContainText("CableLine13");
|
|
await expect(page.locator("tbody")).toContainText("Isofehler gehend");
|
|
await expect(page.locator("tbody")).toContainText("0");
|
|
});
|