import { h } from 'preact'; import Button from '../Button'; import { render, screen } from 'testing-library'; describe('Button', () => { test('renders children', async () => { render( ); expect(screen.queryByText('hello')).toBeInTheDocument(); expect(screen.queryByText('hi')).toBeInTheDocument(); }); test('includes focus, active, and hover classes when enabled', async () => { render(); const classList = screen.queryByRole('button').classList; expect(classList.contains('focus:outline-none')).toBe(true); expect(classList.contains('focus:ring-2')).toBe(true); expect(classList.contains('hover:shadow-md')).toBe(true); expect(classList.contains('active:bg-blue-600')).toBe(true); }); test('does not focus, active, and hover classes when enabled', async () => { render(); const classList = screen.queryByRole('button').classList; expect(classList.contains('focus:outline-none')).toBe(false); expect(classList.contains('focus:ring-2')).toBe(false); expect(classList.contains('hover:shadow-md')).toBe(false); expect(classList.contains('active:bg-blue-600')).toBe(false); }); });