import { DyFM_SocketEvent, DyFM_SocketEvent_Key } from '@futdevpro/fsm-dynamo/socket'; import { DyNTS_SocketClientService_Params } from '../socket/_models/socket-client-service-params.control-model'; import { SocketClient_Mock } from './socket-client.mock'; describe('| SocketClient_Mock', () => { let socketClientMock: SocketClient_Mock; beforeEach(() => { socketClientMock = SocketClient_Mock.getInstance(); }); it('| should create an instance of SocketClient_Mock', () => { expect(socketClientMock).toBeTruthy(); }); it('| should return the correct incoming events', () => { const events = socketClientMock.getIncomingEvents(); expect(events.length).toBe(1); expect(events[0]).toEqual(jasmine.any(DyFM_SocketEvent)); expect(events[0].name).toBe('connect'); expect(events[0].eventKey).toBe(DyFM_SocketEvent_Key.incomingNewConnection); expect(events[0].tasks.length).toBe(1); expect(events[0].tasks[0]).toEqual(jasmine.any(Function)); }); it('| should return the correct parameters', () => { const params = socketClientMock.getParams(); expect(params).toEqual(jasmine.any(DyNTS_SocketClientService_Params)); expect(params.service).toBe('-test-socket-target-'); expect(params.name).toBe('socket-client-mock'); expect(params.port).toBe(0); expect(params.socketOptions.reconnection).toBeTrue(); }); });