Skip to article
Documentation

src/features/reviews/review-key.test.ts

Linked repository file from this build.

import { expect, test } from "bun:test";
import { businessKey, fiscalYear, isReviewKey, newReviewKey, reviewKey } from "./review-key";

test("UUID identity contains no business-field dependency", () => {
  const id = newReviewKey();
  expect(isReviewKey(id)).toBe(true);
  expect(id[14]).toBe("7");
  const review = { id, program: "SNAP", reviewNumber: "60001", sampleMonth: "2026-09" };
  const changed = { ...review, sampleMonth: "2027-10", reviewNumber: "99999" };
  expect(reviewKey(changed)).toBe(id);
  expect(fiscalYear(review.sampleMonth)).toBe(2026);
  expect(fiscalYear("2026-10")).toBe(2027);
  expect(businessKey(review)).not.toBe(businessKey({ ...review, sampleMonth: "2026-10" }));
  expect(businessKey(review)).not.toBe(businessKey({ ...review, program: "OTHER" }));
  expect(isReviewKey("60001")).toBe(false);
  expect(isReviewKey("2026:60001")).toBe(false);
});