import BridgeFunction from '../../model/bridge/bridgeFunction'; import GetSessionData from '../../model/bridge/getSessionData'; import { MiniAppCBType } from '../../model/miniAppApi'; import { sessionStorageMock } from '../mock/sessionStorageMock'; import { BridgeCallbackHandlerMock } from './bridgeCallbackHandlerMock.test'; let call: BridgeFunction; let cbHandler: BridgeCallbackHandlerMock; beforeAll(() => { Object.defineProperty(window, 'sessionStorage', { value: sessionStorageMock, }); call = new GetSessionData(); cbHandler = new BridgeCallbackHandlerMock(); call.cbHandler = cbHandler; }); afterAll(() => { sessionStorageMock.clear(); jest.clearAllMocks(); }); test('GetSessionData - success', async () => { sessionStorageMock.setItem('key', 'value', true); await call.execute({ key: 'key' }); expect(cbHandler.messages.length).toBe(2); expect(cbHandler.messages[0]).toStrictEqual({ type: MiniAppCBType.success, payload: { key: 'value' }, }); expect(cbHandler.messages[1]).toStrictEqual({ type: MiniAppCBType.complete }); });