import { render } from '@testing-library/react'; import { sortable } from '@patternfly/react-table'; import { Table as TableDeprecated, TableHeader as TableHeaderDeprecated } from '@patternfly/react-table/deprecated'; import { VirtualTableBody } from './index'; import { rows, columns, actions } from './testDataSets'; import { CellMeasurerCache } from 'react-virtualized'; const measurementCache = new CellMeasurerCache({ fixedWidth: true, minHeight: 44, keyMapper: (rowIndex: any) => rowIndex }); describe('Simple virtualized table', () => { const rowRenderer = () => {}; test('className', () => { const { asFragment } = render( {({ width }: { width: number }) => ( )} ); expect(asFragment()).toMatchSnapshot(); }); test('aria-label', () => { const { asFragment } = render( {({ width }: { width: number }) => ( )} ); expect(asFragment()).toMatchSnapshot(); }); }); test('Sortable Virtualized Table', () => { const rowRenderer = () => {}; const onSortCall = () => undefined as any; columns[0] = { ...(columns[0] as any), transforms: [sortable] }; const { asFragment } = render( {({ width }: { width: number }) => ( )} ); expect(asFragment()).toMatchSnapshot(); }); test('Simple Actions table', () => { const rowRenderer = () => {}; const rowsWithDisabledAction = [ ...rows, { cells: ['one', 'two', 'three', 'four', 'five'], disableActions: true } ]; const { asFragment } = render( {({ width }: { width: number }) => ( )} ); expect(asFragment()).toMatchSnapshot(); }); test('Actions virtualized table', () => { const rowRenderer = () => {}; const { asFragment } = render( actions} areActionsDisabled={() => false} cells={columns} rows={rows} > {({ width }: { width: number }) => ( )} ); expect(asFragment()).toMatchSnapshot(); }); test('Selectable virtualized table', () => { const rowRenderer = () => {}; const onSelect = () => undefined as any; const { asFragment } = render( {(width: number) => ( )} ); expect(asFragment()).toMatchSnapshot(); });