UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

65 lines (52 loc) 1.46 kB
/** * Copyright IBM Corp. 2024, 2025 */ import path from 'path'; import fs from 'fs'; jest.mock('@apic/studio-shared'); jest.mock('@apic/studio-logger', () => ({ LoggerConfig: { isLoggerEnabled: jest.fn(), }, })); jest.mock('@apic/studio-shared', () => ({ Component: { Build: 'Build', }, LogComponent: () => { return () => { /* noop */ }; }, isValidAsset: jest.fn().mockReturnValue(true), SchemaHandler: jest.fn().mockImplementation(() => ({ getSchema: jest.fn().mockReturnValue(JSON.stringify({ type: 'object' })), })), Logger: { error: jest.fn(), warn: jest.fn(), info: jest.fn(), }, toError: jest.fn((e) => (e instanceof Error ? e : new Error(String(e)))), ErrorResponse: jest.fn(), Metadata_Ref: jest.fn(), SpecObject: jest.fn(), YamlContent: jest.fn(), UpperCaseKinds: jest.fn(), })); jest.mock('@apic/studio-client-model', () => ({ AssetModelKindConstants: { API: 'API', }, })); import { ZipProcessor } from '../src/index.js'; describe('ZipProcessor', () => { it('should process and send the response for valid Asset', async () => { const zipFilePath = path.resolve(__dirname, './assets/gateway-asset.zip'); const Buffer = fs.readFileSync(zipFilePath); const zipprocess = new ZipProcessor(); const result = await zipprocess.extractGatewaysJson(Buffer); expect(result).not.toBe(undefined); expect(result).not.toBe(false); }); });