import { renderToStaticMarkup } from "react-dom/server";
import { describe, expect, it } from "vite-plus/test";
import { FlaskConicalIcon } from "lucide-react";
import { Button } from "./button";
describe("button geometry tokens", () => {
it("uses the shared control radius and an opaque semantic icon color", () => {
const html = renderToStaticMarkup(
,
);
expect(html).toContain("rounded-[var(--control-radius)]");
expect(html).toContain("[--control-icon-color:var(--muted-foreground)]");
expect(html).toContain("text-[var(--control-icon-color)]");
expect(html).not.toContain("opacity-80");
});
it("keeps compact icon buttons square at every breakpoint", () => {
const html = renderToStaticMarkup(
,
);
expect(html).toContain("size-7");
expect(html).toContain("sm:size-6");
});
it("owns shared compact and micro control geometry", () => {
const compact = renderToStaticMarkup();
const micro = renderToStaticMarkup(
,
);
expect(compact).toContain("h-7");
expect(compact).toContain("rounded-md");
expect(micro).toContain("size-5");
expect(micro).toContain("rounded-sm");
expect(micro).toContain("text-muted-foreground");
});
});