Files
pleno-vue/tests/unit/header-shortcuts.spec.js
Jeppe BandJeppe Bundgaard db1c0e25c0 Move limited backoffice shortcut into header (#140)
* Move limited backoffice shortcut into header

* Use shared Playwright port locks in CI

---------

Co-authored-by: Jeppe Bundgaard <jb@truckwash.dk>
2026-07-06 16:47:33 +02:00

36 lines
1.6 KiB
JavaScript

import { describe, expect, it } from "vitest";
import {
getAdminDepartmentIdFromRoute,
getAdminDepartmentRoute,
getLimitedBackofficeDepartmentIdFromRoute,
getLimitedBackofficeDepartmentRoute,
} from "@/components/viewport/page/headers/headerShortcuts.js";
describe("header shortcuts", () => {
it("detects department-scoped admin routes", () => {
expect(getAdminDepartmentIdFromRoute({ path: "/admin/12", params: {} })).toBe(12);
expect(getAdminDepartmentIdFromRoute({ path: "/admin/12/modules/pos", params: {} })).toBe(12);
expect(getAdminDepartmentIdFromRoute({ path: "/admin", params: { departmentId: 12 } })).toBe(12);
expect(getAdminDepartmentIdFromRoute({ path: "/admin", params: {} })).toBeNull();
expect(
getAdminDepartmentIdFromRoute({ path: "/backoffice/departments/12/prices", params: { departmentId: 12 } })
).toBeNull();
});
it("detects department-scoped limited backoffice routes", () => {
expect(getLimitedBackofficeDepartmentIdFromRoute({ path: "/backoffice/departments/12/prices", params: {} })).toBe(
12
);
expect(getLimitedBackofficeDepartmentIdFromRoute({ path: "/backoffice/departments/12/other", params: {} })).toBe(
12
);
expect(getLimitedBackofficeDepartmentIdFromRoute({ path: "/backoffice", params: { departmentId: 12 } })).toBeNull();
expect(getLimitedBackofficeDepartmentIdFromRoute({ path: "/admin/12", params: { departmentId: 12 } })).toBeNull();
});
it("builds scoped shortcut targets", () => {
expect(getLimitedBackofficeDepartmentRoute(12)).toBe("/backoffice/departments/12/prices");
expect(getAdminDepartmentRoute(12)).toBe("/admin/12");
});
});