UNPKG

@whook/whook

Version:

Build strong and efficient REST web services.

73 lines 2.54 kB
import { describe, test, expect } from '@jest/globals'; import { refersTo } from './openapi.js'; describe('refersTo', () => { test('should create a reference for schema definitions', () => { const schema = { name: 'User', schema: { type: 'string' }, }; const result = refersTo(schema); expect(result.$ref).toBe('#/components/schemas/User'); }); test('should create a reference for parameter definitions', () => { const parameter = { name: 'userId', parameter: { name: 'userId', in: 'path', schema: { type: 'string' }, }, }; const result = refersTo(parameter); expect(result.$ref).toBe('#/components/parameters/userId'); }); test('should create a reference for header definitions', () => { const header = { name: 'X-Token', header: { schema: { type: 'string' }, }, }; const result = refersTo(header); expect(result.$ref).toBe('#/components/headers/X-Token'); }); test('should create a reference for response definitions', () => { const response = { name: 'NotFound', response: {}, }; const result = refersTo(response); expect(result.$ref).toBe('#/components/responses/NotFound'); }); test('should create a reference for request body definitions', () => { const requestBody = { name: 'UserBody', requestBody: { content: { 'application/json': { schema: { type: 'string' }, }, }, }, }; const result = refersTo(requestBody); expect(result.$ref).toBe('#/components/requestBodies/UserBody'); }); test('should create a reference for callback definitions', () => { const callback = { name: 'ProgressCallback', callback: {}, }; const result = refersTo(callback); expect(result.$ref).toBe('#/components/callbacks/ProgressCallback'); }); test('should create a reference for example definitions', () => { const example = { name: 'UserExample', example: 'example', }; const result = refersTo(example); expect(result.$ref).toBe('#/components/examples/UserExample'); }); }); //# sourceMappingURL=openapi.test.js.map