import React from 'react'; | |
import { render, screen } from '@testing-library/react'; | |
import userEvent from '@testing-library/user-event' | |
import { Account } from './Account'; | |
import { ErrorBoundary } from './ErrorBoundary'; | |
describe('Account', () => { | |
it('renders a fallback when an account error is thrown', async () => { | |
const fallback = jest.fn(() => ( | |
<button>Try Again</button> | |
)); | |
const user = userEvent.setup(); | |
render( | |
<ErrorBoundary fallback={fallback}> | |
<Account /> | |
</ErrorBoundary> | |
); | |
await userEvent.click(screen.getByRole('button', { name: /try again/i }); | |
expect(fallback).toHaveBeenCalledTimes(1); | |
}); | |
}); |