Vamos a construir una aplicación para seleccionar y buscar emisoras de radio en streaming.
- `describe` (test suites) y `test` (tests unitarios).
- beforeEach: utilízalo para renderizar la página.
- screen.getByText(), screen.getByPlaceholderTExt, screen.getByRole() o scren.getByLabelText(). Para encontrar el elemento que queremos testear.
- userEvent.type() o userEvent.click() para testear los eventos que se disparen.
- jest.fn() para mockear los listeners que asociamos a los eventos.
- matchers: toBeInTheDocument(), toHaveBeenCalledTimes(),...
Test:
- El nombre de la aplicación debe mostrarse en algún lugar => "RADIO FACTORIA"
Tests:
- La aplicación debe tener un campo input con el placeholder => "Escribe el nombre de la radio"
- La aplicación debe tener un botón de búsqueda => Texto "Buscar"
- Cuando hacemos clic en el botón buscar, se debe ejecutar la función de búsqueda una sola vez
Tests:
- Debe existir un listado de emisoras
- El listado debe inicializar vacío
- Cuando se hace una búsqueda válida, el listado debe mostrar al menos un resultado
- Cuando hacemos una búsqueda inválida (no existe), el listado debe mostrar un mensaje "No se han encontrado emisoras para esta búsqueda"