import { expect, test } from "bun:test";
import { parseGscSites } from "./parse";

test("parseGscSites keeps verified properties and drops unverified", () => {
  const raw = {
    siteEntry: [
      { siteUrl: "sc-domain:example.com", permissionLevel: "siteOwner" },
      { siteUrl: "https://blog.example.com/", permissionLevel: "siteFullUser" },
      {
        siteUrl: "https://nope.example.com/",
        permissionLevel: "siteUnverifiedUser",
      },
    ],
  };
  expect(parseGscSites(raw)).toEqual([
    { siteUrl: "sc-domain:example.com", permissionLevel: "siteOwner" },
    { siteUrl: "https://blog.example.com/", permissionLevel: "siteFullUser" },
  ]);
});

test("parseGscSites tolerates missing/empty siteEntry", () => {
  expect(parseGscSites({})).toEqual([]);
  expect(parseGscSites({ siteEntry: [] })).toEqual([]);
});
