import { render, screen } from '../test-utils';
import List from './List';
describe('List', () => {
it('should render content', () => {
render(
Item 1
Item 2
,
);
expect(screen.getByText('Item 1')).toBeInTheDocument();
expect(screen.getByText('Item 2')).toBeInTheDocument();
});
describe('`as` prop', () => {
it('renders `ul` by default', () => {
render(Content
);
expect(screen.getByRole('list')).toBeInstanceOf(HTMLUListElement);
});
it('renders as `ol`', () => {
render(Content
);
expect(screen.getByRole('list')).toBeInstanceOf(HTMLOListElement);
});
it('renders as `ul`', () => {
render(Content
);
expect(screen.getByRole('list')).toBeInstanceOf(HTMLUListElement);
});
it('renders as `div`', () => {
render(
Content
,
);
expect(screen.getByTestId('list')).toBeInstanceOf(HTMLDivElement);
});
});
it('accepts custom classname', () => {
render(Content
);
expect(screen.getByRole('list')).toHaveClass('custom-class');
});
it('accepts CSS style', () => {
render(Content
);
expect(screen.getByRole('list')).toHaveStyle({ color: 'red' });
});
});