Merge branch 'master' of git.curoverse.com:arvados-workbench2 into 14422_item_sorting...
[arvados-workbench2.git] / src / store / data-explorer / data-explorer-middleware.test.ts
index 637a0ccea170af99fba0d9624ec31c22eb1e3363..814d5855c0b6a45b0ee0224d73e382f13b561560 100644 (file)
@@ -4,36 +4,14 @@
 
 import { DataExplorerMiddlewareService } from "./data-explorer-middleware-service";
 import { dataExplorerMiddleware } from "./data-explorer-middleware";
-import { MiddlewareAPI } from "../../../node_modules/redux";
-import { DataColumns } from "../../components/data-table/data-table";
+import { MiddlewareAPI } from "redux";
+import { DataColumns } from "~/components/data-table/data-table";
 import { dataExplorerActions } from "./data-explorer-action";
+import { SortDirection } from "~/components/data-table/data-column";
 
 
 describe("DataExplorerMiddleware", () => {
 
-    it("initializes columns in the store", () => {
-        const config = {
-            id: "Id",
-            columns: [{
-                name: "Column",
-                selected: true,
-                configurable: false,
-                render: jest.fn()
-            }],
-            requestItems: jest.fn(),
-            setApi: jest.fn()
-        };
-        const service = new ServiceMock(config);
-        const api = {
-            getState: jest.fn(),
-            dispatch: jest.fn()
-        };
-        const next = jest.fn();
-        dataExplorerMiddleware(service)(api)(next);
-        expect(next)
-            .toHaveBeenCalledWith(dataExplorerActions.SET_COLUMNS({ id: service.getId(), columns: service.getColumns() }));
-    });
-
     it("handles only actions that are identified by service id", () => {
         const config = {
             id: "ServiceId",
@@ -41,6 +19,8 @@ describe("DataExplorerMiddleware", () => {
                 name: "Column",
                 selected: true,
                 configurable: false,
+                sortDirection: SortDirection.NONE,
+                filters: [],
                 render: jest.fn()
             }],
             requestItems: jest.fn(),
@@ -67,6 +47,8 @@ describe("DataExplorerMiddleware", () => {
                 name: "Column",
                 selected: true,
                 configurable: false,
+                sortDirection: SortDirection.NONE,
+                filters: [],
                 render: jest.fn()
             }],
             requestItems: jest.fn(),
@@ -187,7 +169,7 @@ describe("DataExplorerMiddleware", () => {
         };
         const next = jest.fn();
         const middleware = dataExplorerMiddleware(service)(api)(next);
-        middleware(dataExplorerActions.SET_SEARCH_VALUE({ id: service.getId(), searchValue: "" }));
+        middleware(dataExplorerActions.SET_EXPLORER_SEARCH_VALUE({ id: service.getId(), searchValue: "" }));
         expect(api.dispatch).toHaveBeenCalledTimes(2);
     });
 
@@ -209,7 +191,7 @@ describe("DataExplorerMiddleware", () => {
         middleware(dataExplorerActions.SET_ITEMS({ id: service.getId(), items: [], rowsPerPage: 0, itemsAvailable: 0, page: 0 }));
         middleware(dataExplorerActions.TOGGLE_COLUMN({ id: service.getId(), columnName: "" }));
         expect(api.dispatch).toHaveBeenCalledTimes(0);
-        expect(next).toHaveBeenCalledTimes(4);
+        expect(next).toHaveBeenCalledTimes(3);
     });
 
 });
@@ -218,8 +200,7 @@ class ServiceMock extends DataExplorerMiddlewareService {
     constructor(private config: {
         id: string,
         columns: DataColumns<any>,
-        requestItems: (api: MiddlewareAPI) => void;
-        setApi: () => void;
+        requestItems: (api: MiddlewareAPI) => void
     }) {
         super(config.id);
     }