All files / api/swagger baseVerifyHandlerSwagger.ts

100% Statements 52/52
100% Branches 1/1
100% Functions 1/1
100% Lines 52/52

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 531x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x  
import { OpenAPIV3_1 } from 'openapi-types';
 
import { SwaggerBuilder } from '@api/swagger/swaggerBuilder';
import { ApiStatusErrorCode, apiParams } from '@constants/api';
import { commonPathParam, replaceVariableSyntax } from './commonSwaggerOptions';
 
export const baseVerifyHandlerSwagger = (props: {
  path: string;
  method: string;
  swaggerBuilder: SwaggerBuilder;
}) => {
  const correctedPath = replaceVariableSyntax(
    props.path,
    apiParams.general.segment,
    apiParams.verify.id,
    apiParams.verify.decision,
    apiParams.verify.check,
  );
  const swaggerPath: OpenAPIV3_1.PathItemObject = {
    [`/${correctedPath}`]: {
      [props.method]: {
        tags: ['Verify'],
        description:
          'Verifies (approve, deny, etc) a form submission and returns the created record',
        parameters: [
          commonPathParam.segment,
          commonPathParam.verifyDecision,
          commonPathParam.verifyId,
          commonPathParam.verifyCheck,
        ],
        responses: {
          '303': {
            description: 'Form was successfully verified',
          },
          [ApiStatusErrorCode.decisionNotFound.code]: {
            description: ApiStatusErrorCode.decisionNotFound.message,
          },
          [ApiStatusErrorCode.recordNotFound.code]: {
            description: ApiStatusErrorCode.recordNotFound.message,
          },
          [ApiStatusErrorCode.calculatedCheckFailed.code]: {
            description: ApiStatusErrorCode.calculatedCheckFailed.message,
          },
          [ApiStatusErrorCode.couldNotPersistData.code]: {
            description: ApiStatusErrorCode.couldNotPersistData.message,
          },
        },
      },
    },
  };
  props.swaggerBuilder.addPath(swaggerPath);
};