import { describe, it, expect } from 'vitest'; import { render, screen } from '@testing-library/react'; import { Checkbox } from '../checkbox'; describe('Checkbox', () => { it('renders checkbox', () => { render(); expect(screen.getByTestId('checkbox')).toBeInTheDocument(); }); it('applies custom className', () => { render(); expect(screen.getByTestId('checkbox')).toHaveClass('custom-checkbox'); }); it('renders with checkbox role', () => { render(); const checkbox = screen.getByTestId('checkbox'); expect(checkbox).toHaveAttribute('role', 'checkbox'); }); it('has unchecked state by default', () => { render(); const checkbox = screen.getByTestId('checkbox'); expect(checkbox).toHaveAttribute('aria-checked', 'false'); }); it('can be checked', () => { render(); const checkbox = screen.getByTestId('checkbox'); expect(checkbox).toHaveAttribute('aria-checked', 'true'); }); it('is disabled when disabled prop is true', () => { render(); const checkbox = screen.getByTestId('checkbox'); expect(checkbox).toBeDisabled(); }); it('has default styling', () => { render(); const checkbox = screen.getByTestId('checkbox'); expect(checkbox).toHaveClass('peer', 'h-4', 'w-4'); }); });