Files
buzz-sheet/lib/catalog/travelers.test.ts
T
gunshiz 273baa55d8
CI / Verify (push) Successful in 51s
CI / Build immutable images and deploy (push) Successful in 1m36s
feat : big update
2026-08-30 10:52:37 +00:00

28 lines
1.2 KiB
TypeScript

import { createHash } from "node:crypto";
import { readFile } from "node:fs/promises";
import { join } from "node:path";
import { describe, expect, it } from "vitest";
import { customTravelers, isUpstreamTraveler } from "@/lib/catalog/travelers";
describe("custom Traveler catalog", () => {
it("blacklists every upstream Traveler spelling variant", () => {
expect(isUpstreamTraveler("Traveler")).toBe(true);
expect(isUpstreamTraveler(" traveler ")).toBe(true);
expect(isUpstreamTraveler("TRAVELER")).toBe(true);
expect(isUpstreamTraveler("Traveler Pyro")).toBe(false);
});
it("defines seven distinct element records with distinct local images", async () => {
expect(customTravelers).toHaveLength(7);
expect(new Set(customTravelers.map((traveler) => traveler.key)).size).toBe(7);
expect(new Set(customTravelers.map((traveler) => traveler.element)).size).toBe(7);
const hashes = await Promise.all(customTravelers.map(async (traveler) => {
const body = await readFile(join(process.cwd(), "lib/catalog/assets", traveler.asset));
return createHash("sha256").update(body).digest("hex");
}));
expect(new Set(hashes).size).toBe(7);
});
});