import { expect, test } from "bun:test"; import { renderToStaticMarkup } from "react-dom/server"; import type { LayoutMarketplaceEntry } from "../../layout-marketplace/payload"; import { LayoutShareView } from "./layout-view"; const entry: LayoutMarketplaceEntry = { id: "0123456789abcdef0123456789abcdef", name: "Social Desk", schemaVersion: 2, sourceConfigVersion: 21, layout: { dockRoot: { kind: "split", axis: "horizontal", ratio: 0.6, first: { kind: "pane", instanceId: "p1" }, second: { kind: "pane", instanceId: "p2" }, }, instances: [ { instanceId: "p1", paneId: "twitter-feed", params: { query: "$NVDA " }, }, { instanceId: "p2", paneId: "chart-composer", binding: { kind: "fixed", symbol: "NVDA" }, }, ], floating: [], detached: [], }, paneState: {}, author: { username: "analyst", displayName: "Analyst" }, publishedAt: "2026-08-27T00:00:00.000Z", }; test("shared layout renders a safe workspace preview and live-copy CTA", () => { const html = renderToStaticMarkup( , ); expect(html).toContain("Shared via Gloomberb"); expect(html).toContain("X Feed"); expect(html).toContain("Chart"); expect(html).toContain("$NVDA"); expect(html).toContain("Use this layout"); expect(html).toContain("independent, editable copy"); expect(html).toContain('href="https://term.gloom.sh/?layout=0123456789abcdef0123456789abcdef"'); expect(html).not.toContain("