/* eslint-disable react/jsx-no-constructed-context-values */ // This file was copied from edx/frontend-component-header-edx. import React from 'react'; import { IntlProvider } from '@edx/frontend-platform/i18n'; import { AppContext } from '@edx/frontend-platform/react'; import { Context as ResponsiveContext } from 'react-responsive'; import { cleanup, render, screen, } from '@testing-library/react'; import Header from './Header'; describe('
', () => { function createComponent(screenWidth, component) { return ( {component} ); } it('renders desktop header correctly with API call', async () => { const component = createComponent( 1280, (
), ); render(component); expect(screen.getByTestId('course-org-number').textContent).toEqual(expect.stringContaining('edX DemoX')); expect(screen.getByTestId('course-title').textContent).toEqual(expect.stringContaining('Demonstration Course')); }); it('renders mobile header correctly with API call', async () => { const component = createComponent( 500, (
), ); render(component); expect(screen.getByTestId('edx-header-logo')); }); it('renders desktop header correctly with bad API call', async () => { const component = createComponent( 1280, (
), ); render(component); expect(screen.getByTestId('course-title').textContent).toEqual(expect.stringContaining('course-v1:edX+DemoX+Demo_Course')); }); it('renders mobile header correctly with bad API call', async () => { const component = createComponent( 500, (
), ); render(component); expect(screen.getByTestId('edx-header-logo')); }); afterEach(() => { cleanup(); }); });