62 lines
2.6 KiB
JavaScript
62 lines
2.6 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/selfserve/edge-agents/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 Edge Agents landing exposes onboarding and fleet controls", async ({ page }, testInfo) => {
|
|
test.skip(!testInfo.project.name.includes("mobile"), "Mobile only");
|
|
|
|
await page.goto("/superuser/selfserve/edge-agents");
|
|
|
|
await expect(page.getByTestId("edge-agents-page")).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();
|
|
});
|
|
|
|
test("desktop hardware landing and navigation remain visually distinct", async ({ page }, testInfo) => {
|
|
test.skip(testInfo.project.name !== "chromium-desktop", "Chromium desktop snapshot");
|
|
test.skip(
|
|
process.platform !== "win32",
|
|
"Windows-authored full-height navigation snapshots are not stable on Linux."
|
|
);
|
|
|
|
await page.goto("/superuser/selfserve/edge-agents");
|
|
|
|
await expect(page.getByTestId("hardware-fleet-landing")).toBeVisible();
|
|
await expect(page.getByTestId("desktop-buefy-navigation")).toBeVisible();
|
|
|
|
await expect(page.getByTestId("hardware-fleet-landing")).toHaveScreenshot(
|
|
"edge-gateways-hardware-fleet-landing-desktop-win32.png"
|
|
);
|
|
await expect(page.getByTestId("desktop-buefy-navigation")).toHaveScreenshot(
|
|
"edge-agents-navigation-desktop-win32.png"
|
|
);
|
|
});
|
|
});
|