import { describe, expect, it } from "vitest"; import { readFileSync } from "node:fs"; import { resolve } from "node:path"; const readSource = () => readFileSync(resolve(__dirname, "./Layout.vue"), "utf8"); describe("layout system monitoring navigation", () => { it("shows system monitoring as an admin-only peer module outside permission management", () => { const source = readSource(); const permissionMenuStart = source.indexOf(''); const permissionMenuEnd = source.indexOf("", permissionMenuStart); const permissionMenu = source.slice(permissionMenuStart, permissionMenuEnd); expect(source).toContain('v-if="isAdmin" index="/admin/system-monitoring"'); expect(source).toContain("{{ TEXT.menu.systemMonitoring }}"); expect(permissionMenu).not.toContain("/admin/system-monitoring"); expect(permissionMenu).not.toContain("/admin/permission-monitoring"); expect(permissionMenu).not.toContain("/admin/permissions/monitoring"); expect(source).not.toContain('index="/admin/permissions/monitoring"'); expect(source).toContain('return "/admin/system-monitoring";'); }); });