48 lines
1.0 KiB
TypeScript
48 lines
1.0 KiB
TypeScript
import { render, screen } from "@testing-library/svelte";
|
|
import { describe, expect, it } from "vitest";
|
|
import Badge from "$components/ui/Badge.svelte";
|
|
|
|
describe("Badge.svelte", () => {
|
|
it("should render with string text", () => {
|
|
render(Badge, {
|
|
props: {
|
|
text: "Test Badge",
|
|
},
|
|
});
|
|
|
|
expect(screen.getByText("Test Badge")).toBeInTheDocument();
|
|
});
|
|
|
|
it("should render with number text", () => {
|
|
render(Badge, {
|
|
props: {
|
|
text: 42,
|
|
},
|
|
});
|
|
|
|
expect(screen.getByText("42")).toBeInTheDocument();
|
|
});
|
|
|
|
it("should render with empty string", () => {
|
|
const { container } = render(Badge, {
|
|
props: {
|
|
text: "",
|
|
},
|
|
});
|
|
|
|
const badge = container.querySelector(".badge");
|
|
expect(badge).toBeInTheDocument();
|
|
expect(badge).toHaveTextContent("");
|
|
});
|
|
|
|
it("should render with zero", () => {
|
|
render(Badge, {
|
|
props: {
|
|
text: 0,
|
|
},
|
|
});
|
|
|
|
expect(screen.getByText("0")).toBeInTheDocument();
|
|
});
|
|
});
|