- добавлен режим генерации single, split и both - добавлены отдельные operation-файлы и createApiClient - удалена генерация SWR-хуков и зависимости React/SWR - обновлены CLI, шаблоны, примеры, документация и тесты - версия пакета повышена до 3.0.0
50 lines
1.8 KiB
TypeScript
50 lines
1.8 KiB
TypeScript
import { describe, test, expect } from 'bun:test';
|
||
import { validateConfig, type GeneratorConfig } from '../../src/config.js';
|
||
|
||
describe('config', () => {
|
||
describe('validateConfig', () => {
|
||
test('должен пройти валидацию для корректной конфигурации', () => {
|
||
const config: Partial<GeneratorConfig> = {
|
||
inputPath: './openapi.json',
|
||
outputPath: './output',
|
||
fileName: 'Api',
|
||
};
|
||
|
||
expect(() => validateConfig(config)).not.toThrow();
|
||
expect(validateConfig(config)).toBe(true);
|
||
});
|
||
|
||
test('должен пройти валидацию без опционального fileName', () => {
|
||
const config: Partial<GeneratorConfig> = {
|
||
inputPath: './openapi.json',
|
||
outputPath: './output',
|
||
};
|
||
|
||
expect(() => validateConfig(config)).not.toThrow();
|
||
expect(validateConfig(config)).toBe(true);
|
||
});
|
||
|
||
test('должен выбросить ошибку без inputPath', () => {
|
||
const config: Partial<GeneratorConfig> = {
|
||
outputPath: './output',
|
||
};
|
||
|
||
expect(() => validateConfig(config)).toThrow('Не указан путь к OpenAPI спецификации');
|
||
});
|
||
|
||
test('должен выбросить ошибку без outputPath', () => {
|
||
const config: Partial<GeneratorConfig> = {
|
||
inputPath: './openapi.json',
|
||
};
|
||
|
||
expect(() => validateConfig(config)).toThrow('Не указана директория для генерации');
|
||
});
|
||
|
||
test('должен выбросить ошибку без обоих обязательных полей', () => {
|
||
const config: Partial<GeneratorConfig> = {};
|
||
|
||
expect(() => validateConfig(config)).toThrow('Ошибка конфигурации');
|
||
});
|
||
});
|
||
});
|