UNPKG

1.2 kBJavaScriptView Raw
1import React from 'react';
2import { render, screen } from '@testing-library/react';
3import { OffcanvasHeader } from '..';
4import { testForCustomClass, testForDefaultClass } from '../testUtils';
5
6describe('OffcanvasHeader', () => {
7 it('should render with "offcanvas-header" class', () => {
8 testForDefaultClass(OffcanvasHeader, 'offcanvas-header');
9 });
10
11 it('should render additional classes', () => {
12 testForCustomClass(OffcanvasHeader);
13 });
14
15 it('should render close button', () => {
16 render(
17 <OffcanvasHeader toggle={() => {}} data-testid="test" className="other">
18 Yo!
19 </OffcanvasHeader>,
20 );
21 const node = screen.getByTestId('test').querySelector('button');
22 expect(node.tagName.toLowerCase()).toBe('button');
23 expect(node).toHaveClass('btn-close');
24 });
25
26 it('should render custom tag', () => {
27 render(<OffcanvasHeader tag="h1">Yo!</OffcanvasHeader>);
28 expect(screen.getByText(/yo!/i).tagName.toLowerCase()).toMatch('h1');
29 });
30
31 it('should render custom wrapping tag', () => {
32 render(<OffcanvasHeader wrapTag="main">Yo!</OffcanvasHeader>);
33 expect(screen.getByText(/yo/i).parentElement.tagName).toMatch(/main/i);
34 });
35});