import { describe, expect, it } from "vitest"; import { isSensitiveUserFactCategory, normalizeUserFactValue } from "./user-profile.js"; describe("user facts", () => { it("treats the same statement with different case, spacing or end punctuation as one", () => { expect(normalizeUserFactValue(" Works as a Nurse. ")).toBe("works as a nurse"); expect(normalizeUserFactValue('"Works as a nurse!"')).toBe("works as a nurse"); expect(normalizeUserFactValue("Works as a nurse")).toBe("works as a nurse"); }); it("keeps symbols that change the meaning", () => { expect(normalizeUserFactValue("Writes C++")).not.toBe(normalizeUserFactValue("Writes C")); }); it("marks only health and values as sensitive", () => { expect(isSensitiveUserFactCategory("health")).toBe(true); expect(isSensitiveUserFactCategory("values")).toBe(true); expect(isSensitiveUserFactCategory("work")).toBe(false); expect(isSensitiveUserFactCategory("people")).toBe(false); }); });