import { render, waitFor, fireEvent } from '@testing-library/react';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import { server } from '@availity/mock/src/lib/server';
import { Spaces } from '../Spaces';
import { SpacesLink } from '../SpacesLink/SpacesLink';
window.open = vi.fn();
const queryClient = new QueryClient();
const DisclaimerModal = () => (
);
describe('DisclaimerModal', () => {
beforeAll(() => {
// Start the interception.
server.listen();
});
afterEach(() => {
vi.clearAllMocks();
server.resetHandlers();
});
// terminate the server
afterAll(() => server.close());
it('renders modal when space metadata contains disclaimerId', async () => {
const { getByText } = render();
const link = await waitFor(() => getByText('Some Application'));
fireEvent.click(link);
const disclaimerText = await waitFor(() => getByText('hello world'));
expect(disclaimerText).toBeDefined();
const submitBtn = await waitFor(() => getByText('Accept'));
fireEvent.click(submitBtn);
expect(window.open).toHaveBeenCalledTimes(1);
});
});