UNPKG

@case-contract-testing/case

Version:

Next-generation contract testing suite

40 lines (39 loc) 1.63 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.coreBasicAuthValue = exports.coreUrlEncodedString = exports.httpResponseMatcher = exports.httpRequestMatcher = exports.httpStatusCodeMatcher = void 0; const types_1 = require("./types"); const validator_1 = require("./validator"); const httpStatusCodeMatcher = (codes, example) => { const impliedExample = (0, validator_1.validateCodes)(codes); return { 'case:matcher:type': types_1.HTTP_STATUS_CODE_MATCHER_TYPE, 'case:matcher:example': example ?? impliedExample, 'case:matcher:rule': codes, 'case:matcher:resolvesTo': 'HttpStatusCode', }; }; exports.httpStatusCodeMatcher = httpStatusCodeMatcher; const httpRequestMatcher = (request) => ({ ...request, 'case:matcher:type': types_1.HTTP_REQUEST_MATCHER_TYPE, }); exports.httpRequestMatcher = httpRequestMatcher; const httpResponseMatcher = (response) => ({ ...response, 'case:matcher:type': types_1.HTTP_RESPONSE_MATCHER_TYPE, }); exports.httpResponseMatcher = httpResponseMatcher; const coreUrlEncodedString = (child) => ({ 'case:matcher:type': types_1.URL_ENCODED_STRING_TYPE, 'case:matcher:child': child, 'case:matcher:accepts': 'string', 'case:matcher:resolvesTo': 'string', }); exports.coreUrlEncodedString = coreUrlEncodedString; const coreBasicAuthValue = (username, password) => ({ 'case:matcher:type': types_1.HTTP_BASIC_AUTH_TYPE, 'case:matcher:username': username, 'case:matcher:password': password, 'case:matcher:resolvesTo': 'string', }); exports.coreBasicAuthValue = coreBasicAuthValue;