import { test, expect } from "@playwright/test"; test.describe("Kue705FO Integration Tests", () => { test.beforeEach(async ({ page }) => { // Besuche die Seite, auf der die Komponente gerendert wird await page.goto("/kabelueberwachung"); }); test("should render the component with default props", async ({ page }) => { // Überprüfe, ob der Modulname und die Slotnummer angezeigt werden await expect(page.locator("text=KÜ705-FO")).toBeVisible(); await expect(page.locator("text=Modul 1")).toBeVisible(); // Beispiel für den Modulnamen }); test("should update display when TDR button is clicked", async ({ page }) => { // Klicke auf den TDR-Button await page.locator("text=TDR").click(); // Überprüfe, ob der Text aktualisiert wurde await expect(page.locator("text=Entfernung [Km]")).toBeVisible(); }); test("should switch back to Schleife display", async ({ page }) => { // Klicke auf TDR, dann zurück zu Schleife await page.locator("text=TDR").click(); await page.locator("text=Schleife").click(); // Überprüfe, ob der Text aktualisiert wurde await expect(page.locator("text=Schleifenwiderstand [kOhm]")).toBeVisible(); }); test("should disable TDR button when tdrActive is 0", async ({ page }) => { // Dies erfordert eine benutzerdefinierte Backend-Konfiguration oder Redux-Manipulation await expect(page.locator("text=TDR")).toBeDisabled(); }); test("should open and close the settings modal", async ({ page }) => { // Öffne das Modal await page.locator("text=⚙").click(); await expect(page.locator("text=KUE Einstellung - Slot 1")).toBeVisible(); // Schließe das Modal await page.locator("text=×").click(); await expect( page.locator("text=KUE Einstellung - Slot 1") ).not.toBeVisible(); }); });