diff --git a/src/behaviours/add-cluster/__snapshots__/navigation-using-application-menu.test.ts.snap b/src/behaviours/add-cluster/__snapshots__/navigation-using-application-menu.test.tsx.snap similarity index 100% rename from src/behaviours/add-cluster/__snapshots__/navigation-using-application-menu.test.ts.snap rename to src/behaviours/add-cluster/__snapshots__/navigation-using-application-menu.test.tsx.snap diff --git a/src/behaviours/add-cluster/navigation-using-application-menu.test.ts b/src/behaviours/add-cluster/navigation-using-application-menu.test.tsx similarity index 86% rename from src/behaviours/add-cluster/navigation-using-application-menu.test.ts rename to src/behaviours/add-cluster/navigation-using-application-menu.test.tsx index a54d803a88..c95d4a563b 100644 --- a/src/behaviours/add-cluster/navigation-using-application-menu.test.ts +++ b/src/behaviours/add-cluster/navigation-using-application-menu.test.tsx @@ -7,13 +7,18 @@ import type { RenderResult } from "@testing-library/react"; import type { ApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder"; import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder"; import isAutoUpdateEnabledInjectable from "../../main/is-auto-update-enabled.injectable"; +import React from "react"; // TODO: Make components free of side effects by making them deterministic -jest.mock("../../renderer/components/tooltip/tooltip"); -jest.mock("../../renderer/components/tooltip/withTooltip", () => ({ - withTooltip: (target: any) => target, +jest.mock("../../renderer/components/tooltip/tooltip", () => ({ + Tooltip: () => null, +})); +jest.mock("../../renderer/components/tooltip/withTooltip", () => ({ + withTooltip: (Target: any) => ({ tooltip, tooltipOverrideDisabled, ...props }: any) => , +})); +jest.mock("../../renderer/components/monaco-editor/monaco-editor", () => ({ + MonacoEditor: () => null, })); -jest.mock("../../renderer/components/monaco-editor/monaco-editor"); describe("add-cluster - navigation using application menu", () => { let applicationBuilder: ApplicationBuilder; diff --git a/src/renderer/components/+catalog/catalog.test.tsx b/src/renderer/components/+catalog/catalog.test.tsx index c963c8a481..e8bde796cc 100644 --- a/src/renderer/components/+catalog/catalog.test.tsx +++ b/src/renderer/components/+catalog/catalog.test.tsx @@ -26,6 +26,8 @@ import appVersionInjectable from "../../../common/get-configuration-file-model/a import type { AppEvent } from "../../../common/app-event-bus/event-bus"; import appEventBusInjectable from "../../../common/app-event-bus/app-event-bus.injectable"; import { computed } from "mobx"; +import ipcRendererInjectable from "../../app-paths/get-value-from-registered-channel/ipc-renderer/ipc-renderer.injectable"; +import { UserStore } from "../../../common/user-store"; mockWindow(); jest.mock("electron", () => ({ @@ -103,7 +105,13 @@ describe("", () => { catalogEntityItem = createMockCatalogEntity(onRun); catalogEntityRegistry = di.inject(catalogEntityRegistryInjectable); + UserStore.createInstance(); // TODO: replace with DI + di.override(catalogEntityRegistryInjectable, () => catalogEntityRegistry); + di.override(ipcRendererInjectable, () => ({ + on: jest.fn(), + invoke: jest.fn(), // TODO: replace with proper mocking via the IPC bridge + } as never)); emitEvent = jest.fn(); @@ -119,6 +127,7 @@ describe("", () => { afterEach(() => { CatalogEntityDetailRegistry.resetInstance(); + UserStore.resetInstance(); jest.clearAllMocks(); jest.restoreAllMocks(); mockFs.restore();