Files
pleno-vue/tests/e2e/edge-gateways.visual.spec.js
T

42 lines
1.8 KiB
JavaScript

import { expect, test } from "@playwright/test";
import { mockApi, primeMockSession } from "./support/network.js";
async function primeSuperuserSession(page) {
await primeMockSession(page, { token: "superuser-edge-gateway-visual-token" });
}
test.describe("Edge gateway visuals", () => {
test.beforeEach(async ({ page }) => {
await mockApi(page, {
authenticated: true,
permissions: ["superuser", "user"],
});
await primeSuperuserSession(page);
});
test("desktop roster and module overview render together", async ({ page }, testInfo) => {
test.skip(!testInfo.project.name.includes("desktop"), "Desktop only");
await page.goto("/superuser/configuration/edgegateway/701/overview");
await expect(page.getByTestId("edge-gateway-workspace")).toBeVisible();
await expect(page.getByTestId("gateway-fleet-roster")).toBeVisible();
await expect(page.getByTestId("gateway-summary-strip")).toBeVisible();
await expect(page.getByTestId("gateway-detail-header")).toContainText("CPH Edge 01");
await expect(page.getByTestId("gateway-diagnostics-list")).toBeVisible();
});
test("mobile module landing exposes onboarding and fleet controls", async ({ page }, testInfo) => {
test.skip(!testInfo.project.name.includes("mobile"), "Mobile only");
await page.goto("/superuser/configuration/edgegateway");
await expect(page.getByTestId("edge-gateway-module-config")).toBeVisible();
await expect(page.getByTestId("hardware-fleet-landing")).toBeVisible();
await expect(page.getByTestId("edge-gateway-workspace")).toBeVisible();
await expect(page.getByTestId("gateway-fleet-roster")).toBeVisible();
await expect(page.getByTestId("gateway-fleet-landing")).toBeVisible();
await expect(page.getByTestId("gateway-onboarding")).toBeVisible();
});
});