import { render, screen } from '@testing-library/react'; import { PageBody } from '../PageBody'; import styles from '@patternfly/react-styles/css/components/Page/page'; test('Renders without children', () => { render(); expect(screen.getByTestId('page-main-body')).toBeVisible(); }); test('Renders children', () => { render(Test); expect(screen.getByText('Test')).toBeVisible(); }); test(`Renders with class ${styles.pageMainBody} by default`, () => { render(Test); expect(screen.getByText('Test')).toHaveClass(styles.pageMainBody); }); test(`Renders with custom classes when className is passed`, () => { render(Test); expect(screen.getByText('Test')).toHaveClass('custom-class'); }); test(`Renders with spread props`, () => { render(Test); expect(screen.getByText('Test')).toHaveAttribute('id', 'custom-id'); }); test('Matches snapshot', () => { const { asFragment } = render(Test); expect(asFragment()).toMatchSnapshot(); });