import { describe, expect, it } from "vitest"; import { formatUid, normalizeUid, tryNormalizeUid } from "@/lib/rfid/uid"; describe("normalizeUid", () => { it("strips separators and uppercases", () => { expect(normalizeUid("04:a1:b2:c3")).toBe("04A1B2C3"); expect(normalizeUid("04 a1 b2 c3")).toBe("04A1B2C3"); expect(normalizeUid("04a1b2c3")).toBe("04A1B2C3"); }); it("rejects odd length", () => { expect(() => normalizeUid("04A")).toThrow(); }); it("formats with colons", () => { expect(formatUid("04a1b2c3")).toBe("04:A1:B2:C3"); }); it("tryNormalizeUid returns null on bad input", () => { expect(tryNormalizeUid("xyz")).toBeNull(); }); });