import { fireEvent, render, screen } from '@testing-library/react' import { describe, expect, it, vi } from 'vitest' import { expectMinHitArea } from '../test/hitArea.ts' import { Select } from './Select.tsx' describe('Select', () => { it('is a native select named by its label', () => { const onChange = vi.fn() render( , ) const select = screen.getByRole('combobox', { name: 'Provider' }) expect(select).toHaveValue('a') fireEvent.change(select, { target: { value: 'b' } }) expect(onChange).toHaveBeenCalledOnce() }) it('keeps a 44 px tap target', () => { render( , ) expectMinHitArea(screen.getByRole('combobox', { name: 'Model' })) }) it('hides its chevron from assistive technology', () => { const { container } = render( , ) expect(container.querySelector('svg')).toHaveAttribute('aria-hidden', 'true') }) })