import '@testing-library/jest-dom'; import React from 'react'; import { fireEvent } from '@testing-library/react'; import { userEvent } from '@testing-library/user-event'; import { describe, expect, it } from 'vitest'; import { createMemoryRouter, RouterProvider } from 'react-router-dom'; import { renderWithProviders } from '../renderWithProviders'; import routes from '../routes'; describe('Guest Login', async () => { const memoryRouter = createMemoryRouter(routes, { initialEntries: ['/guests/login'], }); it('can log in', async () => { const { getByLabelText, getByRole, findByLabelText } = renderWithProviders( ); const user = userEvent.setup(); await user.type(getByLabelText(/first name/i), 'Michael'); await user.type(getByLabelText(/last name/i), 'Hunteman'); fireEvent.click(getByRole('button', { name: 'Log in' })); expect(await findByLabelText(/accept/i)).not.toBeChecked(); expect(await findByLabelText(/decline/i)).toBeChecked(); expect(await findByLabelText(/email/i)).toHaveValue(''); expect(await findByLabelText(/party size/i)).toHaveValue(1); expect(await findByLabelText(/message to the couple/i)).toHaveValue(''); }); });