Make it easy to create OpenAPI (Swagger) specification documents in your tests using the builder pattern.
npm install @loopback/openapi-spec-builderMake it easy to create OpenAPI specification documents in your tests using the
builder pattern.
Creating a full OpenAPI spec document in automated tests is rather cumbersome,
long JSON-like objects pollute the test test code and make it difficult for
readers to distinguish between what's important in the test and what's just
shared OpenAPI boilerplate.
OpenApiSpecBuilder utilizes
Test Data Builder pattern to
provide a TypeScript/JavaScript API allowing users to create full OpenAPI Spec
documents in few lines of code.
``sh`
npm install --save-dev @loopback/openapi-spec-builder
_This package is typically used in tests, save it to devDependencies via--save-dev._
`ts
import {
anOpenApiSpec,
OpenApiSpecBuilder,
} from '@loopback/openapi-spec-builder';
const spec = anOpenApiSpec()
.withOperationReturningString('get', '/hello', 'greet')
.build();
// which is equivalent to the following longer form
const spec = new OpenApiSpecBuilder()
.withOperation('get', '/hello', {
'x-operation-name': 'greet',
responses: {
'200': {
description: 'The string result.',
content: {
'text/plain': {
schema: {
type: 'string',
},
},
},
},
},
})
.build();
// the spec
const spec = {
openapi: '3.0.0',
info: {title: 'LoopBack Application', version: '1.0.0'},
servers: [
{
url: '/',
},
],
paths: {
'/hello': {
get: {
'x-operation-name': 'greet',
responses: {
'200': {
description: 'The string result.',
content: {
'text/plain': {
schema: {
type: 'string',
},
},
},
},
},
},
},
},
};
`
See
version 3.0.0
of OpenAPI Specification.
Run npm test` from the root folder.
See
all contributors.
MIT