forked from baron/baron-sso
- FE: Vitest 환경 구축 및 공통 UI 컴포넌트(Badge, Button) 테스트 추가 - FE: Playwright E2E 테스트(Auth, Tenant CRUD 및 Validation) 시나리오 보강 - BE: Testcontainers 기반 Repository 통합 테스트(PostgreSQL) 추가 - BE: TenantRepository 계층 구조(Hierarchy), DB 제약조건(Unique) 테스트 - BE: UserRepository 통합 테스트(CRUD, Delete) 추가 - BE: PasswordPolicy 유틸리티 테스트 보강 - BE: TenantService 엣지 케이스(중복 슬러그, 권한 등) 검증 로직 추가 - Fix: 하위 테넌트 생성 시 ParentID 누락 문제 해결
27 lines
906 B
TypeScript
27 lines
906 B
TypeScript
import { render, screen } from "@testing-library/react";
|
|
import { describe, expect, it } from "vitest";
|
|
import { Badge } from "./badge";
|
|
|
|
describe("Badge Component", () => {
|
|
it("renders correctly with children", () => {
|
|
render(<Badge>Active</Badge>);
|
|
expect(screen.getByText("Active")).toBeInTheDocument();
|
|
});
|
|
|
|
it("applies variant classes correctly", () => {
|
|
const { rerender } = render(<Badge variant="secondary">Secondary</Badge>);
|
|
let badge = screen.getByText("Secondary");
|
|
expect(badge).toHaveClass("bg-secondary");
|
|
|
|
rerender(<Badge variant="outline">Default</Badge>);
|
|
badge = screen.getByText("Default");
|
|
expect(badge).toHaveClass("text-foreground");
|
|
});
|
|
|
|
it("applies custom className", () => {
|
|
render(<Badge className="custom-class">Custom</Badge>);
|
|
const badge = screen.getByText("Custom");
|
|
expect(badge).toHaveClass("custom-class");
|
|
});
|
|
});
|