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();
});