//
// SPDX-License-Identifier: AGPL-3.0
-import * as React from "react";
+import React from "react";
import { mount, configure } from "enzyme";
-import * as Adapter from "enzyme-adapter-react-16";
-import ColumnSelector, { ColumnSelectorProps, ColumnSelectorTrigger } from "./column-selector";
-import { DataColumn } from "../data-table/data-column";
+import Adapter from "enzyme-adapter-react-16";
+import { ColumnSelector, ColumnSelectorTrigger } from "./column-selector";
import { ListItem, Checkbox } from "@material-ui/core";
+import { DataColumns } from "../data-table/data-table";
configure({ adapter: new Adapter() });
describe("<ColumnSelector />", () => {
it("shows only configurable columns", () => {
- const columns: Array<DataColumn<void>> = [
+ const columns: DataColumns<void> = [
{
name: "Column 1",
render: () => <span />,
- selected: true
+ selected: true,
+ configurable: true
},
{
name: "Column 2",
});
it("renders checked checkboxes next to selected columns", () => {
- const columns: Array<DataColumn<void>> = [
+ const columns: DataColumns<void> = [
{
name: "Column 1",
render: () => <span />,
- selected: true
+ selected: true,
+ configurable: true
},
{
name: "Column 2",
render: () => <span />,
- selected: false
+ selected: false,
+ configurable: true
},
{
name: "Column 3",
render: () => <span />,
- selected: true
+ selected: true,
+ configurable: true
}
];
const columnsConfigurator = mount(<ColumnSelector columns={columns} onColumnToggle={jest.fn()} />);
});
it("calls onColumnToggle with clicked column", () => {
- const columns: Array<DataColumn<void>> = [
+ const columns: DataColumns<void> = [
{
name: "Column 1",
render: () => <span />,
- selected: true
+ selected: true,
+ configurable: true
}
];
const onColumnToggle = jest.fn();