forked from baron/baron-sso
36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
TypeScript
import { render, screen } from "@testing-library/react";
|
|
import { describe, expect, it } from "vitest";
|
|
import {
|
|
Card,
|
|
CardContent,
|
|
CardDescription,
|
|
CardFooter,
|
|
CardHeader,
|
|
CardTitle,
|
|
} from "./card";
|
|
|
|
describe("Card Component", () => {
|
|
it("renders card structure correctly", () => {
|
|
render(
|
|
<Card>
|
|
<CardHeader>
|
|
<CardTitle>Card Title</CardTitle>
|
|
<CardDescription>Card Description</CardDescription>
|
|
</CardHeader>
|
|
<CardContent>Card Content</CardContent>
|
|
<CardFooter>Card Footer</CardFooter>
|
|
</Card>,
|
|
);
|
|
|
|
expect(screen.getByText("Card Title")).toBeInTheDocument();
|
|
expect(screen.getByText("Card Description")).toBeInTheDocument();
|
|
expect(screen.getByText("Card Content")).toBeInTheDocument();
|
|
expect(screen.getByText("Card Footer")).toBeInTheDocument();
|
|
});
|
|
|
|
it("applies custom className to Card", () => {
|
|
const { container } = render(<Card className="custom-card" />);
|
|
expect(container.firstChild).toHaveClass("custom-card");
|
|
});
|
|
});
|