36 lines
1.9 KiB
TypeScript
36 lines
1.9 KiB
TypeScript
import fs from "node:fs";
|
|
import path from "node:path";
|
|
import { expect, test } from "@playwright/test";
|
|
|
|
const read = (relativePath: string) => fs.readFileSync(path.join(process.cwd(), relativePath), "utf8");
|
|
|
|
test.describe("Failover configuration wiring", () => {
|
|
test("wires the superuser failover config client, route, navigation, and controls", async ({}, testInfo) => {
|
|
test.skip(testInfo.project.name !== "chromium-desktop", "Source wiring check only needs to run once.");
|
|
|
|
const client = read("src/components/session/token/superUser/modules/failover/Config.vue");
|
|
const moduleObject = read("src/components/session/token/superUser/modules/failover/Failover.vue");
|
|
const superUserObject = read("src/components/session/token/superUserObject.vue");
|
|
const route = read("src/router.js");
|
|
const tabNavigation = read(
|
|
"src/views/dashboards/superUserDashboard/configuration/SuperUserDashboardConfigurationNavigation.vue"
|
|
);
|
|
const menuNavigation = read("src/components/models/navigation/items/NavigationMenuItemsSuperUser.vue");
|
|
|
|
expect(client).toContain('"/failover/config"');
|
|
expect(client).toContain('"database_enabled"');
|
|
expect(client).toContain('"redis_enabled"');
|
|
expect(client).toContain('"minio_enabled"');
|
|
expect(client).toContain('"max_status_age_seconds"');
|
|
expect(moduleObject).toContain('title: "Failover"');
|
|
expect(superUserObject).toContain("modules/failover/Failover.vue");
|
|
expect(superUserObject).toContain("get failover() { return Failover; }");
|
|
expect(route).toContain("name: 'configurationFailover'");
|
|
expect(route).toContain("path: '/superuser/configuration/failover'");
|
|
expect(route).toContain("redirect: { path: '/superuser/configuration/releases/data-services'");
|
|
expect(route).toContain("query: { panel: 'failover' }");
|
|
expect(tabNavigation).toContain('name: "Failover"');
|
|
expect(menuNavigation).toContain("modules.failover.meta.labels.multiple");
|
|
});
|
|
});
|