describe("<DataTable />", () => {
it("shows only selected columns", () => {
- const columns: DataColumns<string> = [
+ const columns: DataColumns<string, string> = [
createDataColumn({
name: "Column 1",
render: () => <span />,
});
it("renders column name", () => {
- const columns: DataColumns<string> = [
+ const columns: DataColumns<string, string> = [
createDataColumn({
name: "Column 1",
render: () => <span />,
});
it("uses renderHeader instead of name prop", () => {
- const columns: DataColumns<string> = [
+ const columns: DataColumns<string, string> = [
createDataColumn({
name: "Column 1",
renderHeader: () => <span>Column Header</span>,
});
it("passes column key prop to corresponding cells", () => {
- const columns: DataColumns<string> = [
+ const columns: DataColumns<string, string> = [
createDataColumn({
name: "Column 1",
key: "column-1-key",
});
it("renders items", () => {
- const columns: DataColumns<string> = [
+ const columns: DataColumns<string, string> = [
createDataColumn({
name: "Column 1",
render: (item) => <Typography>{item}</Typography>,
});
it("passes sorting props to <TableSortLabel />", () => {
- const columns: DataColumns<string> = [
+ const columns: DataColumns<string, string> = [
createDataColumn({
name: "Column 1",
- sortDirection: SortDirection.ASC,
+ sort: {direction: SortDirection.ASC, field: "length"},
selected: true,
configurable: true,
render: (item) => <Typography>{item}</Typography>
});
it("does not display <DataTableFiltersPopover /> if there is no filters provided", () => {
- const columns: DataColumns<string> = [{
+ const columns: DataColumns<string, string> = [{
name: "Column 1",
- sortDirection: SortDirection.ASC,
selected: true,
configurable: true,
filters: [],
() => createTree<DataTableFilterItem>(),
setNode(initTreeNode({ id: 'filter', value: { name: 'filter' } }))
);
- const columns: DataColumns<string> = [{
+ const columns: DataColumns<string, string> = [{
name: "Column 1",
- sortDirection: SortDirection.ASC,
selected: true,
configurable: true,
filters: filters(),
describe('data-explorer-reducer', () => {
it('should set columns', () => {
- const columns: DataColumns<any> = [{
+ const columns: DataColumns<any, any> = [{
name: "Column 1",
filters: [],
render: jest.fn(),
selected: true,
configurable: true,
- sortDirection: SortDirection.NONE
+ sort: {direction: SortDirection.NONE, field: "name"}
}];
const state = dataExplorerReducer(undefined,
dataExplorerActions.SET_COLUMNS({ id: "Data explorer", columns }));
});
it('should toggle sorting', () => {
- const columns: DataColumns<any> = [{
+ const columns: DataColumns<any, any> = [{
name: "Column 1",
filters: [],
render: jest.fn(),
selected: true,
- sortDirection: SortDirection.ASC,
+ sort: {direction: SortDirection.ASC, field: "name"},
configurable: true
}, {
name: "Column 2",
render: jest.fn(),
selected: true,
configurable: true,
- sortDirection: SortDirection.NONE,
+ sort: {direction: SortDirection.NONE, field: "name"},
}];
const state = dataExplorerReducer({ "Data explorer": { ...initialDataExplorer, columns } },
dataExplorerActions.TOGGLE_SORT({ id: "Data explorer", columnName: "Column 2" }));
- expect(state["Data explorer"].columns[0].sortDirection).toEqual("none");
- expect(state["Data explorer"].columns[1].sortDirection).toEqual("asc");
+ expect(state["Data explorer"].columns[0].sort.direction).toEqual("none");
+ expect(state["Data explorer"].columns[1].sort.direction).toEqual("asc");
});
it('should set filters', () => {
- const columns: DataColumns<any> = [{
+ const columns: DataColumns<any, any> = [{
name: "Column 1",
filters: [],
render: jest.fn(),
selected: true,
configurable: true,
- sortDirection: SortDirection.NONE
+ sort: {direction: SortDirection.NONE, field: "name"}
}];
const filters: DataTableFilterItem[] = [{