UNPKG

@applicaster/zapp-react-native-ui-components

Version:

Applicaster Zapp React Native ui components for the Quick Brick App

82 lines (62 loc) 1.99 kB
const { LiveImageManager } = require("../LiveImageManager"); describe("LiveImageManager", () => { it("should subscribe to LiveImageManager events", () => { const sampleListener = { id: "1", listener: {}, }; LiveImageManager.instance.addListener(sampleListener); expect(LiveImageManager.instance.listeners["1"]).toEqual( sampleListener.listener ); }); it("should unsubscribe from LiveImageManager events with unsubscribe callback", () => { const sampleListener = { id: "1", listener: {}, }; const unsubscribe = LiveImageManager.instance.addListener(sampleListener); expect(LiveImageManager.instance.listeners["1"]).toEqual( sampleListener.listener ); unsubscribe(); expect(LiveImageManager.instance.listeners["1"]).not.toBeDefined(); }); it("should unsubscribe from LiveImageManager events with removeListener", () => { const sampleListener = { id: "1", listener: {}, }; LiveImageManager.instance.addListener(sampleListener); expect(LiveImageManager.instance.listeners["1"]).toEqual( sampleListener.listener ); LiveImageManager.instance.removeListener("1"); expect(LiveImageManager.instance.listeners["1"]).not.toBeDefined(); }); it("should invoke subscription on LiveImageManager events with invokeListenersUpdate", () => { const mockOnEnd1 = jest.fn(); const mockOnEnd2 = jest.fn(); LiveImageManager.instance.addListener({ id: "1", listener: { onEnd: mockOnEnd1, }, }); LiveImageManager.instance.addListener({ id: "2", listener: { onEnd: mockOnEnd2, }, }); const eventBody = { playerId: "000", }; LiveImageManager.instance.invokeListenersUpdate({ callbackName: "onEnd", event: eventBody, }); expect(mockOnEnd1).toHaveBeenCalledWith(eventBody); expect(mockOnEnd2).toHaveBeenCalledWith(eventBody); }); });