import { shallow } from 'enzyme'; import { UncontrolledTooltip } from 'reactstrap'; import { Placement } from '@popperjs/core'; import { InfoTooltip } from '../../src/utils/InfoTooltip'; describe('', () => { it.each([ [ undefined ], [ 'foo' ], [ 'bar' ], ])('renders expected className on span', (className) => { const wrapper = shallow(); const span = wrapper.find('span'); expect(span.prop('className')).toEqual(className ?? ''); }); it.each([ [ ], [ 'Foo' ], [ 'Hello' ], [[ 'One', 'Two', ]], ])('passes children down to the nested tooltip component', (children) => { const wrapper = shallow({children}); const tooltip = wrapper.find(UncontrolledTooltip); expect(tooltip.prop('children')).toEqual(children); }); it.each([ [ 'right' as Placement ], [ 'left' as Placement ], [ 'top' as Placement ], [ 'bottom' as Placement ], ])('places tooltip where requested', (placement) => { const wrapper = shallow(); const tooltip = wrapper.find(UncontrolledTooltip); expect(tooltip.prop('placement')).toEqual(placement); }); });