import React from "react"; import { View } from "react-native"; import { render } from "@testing-library/react-native"; import { HookRenderer } from ".."; jest.mock("@applicaster/zapp-react-native-utils/reactUtils", () => ({ isTV: jest.fn(() => false), })); jest.mock("@applicaster/zapp-react-native-utils/reactHooks/navigation", () => ({ useBackHandler: jest.fn(), useIsNavBarVisible: jest.fn(() => true), })); jest.mock( "@applicaster/zapp-react-native-utils/analyticsUtils/helpers/hooks", () => ({ useHookAnalytics: jest.fn(), }) ); jest.mock("@applicaster/zapp-react-native-utils/reactHooks", () => ({ useSetNavbarState: jest.fn(() => ({ setVisible: jest.fn(), })), })); describe("HookRenderer", () => { it("returns null when hookPlugin is missing", () => { const { toJSON } = render( ); expect(toJSON()).toBeNull(); }); it("passes Hook presentationType to rendered hook component", () => { const HookComponent = (props) => ( ); const { getByTestId } = render( ); expect(getByTestId("hook-component").props.presentationType).toBe("Hook"); }); });