import { describe, expect, it } from '@jest/globals'; import { render, screen as rtlScreen } from '@testing-library/react'; import { type FC, useContext } from 'react'; import type { AckeeTrackerValue } from '../../../types'; import { AckeeContext, AckeeProvider } from './ackee-provider'; const bodyPrefix = 'Tracking is set to:'; const ComponentTest: FC = () => { const { tracking } = useContext(AckeeContext); return (
{bodyPrefix} {tracking}
); }; describe('AckeeProvider', () => { it('uses the default value when the provider is not used', () => { render(); expect(rtlScreen.getByText(new RegExp(bodyPrefix))).toHaveTextContent( `${bodyPrefix} full` ); }); it('provides the given tracking value to its children', () => { const tracking: AckeeTrackerValue = 'partial'; render( ); expect(rtlScreen.getByText(new RegExp(bodyPrefix))).toHaveTextContent( `${bodyPrefix} ${tracking}` ); }); });