← Усі задачіReact · Junior

Лічильник

Напишіть компонент Counter. Він показує число в елементі з data-testid="count" і має дві кнопки: - зменшує число на одиницю, + збільшує.

Початкове значення приходить у пропсі initial (за замовчуванням 0). Хуки (useState та інші) доступні без імпорту.

Тести (4)

  1. render(<Counter />);
    expect(screen.getByTestId('count').textContent).toBe('0');
  2. render(<Counter />);
    fireEvent.click(screen.getByRole('button', { name: '+' }));
    fireEvent.click(screen.getByRole('button', { name: '+' }));
    expect(screen.getByTestId('count').textContent).toBe('2');
  3. render(<Counter />);
    fireEvent.click(screen.getByRole('button', { name: '-' }));
    expect(screen.getByTestId('count').textContent).toBe('-1');
  4. render(<Counter initial={10} />);
    fireEvent.click(screen.getByRole('button', { name: '+' }));
    expect(screen.getByTestId('count').textContent).toBe('11');