import assert from "node:assert/strict";
import test from "node:test";
import { formatImpairments, formatProfileValue } from "@/lib/mortgage/profileDisplay";

test("formatImpairments does not print [object Object]", () => {
  const text = formatImpairments([
    {
      module: "diabetes",
      attributes: { disclosed: true, type: "Type 2", diagnosed_year: "2019", medication: "Metformin" },
    },
  ]);
  assert.equal(text.includes("[object Object]"), false);
  assert.match(text, /diabetes/);
  assert.match(text, /Type 2/);
  assert.match(text, /2019/);
});

test("formatProfileValue joins impairment arrays readably", () => {
  const text = formatProfileValue([
    { module: "diabetes", attributes: { type: "Type 2" } },
    { module: "heart", attributes: { disclosed: true } },
  ]);
  assert.equal(text.includes("[object Object]"), false);
  assert.match(text, /diabetes \(type=Type 2\)/);
  assert.match(text, /heart/);
});
