From 8f0bb1add81b3a3ee0f9e80dc417f86d2e5870eb Mon Sep 17 00:00:00 2001 From: hardiknai-techm Date: Thu, 15 Apr 2021 13:04:51 +0530 Subject: [PATCH 1/5] Remove Explorer.defaultExperience --- src/Explorer/Explorer.tsx | 16 +++++--------- src/Explorer/Panes/AddCollectionPane.test.ts | 23 +++++++++++++++----- src/Explorer/Panes/AddCollectionPane.ts | 2 +- src/Explorer/Panes/AddDatabasePane.ts | 2 +- src/Explorer/Tabs/DocumentsTab.test.ts | 15 +++++++++---- src/Explorer/Tabs/NotebookV2Tab.ts | 2 +- 6 files changed, 37 insertions(+), 23 deletions(-) diff --git a/src/Explorer/Explorer.tsx b/src/Explorer/Explorer.tsx index 6883ab29c..7558d4c88 100644 --- a/src/Explorer/Explorer.tsx +++ b/src/Explorer/Explorer.tsx @@ -111,11 +111,7 @@ export default class Explorer { * */ public databaseAccount: ko.Observable; public collectionCreationDefaults: ViewModels.CollectionCreationDefaults = SharedConstants.CollectionCreationDefaults; - /** - * @deprecated - * Use userContext.apiType instead - * */ - public defaultExperience: ko.Observable; + /** * @deprecated * Compare a string with userContext.apiType instead: userContext.apiType === "Cassandra" @@ -402,12 +398,10 @@ export default class Explorer { bounds: splitterBounds, direction: SplitterDirection.Vertical, }); - this.defaultExperience = ko.observable(); this.databaseAccount.subscribe((databaseAccount) => { const defaultExperience: string = DefaultExperienceUtility.getDefaultExperienceFromDatabaseAccount( databaseAccount ); - this.defaultExperience(defaultExperience); // TODO. Remove this entirely updateUserContext({ defaultExperience: DefaultExperienceUtility.mapDefaultExperienceStringToEnum(defaultExperience), @@ -415,16 +409,16 @@ export default class Explorer { }); this.isPreferredApiCassandra = ko.computed(() => { - const defaultExperience = (this.defaultExperience && this.defaultExperience()) || ""; + const defaultExperience = userContext.apiType || ""; return defaultExperience.toLowerCase() === Constants.DefaultAccountExperience.Cassandra.toLowerCase(); }); this.isPreferredApiGraph = ko.computed(() => { - const defaultExperience = (this.defaultExperience && this.defaultExperience()) || ""; + const defaultExperience = userContext.apiType || ""; return defaultExperience.toLowerCase() === Constants.DefaultAccountExperience.Graph.toLowerCase(); }); this.isPreferredApiTable = ko.computed(() => { - const defaultExperience = (this.defaultExperience && this.defaultExperience()) || ""; + const defaultExperience = userContext.apiType || ""; return defaultExperience.toLowerCase() === Constants.DefaultAccountExperience.Table.toLowerCase(); }); @@ -449,7 +443,7 @@ export default class Explorer { ); this.isPreferredApiMongoDB = ko.computed(() => { - const defaultExperience = (this.defaultExperience && this.defaultExperience()) || ""; + const defaultExperience = userContext.apiType || ""; if (defaultExperience.toLowerCase() === Constants.DefaultAccountExperience.MongoDB.toLowerCase()) { return true; } diff --git a/src/Explorer/Panes/AddCollectionPane.test.ts b/src/Explorer/Panes/AddCollectionPane.test.ts index 98fc2890d..d56efdfd9 100644 --- a/src/Explorer/Panes/AddCollectionPane.test.ts +++ b/src/Explorer/Panes/AddCollectionPane.test.ts @@ -1,7 +1,8 @@ import * as Constants from "../../Common/Constants"; -import AddCollectionPane from "./AddCollectionPane"; -import Explorer from "../Explorer"; import { DatabaseAccount } from "../../Contracts/DataModels"; +import { updateUserContext } from "../../UserContext"; +import Explorer from "../Explorer"; +import AddCollectionPane from "./AddCollectionPane"; describe("Add Collection Pane", () => { describe("isValid()", () => { @@ -43,14 +44,26 @@ describe("Add Collection Pane", () => { }); it("should be true if graph API and partition key is not /id nor /label", () => { - explorer.defaultExperience(Constants.DefaultAccountExperience.Graph.toLowerCase()); + updateUserContext({ + databaseAccount: { + properties: { + capabilities: [{ name: "EnableGremlin" }], + }, + } as DatabaseAccount, + }); const addCollectionPane = explorer.addCollectionPane as AddCollectionPane; addCollectionPane.partitionKey("/blah"); expect(addCollectionPane.isValid()).toBe(true); }); it("should be false if graph API and partition key is /id or /label", () => { - explorer.defaultExperience(Constants.DefaultAccountExperience.Graph.toLowerCase()); + updateUserContext({ + databaseAccount: { + properties: { + capabilities: [{ name: "EnableGremlin" }], + }, + } as DatabaseAccount, + }); const addCollectionPane = explorer.addCollectionPane as AddCollectionPane; addCollectionPane.partitionKey("/id"); expect(addCollectionPane.isValid()).toBe(false); @@ -60,7 +73,7 @@ describe("Add Collection Pane", () => { }); it("should be true for any non-graph API with /id or /label partition key", () => { - explorer.defaultExperience(Constants.DefaultAccountExperience.DocumentDB.toLowerCase()); + updateUserContext({}); const addCollectionPane = explorer.addCollectionPane as AddCollectionPane; addCollectionPane.partitionKey("/id"); diff --git a/src/Explorer/Panes/AddCollectionPane.ts b/src/Explorer/Panes/AddCollectionPane.ts index 68303780d..1b8d1be82 100644 --- a/src/Explorer/Panes/AddCollectionPane.ts +++ b/src/Explorer/Panes/AddCollectionPane.ts @@ -486,7 +486,7 @@ export default class AddCollectionPane extends ContextualPaneBase { userContext.portalEnv, this.isFreeTierAccount(), this.container.isFirstResourceCreated(), - this.container.defaultExperience(), + userContext.apiType, true ); }); diff --git a/src/Explorer/Panes/AddDatabasePane.ts b/src/Explorer/Panes/AddDatabasePane.ts index dff1f08ff..b6f23e867 100644 --- a/src/Explorer/Panes/AddDatabasePane.ts +++ b/src/Explorer/Panes/AddDatabasePane.ts @@ -238,7 +238,7 @@ export default class AddDatabasePane extends ContextualPaneBase { userContext.portalEnv, this.isFreeTierAccount(), this.container.isFirstResourceCreated(), - this.container.defaultExperience(), + userContext.apiType, false ); }); diff --git a/src/Explorer/Tabs/DocumentsTab.test.ts b/src/Explorer/Tabs/DocumentsTab.test.ts index df46d171a..ac3cd5d85 100644 --- a/src/Explorer/Tabs/DocumentsTab.test.ts +++ b/src/Explorer/Tabs/DocumentsTab.test.ts @@ -1,10 +1,11 @@ import * as ko from "knockout"; +import { DatabaseAccount } from "../../Contracts/DataModels"; import * as ViewModels from "../../Contracts/ViewModels"; -import * as Constants from "../../Common/Constants"; -import DocumentsTab from "./DocumentsTab"; +import { updateUserContext } from "../../UserContext"; +import { CommandButtonComponentProps } from "../Controls/CommandButton/CommandButtonComponent"; import Explorer from "../Explorer"; import DocumentId from "../Tree/DocumentId"; -import { CommandButtonComponentProps } from "../Controls/CommandButton/CommandButtonComponent"; +import DocumentsTab from "./DocumentsTab"; describe("Documents tab", () => { describe("buildQuery", () => { @@ -29,7 +30,13 @@ describe("Documents tab", () => { const explorer = new Explorer(); const mongoExplorer = new Explorer(); - mongoExplorer.defaultExperience(Constants.DefaultAccountExperience.MongoDB); + updateUserContext({ + databaseAccount: { + properties: { + capabilities: [{ name: "EnableGremlin" }], + }, + } as DatabaseAccount, + }); const collectionWithoutPartitionKey = ({ id: ko.observable("foo"), diff --git a/src/Explorer/Tabs/NotebookV2Tab.ts b/src/Explorer/Tabs/NotebookV2Tab.ts index a7c2242c2..91779e9dd 100644 --- a/src/Explorer/Tabs/NotebookV2Tab.ts +++ b/src/Explorer/Tabs/NotebookV2Tab.ts @@ -56,7 +56,7 @@ export default class NotebookTabV2 extends TabsBase { NotebookTabV2.clientManager = new NotebookClientV2({ connectionInfo: this.container.notebookServerInfo(), databaseAccountName: this.container.databaseAccount().name, - defaultExperience: this.container.defaultExperience(), + defaultExperience: userContext.apiType, contentProvider: this.container.notebookManager?.notebookContentProvider, }); } From 0b1ac8f44550e911e2dcf7576838904cd9fde065 Mon Sep 17 00:00:00 2001 From: Steve Faulkner Date: Sun, 25 Apr 2021 15:57:00 -0700 Subject: [PATCH 2/5] WIP --- .../Settings/__snapshots__/SettingsComponent.test.tsx.snap | 4 ---- .../SettingsPane/__snapshots__/SettingsPane.test.tsx.snap | 2 -- .../__snapshots__/UploadItemsPane.test.tsx.snap | 1 - .../DeleteDatabaseConfirmationPanel.test.tsx.snap | 1 - src/Utils/PricingUtils.ts | 3 ++- 5 files changed, 2 insertions(+), 9 deletions(-) diff --git a/src/Explorer/Controls/Settings/__snapshots__/SettingsComponent.test.tsx.snap b/src/Explorer/Controls/Settings/__snapshots__/SettingsComponent.test.tsx.snap index 790b14b95..33eaf9d65 100644 --- a/src/Explorer/Controls/Settings/__snapshots__/SettingsComponent.test.tsx.snap +++ b/src/Explorer/Controls/Settings/__snapshots__/SettingsComponent.test.tsx.snap @@ -442,7 +442,6 @@ exports[`SettingsComponent renders 1`] = ` }, "databaseAccount": [Function], "databases": [Function], - "defaultExperience": [Function], "deleteCollectionText": [Function], "deleteDatabaseText": [Function], "graphStylingPane": GraphStylingPane { @@ -1002,7 +1001,6 @@ exports[`SettingsComponent renders 1`] = ` }, "databaseAccount": [Function], "databases": [Function], - "defaultExperience": [Function], "deleteCollectionText": [Function], "deleteDatabaseText": [Function], "graphStylingPane": GraphStylingPane { @@ -1575,7 +1573,6 @@ exports[`SettingsComponent renders 1`] = ` }, "databaseAccount": [Function], "databases": [Function], - "defaultExperience": [Function], "deleteCollectionText": [Function], "deleteDatabaseText": [Function], "graphStylingPane": GraphStylingPane { @@ -2135,7 +2132,6 @@ exports[`SettingsComponent renders 1`] = ` }, "databaseAccount": [Function], "databases": [Function], - "defaultExperience": [Function], "deleteCollectionText": [Function], "deleteDatabaseText": [Function], "graphStylingPane": GraphStylingPane { diff --git a/src/Explorer/Panes/SettingsPane/__snapshots__/SettingsPane.test.tsx.snap b/src/Explorer/Panes/SettingsPane/__snapshots__/SettingsPane.test.tsx.snap index 7d961e918..7ad24cd8d 100644 --- a/src/Explorer/Panes/SettingsPane/__snapshots__/SettingsPane.test.tsx.snap +++ b/src/Explorer/Panes/SettingsPane/__snapshots__/SettingsPane.test.tsx.snap @@ -418,7 +418,6 @@ exports[`Settings Pane should render Default properly 1`] = ` }, "databaseAccount": [Function], "databases": [Function], - "defaultExperience": [Function], "deleteCollectionText": [Function], "deleteDatabaseText": [Function], "graphStylingPane": GraphStylingPane { @@ -1101,7 +1100,6 @@ exports[`Settings Pane should render Gremlin properly 1`] = ` }, "databaseAccount": [Function], "databases": [Function], - "defaultExperience": [Function], "deleteCollectionText": [Function], "deleteDatabaseText": [Function], "graphStylingPane": GraphStylingPane { diff --git a/src/Explorer/Panes/UploadItemsPane/__snapshots__/UploadItemsPane.test.tsx.snap b/src/Explorer/Panes/UploadItemsPane/__snapshots__/UploadItemsPane.test.tsx.snap index 084047ff8..085defcbd 100644 --- a/src/Explorer/Panes/UploadItemsPane/__snapshots__/UploadItemsPane.test.tsx.snap +++ b/src/Explorer/Panes/UploadItemsPane/__snapshots__/UploadItemsPane.test.tsx.snap @@ -418,7 +418,6 @@ exports[`Upload Items Pane should render Default properly 1`] = ` }, "databaseAccount": [Function], "databases": [Function], - "defaultExperience": [Function], "deleteCollectionText": [Function], "deleteDatabaseText": [Function], "graphStylingPane": GraphStylingPane { diff --git a/src/Explorer/Panes/__snapshots__/DeleteDatabaseConfirmationPanel.test.tsx.snap b/src/Explorer/Panes/__snapshots__/DeleteDatabaseConfirmationPanel.test.tsx.snap index f4e22d048..5ef8d7911 100644 --- a/src/Explorer/Panes/__snapshots__/DeleteDatabaseConfirmationPanel.test.tsx.snap +++ b/src/Explorer/Panes/__snapshots__/DeleteDatabaseConfirmationPanel.test.tsx.snap @@ -419,7 +419,6 @@ exports[`Delete Database Confirmation Pane submit() Should call delete database }, "databaseAccount": [Function], "databases": [Function], - "defaultExperience": [Function], "deleteCollectionText": [Function], "deleteDatabaseText": [Function], "graphStylingPane": GraphStylingPane { diff --git a/src/Utils/PricingUtils.ts b/src/Utils/PricingUtils.ts index 75caf2d51..3719f6dc5 100644 --- a/src/Utils/PricingUtils.ts +++ b/src/Utils/PricingUtils.ts @@ -1,5 +1,6 @@ import { DefaultAccountExperienceType } from "../DefaultAccountExperienceType"; import * as Constants from "../Shared/Constants"; +import { userContext } from "../UserContext"; import * as AutoPilotUtils from "../Utils/AutoPilotUtils"; interface ComputeRUUsagePriceHourlyArgs { @@ -262,7 +263,7 @@ export function getUpsellMessage( serverId = "default", isFreeTier = false, isFirstResourceCreated = false, - defaultExperience: string, + defaultExperience: typeof userContext.apiType, isCollection: boolean ): string { if (isFreeTier) { From 7b5b752d9c347d835085c0e4ba6c42a83b9a4e57 Mon Sep 17 00:00:00 2001 From: Steve Faulkner Date: Wed, 28 Apr 2021 18:46:51 -0500 Subject: [PATCH 3/5] Fix strict --- src/Explorer/Tabs/NotebookTabBase.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Explorer/Tabs/NotebookTabBase.ts b/src/Explorer/Tabs/NotebookTabBase.ts index 440888982..096328fda 100644 --- a/src/Explorer/Tabs/NotebookTabBase.ts +++ b/src/Explorer/Tabs/NotebookTabBase.ts @@ -30,7 +30,7 @@ export default class NotebookTabBase extends TabsBase { NotebookTabBase.clientManager = new NotebookClientV2({ connectionInfo: this.container.notebookServerInfo(), databaseAccountName: this.container.databaseAccount().name, - defaultExperience: userContext.defaultExperience, + defaultExperience: userContext.apiType, contentProvider: this.container.notebookManager?.notebookContentProvider, }); } From 3a6c7f9f945eebdc4b44d8c434cf09501e7b7433 Mon Sep 17 00:00:00 2001 From: Steve Faulkner Date: Wed, 28 Apr 2021 18:59:13 -0500 Subject: [PATCH 4/5] Fixes --- src/Platform/Hosted/Authorization.ts | 4 +--- src/Shared/DefaultExperienceUtility.test.ts | 16 +++++++--------- src/Shared/DefaultExperienceUtility.ts | 14 +++++++------- src/UserContext.ts | 2 +- src/Utils/PricingUtils.ts | 2 +- 5 files changed, 17 insertions(+), 21 deletions(-) diff --git a/src/Platform/Hosted/Authorization.ts b/src/Platform/Hosted/Authorization.ts index 64cd00a72..da9bfb6e1 100644 --- a/src/Platform/Hosted/Authorization.ts +++ b/src/Platform/Hosted/Authorization.ts @@ -1,4 +1,3 @@ -import Q from "q"; import * as Constants from "../../Common/Constants"; import { configContext } from "../../ConfigContext"; import * as DataModels from "../../Contracts/DataModels"; @@ -21,8 +20,7 @@ export default class AuthHeadersUtil { const databaseAccount = userContext.databaseAccount; const subscriptionId: string = userContext.subscriptionId; const resourceGroup = userContext.resourceGroup; - const defaultExperience: string = DefaultExperienceUtility.getDefaultExperienceFromDatabaseAccount(databaseAccount); - const apiKind: DataModels.ApiKind = DefaultExperienceUtility.getApiKindFromDefaultExperience(defaultExperience); + const apiKind: DataModels.ApiKind = DefaultExperienceUtility.getApiKindFromDefaultExperience(userContext.apiType); const accountEndpoint = (databaseAccount && databaseAccount.properties.documentEndpoint) || ""; const sid = subscriptionId || ""; const rg = resourceGroup || ""; diff --git a/src/Shared/DefaultExperienceUtility.test.ts b/src/Shared/DefaultExperienceUtility.test.ts index ece1d6e88..8473a0655 100644 --- a/src/Shared/DefaultExperienceUtility.test.ts +++ b/src/Shared/DefaultExperienceUtility.test.ts @@ -1,6 +1,6 @@ import * as Constants from "../Common/Constants"; import * as DataModels from "../Contracts/DataModels"; -import * as ViewModels from "../Contracts/ViewModels"; +import { userContext } from "../UserContext"; import { DefaultExperienceUtility } from "./DefaultExperienceUtility"; describe("Default Experience Utility", () => { @@ -38,31 +38,29 @@ describe("Default Experience Utility", () => { }); describe("getApiKindFromDefaultExperience()", () => { - function runScenario(defaultExperience: string, expectedApiKind: number): void { + function runScenario(defaultExperience: typeof userContext.apiType, expectedApiKind: number): void { const resolvedApiKind = DefaultExperienceUtility.getApiKindFromDefaultExperience(defaultExperience); expect(resolvedApiKind).toEqual(expectedApiKind); } describe("On SQL", () => { - it("should return SQL", () => runScenario(Constants.DefaultAccountExperience.DocumentDB, DataModels.ApiKind.SQL)); + it("should return SQL", () => runScenario("SQL", DataModels.ApiKind.SQL)); }); describe("On MongoDB", () => { - it("should return MongoDB", () => - runScenario(Constants.DefaultAccountExperience.MongoDB, DataModels.ApiKind.MongoDB)); + it("should return MongoDB", () => runScenario("Mongo", DataModels.ApiKind.MongoDB)); }); describe("On Table", () => { - it("should return Table", () => runScenario(Constants.DefaultAccountExperience.Table, DataModels.ApiKind.Table)); + it("should return Table", () => runScenario("Tables", DataModels.ApiKind.Table)); }); describe("On Cassandra", () => { - it("should return Cassandra", () => - runScenario(Constants.DefaultAccountExperience.Cassandra, DataModels.ApiKind.Cassandra)); + it("should return Cassandra", () => runScenario("Cassandra", DataModels.ApiKind.Cassandra)); }); describe("On Graph", () => { - it("should return Graph", () => runScenario(Constants.DefaultAccountExperience.Graph, DataModels.ApiKind.Graph)); + it("should return Graph", () => runScenario("Gremlin", DataModels.ApiKind.Graph)); }); describe("On null", () => { diff --git a/src/Shared/DefaultExperienceUtility.ts b/src/Shared/DefaultExperienceUtility.ts index bee402c1c..625e24e2c 100644 --- a/src/Shared/DefaultExperienceUtility.ts +++ b/src/Shared/DefaultExperienceUtility.ts @@ -1,6 +1,7 @@ import * as _ from "underscore"; import * as Constants from "../Common/Constants"; import * as DataModels from "../Contracts/DataModels"; +import { userContext } from "../UserContext"; export class DefaultExperienceUtility { public static getDefaultExperienceFromDatabaseAccount(databaseAccount: DataModels.DatabaseAccount): string | null { @@ -15,22 +16,21 @@ export class DefaultExperienceUtility { return DefaultExperienceUtility._getDefaultExperience(kind, capabilities); } - public static getApiKindFromDefaultExperience(defaultExperience: string): DataModels.ApiKind { + public static getApiKindFromDefaultExperience(defaultExperience: typeof userContext.apiType): DataModels.ApiKind { if (!defaultExperience) { return DataModels.ApiKind.SQL; } switch (defaultExperience) { - case Constants.DefaultAccountExperience.DocumentDB: + case "SQL": return DataModels.ApiKind.SQL; - case Constants.DefaultAccountExperience.MongoDB: - case Constants.DefaultAccountExperience.ApiForMongoDB: + case "Mongo": return DataModels.ApiKind.MongoDB; - case Constants.DefaultAccountExperience.Table: + case "Tables": return DataModels.ApiKind.Table; - case Constants.DefaultAccountExperience.Cassandra: + case "Cassandra": return DataModels.ApiKind.Cassandra; - case Constants.DefaultAccountExperience.Graph: + case "Gremlin": return DataModels.ApiKind.Graph; default: return DataModels.ApiKind.SQL; diff --git a/src/UserContext.ts b/src/UserContext.ts index 20596249e..4d42c0254 100644 --- a/src/UserContext.ts +++ b/src/UserContext.ts @@ -27,7 +27,7 @@ interface UserContext { readonly hasWriteAccess: boolean; } -type ApiType = "SQL" | "Mongo" | "Gremlin" | "Tables" | "Cassandra"; +export type ApiType = "SQL" | "Mongo" | "Gremlin" | "Tables" | "Cassandra"; export type PortalEnv = "localhost" | "blackforest" | "fairfax" | "mooncake" | "prod" | "dev"; const features = extractFeatures(); diff --git a/src/Utils/PricingUtils.ts b/src/Utils/PricingUtils.ts index b964a6f06..61c06692e 100644 --- a/src/Utils/PricingUtils.ts +++ b/src/Utils/PricingUtils.ts @@ -282,7 +282,7 @@ export function getUpsellMessage( } } -export function getCollectionName(defaultExperience: string): string { +export function getCollectionName(defaultExperience: typeof userContext.apiType): string { switch (defaultExperience) { case "SQL": return "container"; From f048f21defe196691bf1dec92dac41e28cd1a461 Mon Sep 17 00:00:00 2001 From: hardiknai-techm Date: Thu, 29 Apr 2021 08:46:59 +0530 Subject: [PATCH 5/5] resolve format issue --- .../__snapshots__/UploadItemsPane.test.tsx.snap | 4 +--- src/Explorer/Tabs/DocumentsTab.test.ts | 12 ++++++------ 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/Explorer/Panes/UploadItemsPane/__snapshots__/UploadItemsPane.test.tsx.snap b/src/Explorer/Panes/UploadItemsPane/__snapshots__/UploadItemsPane.test.tsx.snap index 522ea998c..8417b8705 100644 --- a/src/Explorer/Panes/UploadItemsPane/__snapshots__/UploadItemsPane.test.tsx.snap +++ b/src/Explorer/Panes/UploadItemsPane/__snapshots__/UploadItemsPane.test.tsx.snap @@ -516,9 +516,7 @@ exports[`Upload Items Pane should render Default properly 1`] = ` multiple={true} onUpload={[Function]} tabIndex={0} - tooltip="Select one or more JSON files to upload. Each file can contain a single JSON document or an array of JSON - documents. The combined size of all files in an individual upload operation must be less than 2 MB. You - can perform multiple upload operations for larger data sets." + tooltip="Select one or more JSON files to upload. Each file can contain a single JSON document or an array of JSON documents. The combined size of all files in an individual upload operation must be less than 2 MB. You can perform multiple upload operations for larger data sets." /> diff --git a/src/Explorer/Tabs/DocumentsTab.test.ts b/src/Explorer/Tabs/DocumentsTab.test.ts index 7ef4bcd68..6321a4afb 100644 --- a/src/Explorer/Tabs/DocumentsTab.test.ts +++ b/src/Explorer/Tabs/DocumentsTab.test.ts @@ -17,7 +17,7 @@ describe("Documents tab", () => { title: "", tabPath: "", hashLocation: "", - onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => { }, + onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => {}, }); expect(documentsTab.buildQuery("")).toContain("select"); @@ -93,7 +93,7 @@ describe("Documents tab", () => { title: "", tabPath: "", hashLocation: "", - onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => { }, + onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => {}, }); expect(documentsTab.showPartitionKey).toBe(false); @@ -108,7 +108,7 @@ describe("Documents tab", () => { title: "", tabPath: "", hashLocation: "", - onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => { }, + onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => {}, }); expect(documentsTab.showPartitionKey).toBe(false); @@ -123,7 +123,7 @@ describe("Documents tab", () => { title: "", tabPath: "", hashLocation: "", - onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => { }, + onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => {}, }); expect(documentsTab.showPartitionKey).toBe(true); @@ -141,7 +141,7 @@ describe("Documents tab", () => { title: "", tabPath: "", hashLocation: "", - onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => { }, + onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => {}, }); expect(documentsTab.showPartitionKey).toBe(false); @@ -156,7 +156,7 @@ describe("Documents tab", () => { title: "", tabPath: "", hashLocation: "", - onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => { }, + onUpdateTabsButtons: (buttons: CommandButtonComponentProps[]): void => {}, }); expect(documentsTab.showPartitionKey).toBe(true);