UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

75 lines (65 loc) 2.17 kB
/** * Copyright Super iPaaS Integration LLC, an IBM Company 2024 */ import {addErrorToResponse,errorsArray,constructErrorResponse} from '../../src/helpers/helper.js'; jest.mock('../../src/service/log-wrapper.ts'); describe('addErrorToResponse', () => { beforeEach(() => { // Clear errorsArray before each test errorsArray.length = 0; }); test('should add error object to errorsArray', () => { addErrorToResponse('ERR001', 'field1', 'Error description 1'); expect(errorsArray).toHaveLength(1); expect(errorsArray[0]).toEqual({ code: 'ERR001', field: 'field1', description: 'Error description 1' }); }); test('should add multiple error objects to errorsArray', () => { addErrorToResponse('ERR001', 'field1', 'Error description 1'); addErrorToResponse('ERR002', 'field2', 'Error description 2'); expect(errorsArray).toHaveLength(2); expect(errorsArray[0]).toEqual({ code: 'ERR001', field: 'field1', description: 'Error description 1' }); expect(errorsArray[1]).toEqual({ code: 'ERR002', field: 'field2', description: 'Error description 2' }); }); }); describe('constructErrorResponse', () => { beforeEach(() => { // Clear errorsArray before each test errorsArray.length = 0; }); test('should construct error response object with correct properties', () => { addErrorToResponse('ERR001', 'field1', 'Error description 1'); addErrorToResponse('ERR002', 'field2', 'Error description 2'); const response = constructErrorResponse(); expect(response.respCode).toBe(400); expect(response.message).toBe('Invalid Assets or Reference in the Zip'); expect(response.Endpoints).toEqual([]); expect(response.errors).toHaveLength(2); expect(response.errors[0]).toEqual({ code: 'ERR001', field: 'field1', description: 'Error description 1' }); expect(response.errors[1]).toEqual({ code: 'ERR002', field: 'field2', description: 'Error description 2' }); }); test('should clear errorsArray after constructing error response', () => { addErrorToResponse('ERR001', 'field1', 'Error description 1'); constructErrorResponse(); expect(errorsArray).toHaveLength(0); }); });