import { render, screen } from '@testing-library/react' import Placeholder from './placeholder' describe('Placeholder', () => { beforeEach(() => { vi.clearAllMocks() }) describe('Rendering', () => { it('should render translated default placeholder text when value is not provided', () => { render() expect(screen.getByText('common.promptEditor.placeholder')).toBeInTheDocument() }) it('should render provided value instead of translated default text', () => { render(custom placeholder} />) expect(screen.getByText('custom placeholder')).toBeInTheDocument() expect(screen.queryByText('common.promptEditor.placeholder')).not.toBeInTheDocument() }) }) describe('Class names', () => { it('should apply compact text classes when compact is true', () => { const { container } = render() const wrapper = container.firstElementChild expect(wrapper).toHaveClass('text-[13px]') expect(wrapper).toHaveClass('leading-5') expect(wrapper).not.toHaveClass('leading-6') }) it('should apply default text classes when compact is false', () => { const { container } = render() const wrapper = container.firstElementChild expect(wrapper).toHaveClass('text-sm') expect(wrapper).toHaveClass('leading-6') expect(wrapper).not.toHaveClass('leading-5') }) it('should merge additional className when provided', () => { const { container } = render() const wrapper = container.firstElementChild expect(wrapper).toHaveClass('custom-class') }) }) })