UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

40 lines (35 loc) 1.25 kB
/** * Copyright IBM Corp. 2024, 2025 */ import { ModelFactory } from '../../src/model-factories/model.factory.js'; import { LogWrapper } from '../../src/service/log-wrapper.js'; import { ZipTestModelTransformer } from '../../src/transformers/zip-models.transformer.js'; import path from 'path'; import { readFileSync } from 'fs'; jest.mock('../../src/service/log-wrapper.js'); jest.mock('@apic/studio-logger', () => ({ LoggerConfig: { isLoggerEnabled: jest.fn(), }, })); describe('TestTransformer.transform', () => { let transformer: ZipTestModelTransformer; beforeEach(() => { transformer = new ZipTestModelTransformer(); }); it('should process all files in the zip and call model factory methods', async () => { const zipFilePath = path.join(__dirname, '../assets/valid-asset.zip'); const buffer = readFileSync(zipFilePath); const result = await transformer.transform(buffer); expect(result).toBeInstanceOf(ModelFactory); expect(result.getAllTests()).toHaveLength(1); expect(LogWrapper.logInfo).toHaveBeenCalledWith( '0003', 'Starting file processing.', ); expect(LogWrapper.logInfo).toHaveBeenCalledWith( '0003', 'File processing completed.', ); }); });