import React from 'react' import { render, fireEvent } from '@testing-library/react' import { Button } from '../Button' test('Button does not call onClick when disabled', () => { let handleClick = jest.fn(() => null) let { getByText } = render( , ) fireEvent.click(getByText('Test')) expect(handleClick).not.toHaveBeenCalled() }) test('Button calls onClick when focused and the user hits enter', () => { let handleClick = jest.fn(() => null) let { getByText } = render( , ) let button = getByText('Test') fireEvent.focus(button) fireEvent.keyDown(button, { key: 'Enter' }) expect(handleClick).toHaveBeenCalled() }) test('Button calls onClick when focused and the user hits spacebar', () => { let handleClick = jest.fn(() => null) let { getByText } = render( , ) let button = getByText('Test') fireEvent.focus(button) fireEvent.keyDown(button, { key: ' ' }) expect(handleClick).toHaveBeenCalled() })