UNPKG

@netdata/netdata-ui

Version:
45 lines 1.96 kB
import React from "react"; import { renderWithProviders, act } from "testUtilities"; import { PortalSidebar } from "./portaled-sidebar"; var TEST_ANCHOR = "test text"; describe("PortalSidebar component test", function () { it(" * should render with no props", function () { var _renderWithProviders = renderWithProviders(/*#__PURE__*/React.createElement(PortalSidebar, null)), container = _renderWithProviders.container; // somehow queryselector does not searches for monotags like <aside /> var aside = container && container.nextSibling && container.nextSibling.firstChild; expect(aside && aside.nodeName).toBe("ASIDE"); }); it(" * should render on the right side", function () { var _renderWithProviders2 = renderWithProviders(/*#__PURE__*/React.createElement(PortalSidebar, { right: true }, TEST_ANCHOR)), queryByText = _renderWithProviders2.queryByText; var result = queryByText(TEST_ANCHOR); expect(result && result.textContent).not.toBeNull(); }); it(" * should render with children", function () { var _renderWithProviders3 = renderWithProviders(/*#__PURE__*/React.createElement(PortalSidebar, null, TEST_ANCHOR)), queryByText = _renderWithProviders3.queryByText; var result = queryByText(TEST_ANCHOR); expect(result && result.textContent).toBe(TEST_ANCHOR); }); it(" * should be closed after `Esc` pressed", function () { var handler = jest.fn(); var _renderWithProviders4 = renderWithProviders(/*#__PURE__*/React.createElement(PortalSidebar, { closeOnEsc: true, onClose: handler }, TEST_ANCHOR)), queryByText = _renderWithProviders4.queryByText; var result = queryByText(TEST_ANCHOR); if (result) { act(function () { var event = new KeyboardEvent("keydown", { keyCode: 27 }); document.dispatchEvent(event); }); } expect(handler).toHaveBeenCalledTimes(1); }); });