test-openapi
Version:
Automated client requests
52 lines (36 loc) • 1.35 kB
JavaScript
;require("core-js/modules/es.array.iterator");Object.defineProperty(exports,"__esModule",{value:true});exports.validateHeaders=void 0;var _path=require("../../../utils/path.js");
var _prefix=require("../../../utils/prefix.js");
var _check=require("../../../validation/check.js");
var _required=require("./required.js");
const validateHeaders=function({validate,response}){
const validatedHeaders=(0,_prefix.removePrefixes)(validate,"headers");
const headers=(0,_prefix.removePrefixes)(response,"headers");
Object.entries(validatedHeaders).forEach(([name,schema])=>
validateHeader({name,schema,headers}));
};exports.validateHeaders=validateHeaders;
const validateHeader=function({name,schema,headers}){
const header=getResponseHeader({headers,name});
(0,_required.checkRequired)({
schema,
value:header,
property:PROPERTY(name),
name:NAME(name)});
if(header===undefined){
return;
}
(0,_check.checkSchema)({
schema,
value:header,
schemaProp:PROPERTY(name),
message:`${NAME(name)} is invalid`});
};
const getResponseHeader=function({headers,name}){
const nameB=Object.keys(headers).find(nameA=>nameA===name);
if(nameB===undefined){
return;
}
return headers[nameB];
};
const PROPERTY=name=>(0,_path.getPath)(["task","validate",`headers.${name}`]);
const NAME=name=>`response header '${name}'`;
//# sourceMappingURL=headers.js.map