diff --git a/src/renderer/components/drawer/__snapshots__/drawer-param-toggler.test.tsx.snap b/src/renderer/components/drawer/__snapshots__/drawer-param-toggler.test.tsx.snap new file mode 100644 index 0000000000..7b4c9c22e4 --- /dev/null +++ b/src/renderer/components/drawer/__snapshots__/drawer-param-toggler.test.tsx.snap @@ -0,0 +1,134 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[` after clicking the toggle after clicking the toggle again renders 1`] = ` + +
+
+
+
+ Foo +
+ +
+
+
+
+ +`; + +exports[` after clicking the toggle renders 1`] = ` + +
+
+
+
+ Foo +
+ +
+
+
+
+
+
+ +`; + +exports[` renders 1`] = ` + +
+
+
+
+ Foo +
+ +
+
+
+
+ +`; diff --git a/src/renderer/components/drawer/drawer-param-toggler.test.tsx b/src/renderer/components/drawer/drawer-param-toggler.test.tsx new file mode 100644 index 0000000000..e9d5104afe --- /dev/null +++ b/src/renderer/components/drawer/drawer-param-toggler.test.tsx @@ -0,0 +1,59 @@ +/** + * Copyright (c) OpenLens Authors. All rights reserved. + * Licensed under MIT License. See LICENSE in root directory for more information. + */ + +import type { RenderResult } from "@testing-library/react"; +import { render } from "@testing-library/react"; +import React from "react"; +import { DrawerParamToggler } from "./drawer-param-toggler"; + +describe("", () => { + let result: RenderResult; + + beforeEach(() => { + result = render(( + +
+
+ )); + }); + + it("renders", () => { + expect(result.baseElement).toMatchSnapshot(); + }); + + it("does not render children by default", () => { + expect(result.queryByTestId("drawer-child")).toBeNull(); + }); + + describe("after clicking the toggle", () => { + beforeEach(() => { + result.getByTestId("drawer-param-toggler").click(); + }); + + it("renders", () => { + expect(result.baseElement).toMatchSnapshot(); + }); + + it("renders children", () => { + expect(result.queryByTestId("drawer-child")).not.toBeNull(); + }); + + describe("after clicking the toggle again", () => { + beforeEach(() => { + result.getByTestId("drawer-param-toggler").click(); + }); + + it("renders", () => { + expect(result.baseElement).toMatchSnapshot(); + }); + + it("does not children", () => { + expect(result.queryByTestId("drawer-child")).toBeNull(); + }); + }); + }); +}); diff --git a/src/renderer/components/drawer/drawer-param-toggler.tsx b/src/renderer/components/drawer/drawer-param-toggler.tsx index 44d813a25e..42d4c056e9 100644 --- a/src/renderer/components/drawer/drawer-param-toggler.tsx +++ b/src/renderer/components/drawer/drawer-param-toggler.tsx @@ -33,13 +33,17 @@ export class DrawerParamToggler extends React.Component
{label}
-
+
{link}
- {children} + {open && children}
);