feat: add badge card avatar alert and progress

This commit is contained in:
2026-03-19 17:24:22 +08:00
parent 063179933c
commit cb15b46b0c
23 changed files with 1342 additions and 0 deletions
+35
View File
@@ -0,0 +1,35 @@
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(
<Badge size="sm" tone="success" variant="solid">
Stable
</Badge>
);
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(
<Badge asChild tone="primary">
<a href="/release">Release</a>
</Badge>
);
const link = screen.getByRole("link", { name: "Release" });
expect(link).toHaveAttribute("data-slot", "root");
expect(link).toHaveAttribute("data-tone", "primary");
});
});