UNPKG

codeceptjs

Version:

Modern Era Acceptance Testing Framework for NodeJS

26 lines (22 loc) 617 B
const parser = require('parse-function')({ ecmaVersion: 2017 }); module.exports.getParamsToString = function (fn) { return getParams(fn).join(', '); }; function getParams(fn) { if (fn.isSinonProxy) return []; const newFn = fn.toString().replace(/^async/, 'async function'); try { const reflected = parser.parse(newFn); const params = reflected.args.map((p) => { const def = reflected.defaults[p]; if (def) { return `${p}=${def}`; } return p; }); return params; } catch (err) { console.log(`Error in ${newFn.toString()}`); console.error(err); } }