UNPKG

@testim/testim-cli

Version:

Command line interface for running Testing on you CI

69 lines (58 loc) 6 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var sanitizeString = function sanitizeString(str) { if (!str) { return ''; } return String(str).replace(/\./g, '_').replace(/\s/g, '').toLowerCase(); }; /** * formats capability object into sanitized string for e.g.filenames * @param {Object} caps Selenium capabilities */ var caps = function caps(_caps) { var result = undefined; /** * mobile caps */ if (_caps.deviceName) { result = [sanitizeString(_caps.deviceName), sanitizeString(_caps.platformName), sanitizeString(_caps.platformVersion)]; } else { result = [sanitizeString(_caps.browserName), sanitizeString(_caps.version), sanitizeString(_caps.platform)]; } result = result.filter(function (n) { return n !== undefined && n !== ''; }); return result.join('.'); }; /** * formats arguments into string * @param {Array} args arguments object */ var args = function args(_args) { return _args.map(function (arg) { if (typeof arg === 'function' || typeof arg === 'string' && arg.indexOf('return (function') === 0) { return '<Function>'; } else if (typeof arg === 'string') { return '"' + arg + '"'; } else if (Array.isArray(arg)) { return arg.join(', '); } return arg; }).join(', '); }; var css = function css(value) { if (!value) { return value; } return value.trim().replace(/'/g, '').replace(/"/g, '').toLowerCase(); }; exports['default'] = { css: css, args: args, caps: caps }; module.exports = exports['default']; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oZWxwZXJzL3Nhbml0aXplLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsSUFBSSxjQUFjLEdBQUcsU0FBakIsY0FBYyxDQUFhLEdBQUcsRUFBRTtBQUNoQyxRQUFJLENBQUMsR0FBRyxFQUFFO0FBQ04sZUFBTyxFQUFFLENBQUE7S0FDWjs7QUFFRCxXQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FDYixPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUNuQixPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUNsQixXQUFXLEVBQUUsQ0FBQTtDQUNyQixDQUFBOzs7Ozs7QUFNRCxJQUFJLElBQUksR0FBRyxjQUFVLEtBQUksRUFBRTtBQUN2QixRQUFJLE1BQU0sWUFBQSxDQUFBOzs7OztBQUtWLFFBQUksS0FBSSxDQUFDLFVBQVUsRUFBRTtBQUNqQixjQUFNLEdBQUcsQ0FBQyxjQUFjLENBQUMsS0FBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxLQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsY0FBYyxDQUFDLEtBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO0tBQ3RILE1BQU07QUFDSCxjQUFNLEdBQUcsQ0FBQyxjQUFjLENBQUMsS0FBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxLQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsY0FBYyxDQUFDLEtBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFBO0tBQzNHOztBQUVELFVBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQUEsQ0FBQztlQUFJLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLEVBQUU7S0FBQSxDQUFDLENBQUE7QUFDeEQsV0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0NBQzFCLENBQUE7Ozs7OztBQU1ELElBQUksSUFBSSxHQUFHLGNBQVUsS0FBSSxFQUFFO0FBQ3ZCLFdBQU8sS0FBSSxDQUFDLEdBQUcsQ0FBQyxVQUFDLEdBQUcsRUFBSztBQUNyQixZQUFJLE9BQU8sR0FBRyxLQUFLLFVBQVUsSUFBSyxPQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQUFBQyxFQUFFO0FBQ2pHLG1CQUFPLFlBQVksQ0FBQTtTQUN0QixNQUFNLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO0FBQ2hDLG1CQUFPLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFBO1NBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO0FBQzNCLG1CQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDeEI7O0FBRUQsZUFBTyxHQUFHLENBQUE7S0FDYixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0NBQ2hCLENBQUE7O0FBRUQsSUFBSSxHQUFHLEdBQUcsU0FBTixHQUFHLENBQWEsS0FBSyxFQUFFO0FBQ3ZCLFFBQUksQ0FBQyxLQUFLLEVBQUU7QUFDUixlQUFPLEtBQUssQ0FBQTtLQUNmOztBQUVELFdBQU8sS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtDQUN4RSxDQUFBOztxQkFFYztBQUNYLE9BQUcsRUFBSCxHQUFHO0FBQ0gsUUFBSSxFQUFKLElBQUk7QUFDSixRQUFJLEVBQUosSUFBSTtDQUNQIiwiZmlsZSI6InNhbml0aXplLmpzIiwic291cmNlc0NvbnRlbnQiOlsibGV0IHNhbml0aXplU3RyaW5nID0gZnVuY3Rpb24gKHN0cikge1xuICAgIGlmICghc3RyKSB7XG4gICAgICAgIHJldHVybiAnJ1xuICAgIH1cblxuICAgIHJldHVybiBTdHJpbmcoc3RyKVxuICAgICAgICAucmVwbGFjZSgvXFwuL2csICdfJylcbiAgICAgICAgLnJlcGxhY2UoL1xccy9nLCAnJylcbiAgICAgICAgLnRvTG93ZXJDYXNlKClcbn1cblxuLyoqXG4gKiBmb3JtYXRzIGNhcGFiaWxpdHkgb2JqZWN0IGludG8gc2FuaXRpemVkIHN0cmluZyBmb3IgZS5nLmZpbGVuYW1lc1xuICogQHBhcmFtIHtPYmplY3R9IGNhcHMgIFNlbGVuaXVtIGNhcGFiaWxpdGllc1xuICovXG5sZXQgY2FwcyA9IGZ1bmN0aW9uIChjYXBzKSB7XG4gICAgbGV0IHJlc3VsdFxuXG4gICAgLyoqXG4gICAgICogbW9iaWxlIGNhcHNcbiAgICAgKi9cbiAgICBpZiAoY2Fwcy5kZXZpY2VOYW1lKSB7XG4gICAgICAgIHJlc3VsdCA9IFtzYW5pdGl6ZVN0cmluZyhjYXBzLmRldmljZU5hbWUpLCBzYW5pdGl6ZVN0cmluZyhjYXBzLnBsYXRmb3JtTmFtZSksIHNhbml0aXplU3RyaW5nKGNhcHMucGxhdGZvcm1WZXJzaW9uKV1cbiAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSBbc2FuaXRpemVTdHJpbmcoY2Fwcy5icm93c2VyTmFtZSksIHNhbml0aXplU3RyaW5nKGNhcHMudmVyc2lvbiksIHNhbml0aXplU3RyaW5nKGNhcHMucGxhdGZvcm0pXVxuICAgIH1cblxuICAgIHJlc3VsdCA9IHJlc3VsdC5maWx0ZXIobiA9PiBuICE9PSB1bmRlZmluZWQgJiYgbiAhPT0gJycpXG4gICAgcmV0dXJuIHJlc3VsdC5qb2luKCcuJylcbn1cblxuLyoqXG4gKiBmb3JtYXRzIGFyZ3VtZW50cyBpbnRvIHN0cmluZ1xuICogQHBhcmFtICB7QXJyYXl9IGFyZ3MgYXJndW1lbnRzIG9iamVjdFxuICovXG5sZXQgYXJncyA9IGZ1bmN0aW9uIChhcmdzKSB7XG4gICAgcmV0dXJuIGFyZ3MubWFwKChhcmcpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiBhcmcgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBhcmcgPT09ICdzdHJpbmcnICYmIGFyZy5pbmRleE9mKCdyZXR1cm4gKGZ1bmN0aW9uJykgPT09IDApKSB7XG4gICAgICAgICAgICByZXR1cm4gJzxGdW5jdGlvbj4nXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGFyZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiAnXCInICsgYXJnICsgJ1wiJ1xuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoYXJnKSkge1xuICAgICAgICAgICAgcmV0dXJuIGFyZy5qb2luKCcsICcpXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYXJnXG4gICAgfSkuam9pbignLCAnKVxufVxuXG5sZXQgY3NzID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWVcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWUudHJpbSgpLnJlcGxhY2UoLycvZywgJycpLnJlcGxhY2UoL1wiL2csICcnKS50b0xvd2VyQ2FzZSgpXG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgICBjc3MsXG4gICAgYXJncyxcbiAgICBjYXBzXG59XG4iXX0=