import React from 'react';
import { fireEvent, render } from '@testing-library/react';
import 'jest-styled-components';
import { Grommet } from '../../Grommet';
import { Box } from '..';
describe('Box', () => {
test('default', () => {
const { container } = render(
,
);
expect(container.firstChild).toMatchSnapshot();
});
test('as string', () => {
const { container } = render(
,
);
expect(container.firstChild).toMatchSnapshot();
});
test('as function', () => {
const { container } = render(
} />
,
);
expect(container.firstChild).toMatchSnapshot();
});
test('as component', () => {
class Header extends React.Component {
render() {
return ;
}
}
const { container } = render(
,
);
expect(container.firstChild).toMatchSnapshot();
});
test('tag proxied', () => {
const { container: tagComponent } = render(
,
);
const { container: asComponent } = render(
,
);
expect(tagComponent).toEqual(asComponent);
});
test('onClick', () => {
const onClick = jest.fn();
const { getByText, container } = render(
test box
,
);
expect(container.firstChild).toMatchSnapshot();
fireEvent.click(getByText('test box'));
expect(onClick).toBeCalled();
});
test('renders a11yTitle and aria-label', () => {
const { container, getByLabelText } = render(
,
);
expect(getByLabelText('test')).toBeTruthy();
expect(getByLabelText('test-2')).toBeTruthy();
expect(container).toMatchSnapshot();
});
});