import { DyFM_HttpCallType } from '@futdevpro/fsm-dynamo'; import { DyNTS_Endpoint_Params } from '../../_models/control-models/endpoint-params.control-model'; import { DyNTS_Controller } from './controller.service'; class TestController extends DyNTS_Controller { setupEndpoints(): void { this.endpoints = [ new DyNTS_Endpoint_Params({ name: 'testEndpoint', type: DyFM_HttpCallType.get, endpoint: '/test-endpoint', preProcesses: [], tasks: [ async (req: any, res: any) => { res.send({ message: 'Test successful' }); }, ], }), ]; } static getInstance(): TestController { return new TestController(); } } describe('| DyNTS_Controller', () => { let controller: TestController; beforeEach(() => { controller = TestController.getInstance(); controller.setupEndpoints(); }); it('| should initialize endpoints correctly', () => { expect(controller.endpoints.length).toBe(1); expect(controller.endpoints[0].name).toBe('testEndpoint'); expect(controller.endpoints[0].endpoint).toBe('/test-endpoint'); }); /* it('| should execute task and send response', async () => { const req = {}; const res = { send: jasmine.createSpy('send'), }; await controller.endpoints[0].tasks[0](req, res); expect(res.send).toHaveBeenCalledWith({ message: 'Test successful' }); }); */ });