UNPKG

@navinc/base-react-components

Version:
56 lines (44 loc) 1.54 kB
import React from 'react' import { render } from '@testing-library/react' import { FeatureProvider, Feature } from './index' const features = { dandb: false, equifax: false, experian: true, } const search = '?dandb=true' const renderFeature = (feature) => render(<FeatureProvider value={features}>{feature}</FeatureProvider>) describe('Feature', () => { it('should return children if feature is on', () => { const { getByTestId } = renderFeature( <Feature name="experian" search={search}> <p data-testid="experian-report">Experian Report</p> </Feature> ) expect(getByTestId('experian-report')) }) it('should return null if feature is not on', () => { const { queryByTestId } = renderFeature( <Feature name="equifax" search={search}> <p data-testid="equifax-report">Equifax Report</p> </Feature> ) expect(queryByTestId('equifax-report')).toBeNull() }) it('should return children if feature is overriden via query params', () => { const { getByTestId } = renderFeature( <Feature name="dandb" search={search}> <p data-testid="dandb-report">DandB Report</p> </Feature> ) expect(getByTestId('dandb-report')) }) it('should return null if feature name does not exist in the data', () => { const { queryByTestId } = renderFeature( <Feature name="bureau" search={search}> <p data-testid="bureau-report">Buerau Report</p> </Feature> ) expect(queryByTestId('bureau-report')).toBeNull() }) })