Skip to content

Commit fd6de75

Browse files
committed
test(Reader): 更新 Reader 组件的单元测试
- 增加对本地和远程文档读取的测试 - 添加对 OpenAPI 版本迁移的测试 - 更新测试断言,检查迁移结果的长度和版本号
1 parent f336c7c commit fd6de75

File tree

1 file changed

+16
-6
lines changed

1 file changed

+16
-6
lines changed

test/generators/Reader.test.ts

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,38 @@
11
import path from 'node:path';
2+
import { expect } from 'vitest';
3+
import { OpenAPIVersion } from '../../src';
24
import { Reader } from '../../src/generator/Reader';
35

46
it('read local', async () => {
57
const reader = new Reader();
68
reader.cwd = path.resolve(__dirname, '../example-json/3.0');
7-
const document = await reader.read('pet-store.json');
8-
expect(document.openapi).toBeTypeOf('string');
9+
const migrated = await reader.read('pet-store.json');
10+
11+
expect(migrated).toHaveLength(2);
12+
expect(migrated[0].version).toEqual(OpenAPIVersion.V3_0);
13+
expect(migrated[1].version).toEqual(OpenAPIVersion.V3_1);
914
});
1015

1116
it('read remote', async () => {
1217
const reader = new Reader();
13-
const document = await reader.read('https://gw.alipayobjects.com/os/antfincdn/LyDMjDyIhK/1611471979478-opa.json');
14-
expect(document.openapi).toEqual('3.1.0');
18+
const migrated = await reader.read('https://petstore31.swagger.io/api/v31/openapi.json');
19+
20+
expect(migrated).toHaveLength(1);
21+
expect(migrated[0].version).toEqual(OpenAPIVersion.V3_1);
1522
});
1623

1724
it('read object', async () => {
1825
const reader = new Reader();
19-
const document = await reader.read({
26+
const migrated = await reader.read({
2027
info: {
2128
title: 'test',
2229
version: '1',
2330
},
2431
openapi: '3.0.0',
2532
paths: {},
2633
});
27-
expect(document.openapi).toEqual('3.1.0');
34+
35+
expect(migrated).toHaveLength(2);
36+
expect(migrated[0].version).toEqual(OpenAPIVersion.V3_0);
37+
expect(migrated[1].version).toEqual(OpenAPIVersion.V3_1);
2838
});

0 commit comments

Comments
 (0)