1import { describe, expect, it } from "vitest";2import { extractDomain } from "./domain";345678910describe("extractDomain — private-suffix tenants stay distinct", () => {11 it("does not collapse two tenants of the same private suffix", () => {12 expect(extractDomain("https://octocat.github.io")).toBe("octocat.github.io");13 expect(extractDomain("https://evil.github.io")).toBe("evil.github.io");14 expect(extractDomain("https://octocat.github.io")).not.toBe(extractDomain("https://evil.github.io"));15 });1617 it("keeps each tenant's own sub-domains together", () => {18 expect(extractDomain("https://app.octocat.github.io")).toBe("octocat.github.io");19 expect(extractDomain("https://app.octocat.github.io")).toBe(extractDomain("https://octocat.github.io"));20 });2122 it("still unifies sub-domains of an ordinary registrable domain", () => {23 expect(extractDomain("https://sub.example.com")).toBe("example.com");24 expect(extractDomain("https://example.com")).toBe("example.com");25 expect(extractDomain("https://a.b.example.co.uk")).toBe("example.co.uk");26 });2728 it("still refuses a confusable host", () => {29 expect(extractDomain("https://github.com.evil.test")).not.toBe("github.com");30 });31});