tsoa-custom-decorators
Version:
Build swagger-compliant REST APIs using TypeScript and Node
26 lines (20 loc) • 1.05 kB
text/typescript
import { Swagger } from '../../../src/swagger/swagger';
import * as chai from 'chai';
const expect = chai.expect;
export function VerifyPathableParameter(params: Swagger.PathParameter[], paramValue: string, paramType: string, paramIn: string, formatType?: string) {
const parameter = verifyParameter(params, paramValue, paramIn);
expect(parameter.type).to.equal(paramType);
if (formatType) {
expect(parameter.format).to.equal(formatType);
}
}
export function VerifyBodyParameter(params: Swagger.PathParameter[], paramValue: string, paramType: string, paramIn: string) {
const parameter = verifyParameter(params, paramValue, paramIn) as any;
expect(parameter.schema.$ref).to.equal(paramType);
}
function verifyParameter(params: Swagger.PathParameter[], paramValue: string, paramIn: string) {
const parameter = params.filter(p => p.name === paramValue)[0];
expect(parameter, `Path parameter '${paramValue}' wasn't generated.`).to.exist;
expect(parameter.in).to.equal(paramIn);
return parameter;
}