diff --git a/src/behaviours/add-cluster/navigation-using-application-menu.test.ts b/src/behaviours/add-cluster/navigation-using-application-menu.test.ts index cc7749a7e9..45495d78e9 100644 --- a/src/behaviours/add-cluster/navigation-using-application-menu.test.ts +++ b/src/behaviours/add-cluster/navigation-using-application-menu.test.ts @@ -36,7 +36,7 @@ describe("add-cluster - navigation using application menu", () => { describe("when navigating to add cluster using application menu", () => { beforeEach(() => { - applicationBuilder.applicationMenu.click("file.add-cluster"); + applicationBuilder.menu.click("file.add-cluster"); }); it("renders", () => { diff --git a/src/behaviours/extensions/navigation-using-application-menu.test.ts b/src/behaviours/extensions/navigation-using-application-menu.test.ts index ef714a75d3..f6c423c77c 100644 --- a/src/behaviours/extensions/navigation-using-application-menu.test.ts +++ b/src/behaviours/extensions/navigation-using-application-menu.test.ts @@ -47,7 +47,7 @@ describe("extensions - navigation using application menu", () => { describe("when navigating to extensions using application menu", () => { beforeEach(() => { - applicationBuilder.applicationMenu.click("root.extensions"); + applicationBuilder.menu.click("root.extensions"); }); it("focuses the window", () => { diff --git a/src/behaviours/preferences/navigation-using-application-menu.test.ts b/src/behaviours/preferences/navigation-using-application-menu.test.ts index 42664dbfdf..96b3b34c89 100644 --- a/src/behaviours/preferences/navigation-using-application-menu.test.ts +++ b/src/behaviours/preferences/navigation-using-application-menu.test.ts @@ -48,7 +48,7 @@ describe("preferences - navigation using application menu", () => { describe("when navigating to preferences using application menu", () => { beforeEach(() => { - applicationBuilder.applicationMenu.click("root.preferences"); + applicationBuilder.menu.click("root.preferences"); }); it("renders", () => { diff --git a/src/behaviours/welcome/navigation-using-application-menu.test.ts b/src/behaviours/welcome/navigation-using-application-menu.test.ts index daab31c40e..d2be394f16 100644 --- a/src/behaviours/welcome/navigation-using-application-menu.test.ts +++ b/src/behaviours/welcome/navigation-using-application-menu.test.ts @@ -32,7 +32,7 @@ describe("welcome - navigation using application menu", () => { describe("when navigating to welcome using application menu", () => { beforeEach(() => { - applicationBuilder.applicationMenu.click("help.welcome"); + applicationBuilder.menu.click("help.welcome"); }); it("renders", () => { diff --git a/src/renderer/components/test-utils/get-application-builder.tsx b/src/renderer/components/test-utils/get-application-builder.tsx index deaa51eb0b..d94fd2da26 100644 --- a/src/renderer/components/test-utils/get-application-builder.tsx +++ b/src/renderer/components/test-utils/get-application-builder.tsx @@ -33,29 +33,37 @@ import preferenceNavigationItemsInjectable from "../+preferences/preferences-nav import navigateToPreferencesInjectable from "../../../common/front-end-routing/routes/preferences/navigate-to-preferences.injectable"; import type { MenuItemOpts } from "../../../main/menu/application-menu-items.injectable"; import applicationMenuItemsInjectable from "../../../main/menu/application-menu-items.injectable"; +import showAboutInjectable from "../../../main/menu/show-about.injectable"; type Callback = (dis: DiContainers) => void | Promise; +export interface ApplicationMenu { + click: (path: string) => void; +} + +export interface ApplicationPreferences { + close: () => void; + navigate: () => void; + navigation: { + click: (id: string) => void; + }; +} + +export interface ApplicationActions { + showAbout: jest.MockedFunction<() => void>; +} + export interface ApplicationBuilder { - dis: DiContainers; setEnvironmentToClusterFrame: () => ApplicationBuilder; addExtensions: (...extensions: LensRendererExtension[]) => Promise; allowKubeResource: (resourceName: KubeResource) => ApplicationBuilder; beforeSetups: (callback: Callback) => ApplicationBuilder; beforeRender: (callback: Callback) => ApplicationBuilder; render: () => Promise; - - applicationMenu: { - click: (path: string) => void; - }; - - preferences: { - close: () => void; - navigate: () => void; - navigation: { - click: (id: string) => void; - }; - }; + readonly dis: DiContainers; + readonly menu: ApplicationMenu; + readonly preferences: ApplicationPreferences; + readonly actions: ApplicationActions; } interface DiContainers { @@ -121,13 +129,19 @@ export const getApplicationBuilder = () => { computed((): LensMainExtension[] => []), ); + const showAbout = jest.fn(); + + mainDi.override(showAboutInjectable, () => showAbout); + let allowedResourcesState: IObservableArray; let rendered: RenderResult; const builder: ApplicationBuilder = { dis, - - applicationMenu: { + actions: { + showAbout, + }, + menu: { click: (path: string) => { const applicationMenuItems = mainDi.inject( applicationMenuItemsInjectable,