@testim/testim-cli
Version:
Command line interface for running Testing on you CI
56 lines (50 loc) • 3.47 kB
JavaScript
/**
* helper to detect the Selenium backend according to given capabilities
*/
;
Object.defineProperty(exports, '__esModule', {
value: true
});
var detectSeleniumBackend = function detectSeleniumBackend(capabilities) {
/**
* local Selenium server
*/
if (!capabilities.user || !capabilities.key) {
return {
host: '127.0.0.1',
port: 4444
};
}
/**
* browserstack
* e.g. zHcv9sZ39ip8ZPsxBVJ2
*/
if (capabilities.key.length === 20) {
return {
host: 'hub.browserstack.com',
port: 80
};
}
/**
* testingbot
* e.g. ec337d7b677720a4dde7bd72be0bfc67
*/
if (capabilities.key.length === 32) {
return {
host: 'hub.testingbot.com',
port: 80
};
}
/**
* Sauce Labs
* e.g. 50aa152c-1932-B2f0-9707-18z46q2n1mb0
*/
return {
host: 'ondemand.saucelabs.com',
port: 80,
updateJob: true
};
};
exports['default'] = detectSeleniumBackend;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oZWxwZXJzL2RldGVjdFNlbGVuaXVtQmFja2VuZC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUdBLElBQUkscUJBQXFCLEdBQUcsU0FBeEIscUJBQXFCLENBQWEsWUFBWSxFQUFFOzs7O0FBSWhELFFBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRTtBQUN6QyxlQUFPO0FBQ0gsZ0JBQUksRUFBRSxXQUFXO0FBQ2pCLGdCQUFJLEVBQUUsSUFBSTtTQUNiLENBQUE7S0FDSjs7Ozs7O0FBTUQsUUFBSSxZQUFZLENBQUMsR0FBRyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUU7QUFDaEMsZUFBTztBQUNILGdCQUFJLEVBQUUsc0JBQXNCO0FBQzVCLGdCQUFJLEVBQUUsRUFBRTtTQUNYLENBQUE7S0FDSjs7Ozs7O0FBTUQsUUFBSSxZQUFZLENBQUMsR0FBRyxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUU7QUFDaEMsZUFBTztBQUNILGdCQUFJLEVBQUUsb0JBQW9CO0FBQzFCLGdCQUFJLEVBQUUsRUFBRTtTQUNYLENBQUE7S0FDSjs7Ozs7O0FBTUQsV0FBTztBQUNILFlBQUksRUFBRSx3QkFBd0I7QUFDOUIsWUFBSSxFQUFFLEVBQUU7QUFDUixpQkFBUyxFQUFFLElBQUk7S0FDbEIsQ0FBQTtDQUNKLENBQUE7O3FCQUVjLHFCQUFxQiIsImZpbGUiOiJkZXRlY3RTZWxlbml1bUJhY2tlbmQuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGhlbHBlciB0byBkZXRlY3QgdGhlIFNlbGVuaXVtIGJhY2tlbmQgYWNjb3JkaW5nIHRvIGdpdmVuIGNhcGFiaWxpdGllc1xuICovXG5sZXQgZGV0ZWN0U2VsZW5pdW1CYWNrZW5kID0gZnVuY3Rpb24gKGNhcGFiaWxpdGllcykge1xuICAgIC8qKlxuICAgICAqIGxvY2FsIFNlbGVuaXVtIHNlcnZlclxuICAgICAqL1xuICAgIGlmICghY2FwYWJpbGl0aWVzLnVzZXIgfHwgIWNhcGFiaWxpdGllcy5rZXkpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhvc3Q6ICcxMjcuMC4wLjEnLFxuICAgICAgICAgICAgcG9ydDogNDQ0NFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYnJvd3NlcnN0YWNrXG4gICAgICogZS5nLiB6SGN2OXNaMzlpcDhaUHN4QlZKMlxuICAgICAqL1xuICAgIGlmIChjYXBhYmlsaXRpZXMua2V5Lmxlbmd0aCA9PT0gMjApIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhvc3Q6ICdodWIuYnJvd3NlcnN0YWNrLmNvbScsXG4gICAgICAgICAgICBwb3J0OiA4MFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogdGVzdGluZ2JvdFxuICAgICAqIGUuZy4gZWMzMzdkN2I2Nzc3MjBhNGRkZTdiZDcyYmUwYmZjNjdcbiAgICAgKi9cbiAgICBpZiAoY2FwYWJpbGl0aWVzLmtleS5sZW5ndGggPT09IDMyKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBob3N0OiAnaHViLnRlc3Rpbmdib3QuY29tJyxcbiAgICAgICAgICAgIHBvcnQ6IDgwXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTYXVjZSBMYWJzXG4gICAgICogZS5nLiA1MGFhMTUyYy0xOTMyLUIyZjAtOTcwNy0xOHo0NnEybjFtYjBcbiAgICAgKi9cbiAgICByZXR1cm4ge1xuICAgICAgICBob3N0OiAnb25kZW1hbmQuc2F1Y2VsYWJzLmNvbScsXG4gICAgICAgIHBvcnQ6IDgwLFxuICAgICAgICB1cGRhdGVKb2I6IHRydWVcbiAgICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGRldGVjdFNlbGVuaXVtQmFja2VuZFxuIl19