/* * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 */ import { render } from '@testing-library/react'; import { configure } from 'enzyme'; import Adapter from 'enzyme-adapter-react-16'; import React from 'react'; import { mockGanttProps } from '../../../test/mocks/mockData'; import { GanttChart } from '../gantt_chart'; describe(' spec', () => { configure({ adapter: new Adapter() }); it('renders the component', () => { const props = mockGanttProps(); const utils = render(); expect(utils.container.firstChild).toMatchSnapshot(); }); it('renders empty prompt when no field is selected', () => { const props = mockGanttProps(); props.visParams = { ...props.visParams, labelField: '', }; const utils = render(); expect(utils.container.firstChild).toMatchSnapshot(); }); it('renders empty prompt when no data is returned', () => { const props = mockGanttProps(); props.visData.source = []; const utils = render(); expect(utils.container.firstChild).toMatchSnapshot(); }); it('renders the component with different props', () => { const props = mockGanttProps(); props.visData.source = props.visData.source.map(({ spanId, startTime, duration }) => ({ spanId: '', duration: duration * 1000, startTime: startTime * 1000, })); props.visParams = { ...props.visParams, xAxisPosition: 'top', yAxisPosition: 'right', legendOrientation: 'h', xAxisShowTitle: false, yAxisShowTitle: false, } const utils = render(); expect(utils.container.firstChild).toMatchSnapshot(); }); });