From e5755dff390aba05db42e64a7cf0bacb7712198f Mon Sep 17 00:00:00 2001 From: Laurent Nguyen Date: Fri, 12 Mar 2021 10:36:27 +0100 Subject: [PATCH] Fix unit tests --- .../SettingsComponent.test.tsx.snap | 84 +------------------ src/Explorer/Tree/ResourceTreeAdapter.test.ts | 64 ++++++++++---- .../Tree/ResourceTreeAdapter.test.tsx | 10 ++- 3 files changed, 62 insertions(+), 96 deletions(-) diff --git a/src/Explorer/Controls/Settings/__snapshots__/SettingsComponent.test.tsx.snap b/src/Explorer/Controls/Settings/__snapshots__/SettingsComponent.test.tsx.snap index f69b1afa2..e199ad85a 100644 --- a/src/Explorer/Controls/Settings/__snapshots__/SettingsComponent.test.tsx.snap +++ b/src/Explorer/Controls/Settings/__snapshots__/SettingsComponent.test.tsx.snap @@ -993,6 +993,7 @@ exports[`SettingsComponent renders 1`] = ` "onSwitchToConnectionString": [Function], "openDialog": undefined, "openSidePanel": undefined, + "params": undefined, "provideFeedbackEmail": [Function], "queriesClient": QueriesClient { "container": [Circular], @@ -1025,26 +1026,6 @@ exports[`SettingsComponent renders 1`] = ` "resourceTokenCollectionId": [Function], "resourceTokenDatabaseId": [Function], "resourceTokenPartitionKey": [Function], - "resourceTree": ResourceTreeAdapter { - "container": [Circular], - "copyNotebook": [Function], - "databaseCollectionIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "koSubsCollectionIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "koSubsDatabaseIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "parameters": [Function], - }, "resourceTreeForResourceToken": ResourceTreeAdapterForResourceToken { "container": [Circular], "parameters": [Function], @@ -2209,6 +2190,7 @@ exports[`SettingsComponent renders 1`] = ` "onSwitchToConnectionString": [Function], "openDialog": undefined, "openSidePanel": undefined, + "params": undefined, "provideFeedbackEmail": [Function], "queriesClient": QueriesClient { "container": [Circular], @@ -2241,26 +2223,6 @@ exports[`SettingsComponent renders 1`] = ` "resourceTokenCollectionId": [Function], "resourceTokenDatabaseId": [Function], "resourceTokenPartitionKey": [Function], - "resourceTree": ResourceTreeAdapter { - "container": [Circular], - "copyNotebook": [Function], - "databaseCollectionIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "koSubsCollectionIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "koSubsDatabaseIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "parameters": [Function], - }, "resourceTreeForResourceToken": ResourceTreeAdapterForResourceToken { "container": [Circular], "parameters": [Function], @@ -3438,6 +3400,7 @@ exports[`SettingsComponent renders 1`] = ` "onSwitchToConnectionString": [Function], "openDialog": undefined, "openSidePanel": undefined, + "params": undefined, "provideFeedbackEmail": [Function], "queriesClient": QueriesClient { "container": [Circular], @@ -3470,26 +3433,6 @@ exports[`SettingsComponent renders 1`] = ` "resourceTokenCollectionId": [Function], "resourceTokenDatabaseId": [Function], "resourceTokenPartitionKey": [Function], - "resourceTree": ResourceTreeAdapter { - "container": [Circular], - "copyNotebook": [Function], - "databaseCollectionIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "koSubsCollectionIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "koSubsDatabaseIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "parameters": [Function], - }, "resourceTreeForResourceToken": ResourceTreeAdapterForResourceToken { "container": [Circular], "parameters": [Function], @@ -4654,6 +4597,7 @@ exports[`SettingsComponent renders 1`] = ` "onSwitchToConnectionString": [Function], "openDialog": undefined, "openSidePanel": undefined, + "params": undefined, "provideFeedbackEmail": [Function], "queriesClient": QueriesClient { "container": [Circular], @@ -4686,26 +4630,6 @@ exports[`SettingsComponent renders 1`] = ` "resourceTokenCollectionId": [Function], "resourceTokenDatabaseId": [Function], "resourceTokenPartitionKey": [Function], - "resourceTree": ResourceTreeAdapter { - "container": [Circular], - "copyNotebook": [Function], - "databaseCollectionIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "koSubsCollectionIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "koSubsDatabaseIdMap": ArrayHashMap { - "store": HashMap { - "container": Object {}, - }, - }, - "parameters": [Function], - }, "resourceTreeForResourceToken": ResourceTreeAdapterForResourceToken { "container": [Circular], "parameters": [Function], diff --git a/src/Explorer/Tree/ResourceTreeAdapter.test.ts b/src/Explorer/Tree/ResourceTreeAdapter.test.ts index 3be998533..c698a6915 100644 --- a/src/Explorer/Tree/ResourceTreeAdapter.test.ts +++ b/src/Explorer/Tree/ResourceTreeAdapter.test.ts @@ -1,6 +1,6 @@ import Explorer from "../Explorer"; import * as ko from "knockout"; -import { ResourceTreeAdapter } from "./ResourceTree"; +import { ResourceTree } from "./ResourceTree"; import * as ViewModels from "../../Contracts/ViewModels"; import TabsBase from "../Tabs/TabsBase"; @@ -26,22 +26,40 @@ describe("ResourceTreeAdapter", () => { it("it should not select if no selected node", () => { const explorer = mockContainer(); explorer.selectedNode(undefined); - const resourceTreeAdapter = new ResourceTreeAdapter(explorer); - const isDataNodeSelected = resourceTreeAdapter.isDataNodeSelected("foo", "bar", undefined); + const resourceTree = new ResourceTree({ + explorer, + lastRefreshedTime: 0, + galleryContentRoot: undefined, + myNotebooksContentRoot: undefined, + gitHubNotebooksContentRoot: undefined, + }); + const isDataNodeSelected = resourceTree.isDataNodeSelected("foo", "bar", undefined); expect(isDataNodeSelected).toBeFalsy(); }); it("it should not select incorrect subnodekinds", () => { - const resourceTreeAdapter = new ResourceTreeAdapter(mockContainer()); - const isDataNodeSelected = resourceTreeAdapter.isDataNodeSelected("foo", "bar", undefined); + const resourceTree = new ResourceTree({ + explorer: mockContainer(), + lastRefreshedTime: 0, + galleryContentRoot: undefined, + myNotebooksContentRoot: undefined, + gitHubNotebooksContentRoot: undefined, + }); + const isDataNodeSelected = resourceTree.isDataNodeSelected("foo", "bar", undefined); expect(isDataNodeSelected).toBeFalsy(); }); it("it should not select if no active tab", () => { const explorer = mockContainer(); explorer.tabsManager.activeTab(undefined); - const resourceTreeAdapter = new ResourceTreeAdapter(explorer); - const isDataNodeSelected = resourceTreeAdapter.isDataNodeSelected("foo", "bar", undefined); + const resourceTree = new ResourceTree({ + explorer, + lastRefreshedTime: 0, + galleryContentRoot: undefined, + myNotebooksContentRoot: undefined, + gitHubNotebooksContentRoot: undefined, + }); + const isDataNodeSelected = resourceTree.isDataNodeSelected("foo", "bar", undefined); expect(isDataNodeSelected).toBeFalsy(); }); @@ -54,8 +72,14 @@ describe("ResourceTreeAdapter", () => { id: ko.observable("dbid"), selectedSubnodeKind: ko.observable(subNodeKind), } as unknown) as ViewModels.TreeNode); - const resourceTreeAdapter = new ResourceTreeAdapter(explorer); - const isDataNodeSelected = resourceTreeAdapter.isDataNodeSelected("dbid", undefined, [ + const resourceTree = new ResourceTree({ + explorer, + lastRefreshedTime: 0, + galleryContentRoot: undefined, + myNotebooksContentRoot: undefined, + gitHubNotebooksContentRoot: undefined, + }); + const isDataNodeSelected = resourceTree.isDataNodeSelected("dbid", undefined, [ ViewModels.CollectionTabKind.Documents, ]); expect(isDataNodeSelected).toBeTruthy(); @@ -74,8 +98,14 @@ describe("ResourceTreeAdapter", () => { id: ko.observable("collid"), selectedSubnodeKind: ko.observable(subNodeKind), } as unknown) as ViewModels.TreeNode); - const resourceTreeAdapter = new ResourceTreeAdapter(explorer); - let isDataNodeSelected = resourceTreeAdapter.isDataNodeSelected("dbid", "collid", [subNodeKind]); + const resourceTree = new ResourceTree({ + explorer, + lastRefreshedTime: 0, + galleryContentRoot: undefined, + myNotebooksContentRoot: undefined, + gitHubNotebooksContentRoot: undefined, + }); + let isDataNodeSelected = resourceTree.isDataNodeSelected("dbid", "collid", [subNodeKind]); expect(isDataNodeSelected).toBeTruthy(); subNodeKind = ViewModels.CollectionTabKind.Graph; @@ -89,7 +119,7 @@ describe("ResourceTreeAdapter", () => { id: ko.observable("collid"), selectedSubnodeKind: ko.observable(subNodeKind), } as unknown) as ViewModels.TreeNode); - isDataNodeSelected = resourceTreeAdapter.isDataNodeSelected("dbid", "collid", [subNodeKind]); + isDataNodeSelected = resourceTree.isDataNodeSelected("dbid", "collid", [subNodeKind]); expect(isDataNodeSelected).toBeTruthy(); }); @@ -105,8 +135,14 @@ describe("ResourceTreeAdapter", () => { explorer.tabsManager.activeTab({ tabKind: ViewModels.CollectionTabKind.Documents, } as TabsBase); - const resourceTreeAdapter = new ResourceTreeAdapter(explorer); - const isDataNodeSelected = resourceTreeAdapter.isDataNodeSelected("dbid", "collid", [ + const resourceTree = new ResourceTree({ + explorer, + lastRefreshedTime: 0, + galleryContentRoot: undefined, + myNotebooksContentRoot: undefined, + gitHubNotebooksContentRoot: undefined, + }); + const isDataNodeSelected = resourceTree.isDataNodeSelected("dbid", "collid", [ ViewModels.CollectionTabKind.Settings, ]); expect(isDataNodeSelected).toBeFalsy(); diff --git a/src/Explorer/Tree/ResourceTreeAdapter.test.tsx b/src/Explorer/Tree/ResourceTreeAdapter.test.tsx index e73108da0..588d46cbb 100644 --- a/src/Explorer/Tree/ResourceTreeAdapter.test.tsx +++ b/src/Explorer/Tree/ResourceTreeAdapter.test.tsx @@ -2,7 +2,7 @@ import * as ko from "knockout"; import * as DataModels from "../../Contracts/DataModels"; import * as ViewModels from "../../Contracts/ViewModels"; import React from "react"; -import { ResourceTreeAdapter } from "./ResourceTree"; +import { ResourceTree } from "./ResourceTree"; import { shallow } from "enzyme"; import { TreeComponent, TreeNode, TreeComponentProps } from "../Controls/TreeComponent/TreeComponent"; import Explorer from "../Explorer"; @@ -237,7 +237,13 @@ const createMockCollection = (): ViewModels.Collection => { describe("Resource tree for schema", () => { const mockContainer: Explorer = createMockContainer(); - const resourceTree = new ResourceTreeAdapter(mockContainer); + const resourceTree = new ResourceTree({ + explorer: mockContainer, + lastRefreshedTime: 0, + galleryContentRoot: undefined, + myNotebooksContentRoot: undefined, + gitHubNotebooksContentRoot: undefined, + }); it("should render", () => { const rootNode: TreeNode = resourceTree.buildSchemaNode(createMockCollection());