@apideck/portman
Version:
Port OpenAPI Spec to Postman Collection, with contract & variation tests included
51 lines • 2.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.assignVarFromValue = void 0;
var application_1 = require("../../application");
var utils_1 = require("../../utils");
var assignVarFromValue = function (dto, fixedValueCounter) {
var pmOperation = dto.pmOperation, oaOperation = dto.oaOperation, varSetting = dto.varSetting, options = dto.options, globals = dto.globals;
if (!varSetting.value)
return pmOperation;
var pmVarAssign = '';
var toggleLog = (options === null || options === void 0 ? void 0 : options.logAssignVariables) === false ? '// ' : '';
var opsRef = pmOperation.id ? pmOperation.id : pmOperation.pathVar;
var varProp = "-var-" + fixedValueCounter;
var casedVarName = (0, utils_1.parseTpl)({
template: varSetting === null || varSetting === void 0 ? void 0 : varSetting.name,
oaOperation: oaOperation,
dynamicValues: {
varProp: varProp,
opsRef: opsRef
},
options: {
casing: globals === null || globals === void 0 ? void 0 : globals.variableCasing
}
});
var varName = casedVarName;
if ((varSetting === null || varSetting === void 0 ? void 0 : varSetting.name) === undefined || (0, utils_1.hasTpl)(varSetting.name)) {
varName = casedVarName;
}
else if (varSetting.name !== '') {
varName = varSetting.name;
}
var generatedValue = (0, utils_1.parseTpl)({
template: varSetting.value,
oaOperation: oaOperation,
options: {
casing: globals === null || globals === void 0 ? void 0 : globals.variableCasing
}
});
var processedValue = (varSetting === null || varSetting === void 0 ? void 0 : varSetting.value) && (0, utils_1.hasTpl)(varSetting.value) ? generatedValue : varSetting.value;
var varValue = typeof processedValue === 'string' ? "\"".concat(processedValue, "\"") : processedValue;
pmVarAssign = [
"// pm.collectionVariables - Set fixed value for ".concat(varName, " variable \n"),
"pm.collectionVariables.set(\"".concat(varName, "\", ").concat(varValue, ");\n"),
"".concat(toggleLog, "console.log(\"- use {{").concat(varName, "}} as collection variable for value\", ").concat(varValue, ");\n")
].join('');
console.log("- Set variable for \"".concat(opsRef, "\" - use {{").concat(varName, "}} as variable for ").concat(varValue));
(0, application_1.writeOperationTestScript)(pmOperation, pmVarAssign);
return pmOperation;
};
exports.assignVarFromValue = assignVarFromValue;
//# sourceMappingURL=assignVarFromValue.js.map