import { render, screen } from "@testing-library/react";
import { describe, expect, it } from "vitest";
import { Badge } from "./badge";
describe("Badge", () => {
it("renders with root and label slots plus data hooks", () => {
render(
Stable
);
const badge = screen.getByText("Stable").closest('[data-slot="root"]');
expect(badge).toBeInTheDocument();
expect(badge).toHaveAttribute("data-size", "sm");
expect(badge).toHaveAttribute("data-tone", "success");
expect(badge).toHaveAttribute("data-variant", "solid");
expect(screen.getByText("Stable")).toHaveAttribute("data-slot", "label");
});
it("supports asChild rendering", () => {
render(
Release
);
const link = screen.getByRole("link", { name: "Release" });
expect(link).toHaveAttribute("data-slot", "root");
expect(link).toHaveAttribute("data-tone", "primary");
});
});