Files
bruno/packages/bruno-js/src/utils.js
2023-02-08 01:13:21 +05:30

25 lines
623 B
JavaScript

const jsonQuery = require('json-query');
const evaluateJsExpression = (expression, context) => {
const fn = new Function(...Object.keys(context), `return ${expression}`);
return fn(...Object.values(context));
};
const createResponseParser = (response = {}) => {
const res = (expr) => {
const output = jsonQuery(expr, { data: response.data });
return output ? output.value : null;
}
res.status = response.status;
res.statusText = response.statusText;
res.headers = response.headers;
res.body = response.data;
return res;
};
module.exports = {
evaluateJsExpression,
createResponseParser
};