mirror of
https://github.com/Tria-plc/emaui.git
synced 2026-08-29 15:18:12 +00:00
37 lines
1.4 KiB
TypeScript
37 lines
1.4 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { resolveFamilyKind } from "@ema-platform/api";
|
|
import { hasUnclaimedPool, savedViewsForFamily } from "./queue-views";
|
|
|
|
describe("resolveFamilyKind", () => {
|
|
it("treats person-centric seafarer applications as document queues", () => {
|
|
expect(resolveFamilyKind("SEAFARER_REGISTRATION")).toBe("DOCUMENT");
|
|
expect(resolveFamilyKind("SEAMAN_BOOK")).toBe("DOCUMENT");
|
|
expect(resolveFamilyKind("BTC_BASIC_TRAINING")).toBe("CERTIFICATE");
|
|
});
|
|
});
|
|
|
|
describe("hasUnclaimedPool", () => {
|
|
it("keeps the unassigned pool for logistics licences", () => {
|
|
expect(hasUnclaimedPool("FREIGHT_FORWARDER")).toBe(true);
|
|
});
|
|
|
|
it("keeps it for vessel registration, a DOCUMENT queue that is still claimed", () => {
|
|
expect(resolveFamilyKind("VESSEL_REGISTRATION")).toBe("DOCUMENT");
|
|
expect(hasUnclaimedPool("VESSEL_REGISTRATION")).toBe(true);
|
|
expect(savedViewsForFamily(hasUnclaimedPool("VESSEL_REGISTRATION")).map((v) => v.id)).toContain(
|
|
"unassigned",
|
|
);
|
|
});
|
|
|
|
it("drops it for the person-centric services", () => {
|
|
expect(hasUnclaimedPool("SEAMAN_BOOK")).toBe(false);
|
|
expect(savedViewsForFamily(hasUnclaimedPool("SEAMAN_BOOK")).map((v) => v.id)).not.toContain(
|
|
"unassigned",
|
|
);
|
|
});
|
|
|
|
it("keeps it for the mixed All/Mine grids, where no type is pinned", () => {
|
|
expect(hasUnclaimedPool(undefined)).toBe(true);
|
|
});
|
|
});
|