@testim/testim-cli
Version:
Command line interface for running Testing on you CI
69 lines (58 loc) • 6 kB
JavaScript
;
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=