import React from 'react'; import { render, fireEvent, waitFor } from '@testing-library/react'; import { Popover } from '..'; import { IconArrowsChevronBottom } from '../../icons/arrows/chevron-bottom'; test('Default use', async () => { const { asFragment, getByText } = render( ); expect(asFragment()).toMatchSnapshot(); fireEvent.click(getByText('Text trigger')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); }); test('Arrow', async () => { const { asFragment, getByText } = render( ); expect(asFragment()).toMatchSnapshot(); fireEvent.click(getByText('Text trigger')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); }); test('CustomTagName', async () => { const { asFragment, getByText } = render( ); expect(asFragment()).toMatchSnapshot(); fireEvent.click(getByText('Text trigger')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); }); test('Close', async () => { const { asFragment, getByText } = render(
Out click
); expect(asFragment()).toMatchSnapshot(); fireEvent.click(getByText('Text trigger')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); fireEvent.click(getByText('Out click')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); }); test('Element', async () => { const { asFragment, getByText } = render( Text trigger} render="Text render" /> ); expect(asFragment()).toMatchSnapshot(); fireEvent.click(getByText('Text trigger')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); }); test('Hover', async () => { const { asFragment, getByText } = render( ); expect(asFragment()).toMatchSnapshot(); fireEvent.click(getByText('Text trigger')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); }); test('Render function', async () => { const { asFragment, getByText } = render( 'Text render'} /> ); expect(asFragment()).toMatchSnapshot(); fireEvent.click(getByText('Text trigger')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); }); test('Icon trigger', async () => { const { asFragment, getByRole } = render( } render={() => 'Text render'} /> ); expect(asFragment()).toMatchSnapshot(); fireEvent.click(getByRole('Trigger')); await waitFor(() => { expect(asFragment()).toMatchSnapshot(); }); });