PageControl.spec.tsx 1004 B

123456789101112131415161718192021222324252627282930313233
  1. import React from 'react';
  2. import PageControl, {
  3. PageControlProps,
  4. } from 'components/common/Pagination/PageControl';
  5. import { screen } from '@testing-library/react';
  6. import { render } from 'lib/testHelpers';
  7. import theme from 'theme/theme';
  8. const page = 138;
  9. describe('PageControl', () => {
  10. const setupComponent = (props: Partial<PageControlProps> = {}) =>
  11. render(<PageControl url="/test" page={page} current {...props} />);
  12. it('renders current page', () => {
  13. setupComponent({ current: true });
  14. expect(screen.getByRole('button')).toHaveStyle(
  15. `background-color: ${theme.pagination.currentPage}`
  16. );
  17. });
  18. it('renders non-current page', () => {
  19. setupComponent({ current: false });
  20. expect(screen.getByRole('button')).toHaveStyle(
  21. `background-color: ${theme.pagination.backgroundColor}`
  22. );
  23. });
  24. it('renders page number', () => {
  25. setupComponent({ current: false });
  26. expect(screen.getByRole('button')).toHaveTextContent(String(page));
  27. });
  28. });