import { renderToStaticMarkup } from "react-dom/server"; import { describe, expect, it } from "vitest"; import { SiteIslandHost, serializeProps } from "@/sites/island-hosts/island-host"; describe("SiteIslandHost", () => { it("emits an island host with template props and root", () => { const html = renderToStaticMarkup( body , ); expect(html).toContain('data-island="sites-image"'); expect(html).toContain("body"); }); }); describe("serializeProps", () => { it("escapes <, >, &, and line/paragraph separators", () => { const text = serializeProps({ s: '&\u2028\u2029' }); expect(text).not.toContain(""); expect(text).not.toContain(" { expect(serializeProps({ s: "ok" })).toBe('{"s":"ok"}'); }); });