From c9f8765a490dd155c22fd3a577ed3c9abe83b789 Mon Sep 17 00:00:00 2001 From: Alex Andreev Date: Thu, 26 Aug 2021 16:37:36 +0300 Subject: [PATCH] Updating tests Signed-off-by: Alex Andreev --- .../__tests__/delete-cluster-dialog.test.tsx | 33 +++++++++++++++++-- .../delete-cluster-dialog.tsx | 3 +- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/src/renderer/components/delete-cluster-dialog/__tests__/delete-cluster-dialog.test.tsx b/src/renderer/components/delete-cluster-dialog/__tests__/delete-cluster-dialog.test.tsx index 56180644d4..faf68fe075 100644 --- a/src/renderer/components/delete-cluster-dialog/__tests__/delete-cluster-dialog.test.tsx +++ b/src/renderer/components/delete-cluster-dialog/__tests__/delete-cluster-dialog.test.tsx @@ -28,6 +28,12 @@ import selectEvent from "react-select-event"; import { Cluster } from "../../../../main/cluster"; import { DeleteClusterDialog } from "../delete-cluster-dialog"; +jest.mock("electron", () => ({ + app: { + getPath: () => "tmp", + }, +})); + const kubeconfig = ` apiVersion: v1 clusters: @@ -96,7 +102,7 @@ describe("", () => { DeleteClusterDialog.open({ cluster, config }); const { getByText } = render(); - const message = "The contents of your kubeconfig file will be changed!"; + const message = "The contents of kubeconfig file will be changed!"; expect(getByText(message)).toBeInstanceOf(HTMLElement); }); @@ -118,7 +124,7 @@ describe("", () => { expect(getByTestId("context-warning")).toBeInstanceOf(HTMLElement); }); - it("shows context switcher", async () => { + it("shows context switcher when deleting current cluster", async () => { const cluster = new Cluster({ id: "other-cluster", contextName: "other-context", @@ -131,7 +137,28 @@ describe("", () => { DeleteClusterDialog.open({ cluster, config }); const { getByText } = render(); - const link = getByText("Replace current context"); + + expect(getByText("Select...")).toBeInTheDocument(); + selectEvent.openMenu(getByText("Select...")); + + expect(getByText("test")).toBeInTheDocument(); + expect(getByText("test2")).toBeInTheDocument(); + }); + + it("shows context switcher after checkbox click", async () => { + const cluster = new Cluster({ + id: "some-cluster", + contextName: "test", + preferences: { + clusterName: "test" + }, + kubeConfigPath: "./temp-kube-config", + }); + + DeleteClusterDialog.open({ cluster, config }); + + const { getByText, getByTestId } = render(); + const link = getByTestId("context-switch"); expect(link).toBeInstanceOf(HTMLElement); fireEvent.click(link); diff --git a/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx b/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx index a6f89f0f2e..a7546dcc2a 100644 --- a/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx +++ b/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx @@ -157,7 +157,7 @@ export class DeleteClusterDialog extends React.Component { let warning: JSX.Element = null; if (this.isCurrentContext()) { - warning =

+ warning =

This will remove active context in kubeconfig. Use drop down below to select a different one.

; } else if (!isInternalKubeconfig) { @@ -196,6 +196,7 @@ export class DeleteClusterDialog extends React.Component {