1import { render } from '@testing-library/react'; 2import GithubSlugger from 'github-slugger'; 3import React from 'react'; 4 5import DocumentationSidebarRight from './DocumentationSidebarRight'; 6 7import { HeadingManager, HeadingType } from '~/common/headingManager'; 8import { HeadingsContext } from '~/components/page-higher-order/withHeadingManager'; 9 10const prepareHeadingManager = () => { 11 const headingManager = new HeadingManager(new GithubSlugger(), { headings: [] }); 12 headingManager.addHeading('Base level heading', undefined, {}); 13 headingManager.addHeading('Level 3 subheading', 3, {}); 14 headingManager.addHeading('Code heading depth 1', 0, { 15 sidebarDepth: 1, 16 sidebarType: HeadingType.InlineCode, 17 }); 18 19 return headingManager; 20}; 21 22describe('DocumentationSidebarRight', () => { 23 test('correctly matches snapshot', () => { 24 const headingManager = prepareHeadingManager(); 25 26 const { container } = render( 27 <HeadingsContext.Provider value={headingManager}> 28 <DocumentationSidebarRight /> 29 </HeadingsContext.Provider> 30 ); 31 expect(container).toMatchSnapshot(); 32 }); 33}); 34