From 8bc7e91ed74f7790b3dda510edf8a61fcdbb391e Mon Sep 17 00:00:00 2001 From: Tharun Rajendran Date: Thu, 31 Mar 2022 22:19:50 +0530 Subject: [PATCH] chore(test): rewritten target option test using rtl (#4885) --- .../TargetOption/TargetOption.tests.jsx | 42 ++++++++++--------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/frontend/components/forms/fields/SelectTargetsDropdown/TargetOption/TargetOption.tests.jsx b/frontend/components/forms/fields/SelectTargetsDropdown/TargetOption/TargetOption.tests.jsx index f028aeb5bb..0d508996c6 100644 --- a/frontend/components/forms/fields/SelectTargetsDropdown/TargetOption/TargetOption.tests.jsx +++ b/frontend/components/forms/fields/SelectTargetsDropdown/TargetOption/TargetOption.tests.jsx @@ -1,54 +1,56 @@ import React from "react"; -import { mount } from "enzyme"; -import { noop } from "lodash"; +import { fireEvent, render, screen } from "@testing-library/react"; import { hostStub, labelStub } from "test/stubs"; import TargetOption from "./TargetOption"; describe("TargetOption - component", () => { + const onMoreInfoClickSpy = jest.fn(); + const onMoreInfoClick = () => { + return onMoreInfoClickSpy; + }; it("renders a label option for label targets", () => { const count = 5; - const component = mount( - + const { container } = render( + ); - expect(component.find(".is-label").length).toEqual(1); - expect(component.text()).toContain(`${count} hosts`); + expect(container.querySelectorAll(".is-label").length).toEqual(1); + expect(screen.getByText(`${count} hosts`)).toBeInTheDocument(); }); it("renders a host option for host targets", () => { - const component = mount( + const { container } = render( ); - expect(component.find(".is-host").length).toEqual(1); - expect(component.find("i.fleeticon-windows").length).toEqual(1); - expect(component.text()).toContain(hostStub.primary_ip); + expect(container.querySelectorAll(".is-host").length).toEqual(1); + expect(container.querySelectorAll("i.fleeticon-windows").length).toEqual(1); + expect(screen.getByText(hostStub.primary_ip)).toBeInTheDocument(); }); it("calls the onSelect prop when + icon button is clicked", () => { const onSelectSpy = jest.fn(); - const component = mount( + const { container } = render( ); - component.find(".target-option__add-btn").simulate("click"); + fireEvent.click(container.querySelector(".target-option__add-btn")); expect(onSelectSpy).toHaveBeenCalled(); }); it("calls the onMoreInfoClick prop when the item content is clicked", () => { - const onMoreInfoClickSpy = jest.fn(); - const onMoreInfoClick = () => { - return onMoreInfoClickSpy; - }; - const component = mount( + const { container } = render( ); - component.find(".target-option__target-content").simulate("click"); + fireEvent.click(container.querySelector(".target-option__target-content")); expect(onMoreInfoClickSpy).toHaveBeenCalled(); }); });