ae-biu
Version:
Born For AE, Born To Do
72 lines (52 loc) • 1.86 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends2 = require('babel-runtime/helpers/extends');
var _extends3 = _interopRequireDefault(_extends2);
var _promise = require('babel-runtime/core-js/promise');
var _promise2 = _interopRequireDefault(_promise);
exports.default = setupSelenium;
var _seleniumStandalone = require('selenium-standalone');
var _seleniumStandalone2 = _interopRequireDefault(_seleniumStandalone);
var _progress = require('progress');
var _progress2 = _interopRequireDefault(_progress);
var _logger = require('../utils/logger');
var _logger2 = _interopRequireDefault(_logger);
var _selenium = require('./selenium.config');
var _selenium2 = _interopRequireDefault(_selenium);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var bar = void 0;
function setupSelenium() {
return new _promise2.default(function (resolve, reject) {
console.log();
_logger2.default.log('Installing browser drivers...');
_seleniumStandalone2.default.install((0, _extends3.default)({}, _selenium2.default, {
logger: function logger(message) {},
progressCb: progressCb
}), function (err) {
if (err) {
console.log();
_logger2.default.error('[Error] Error occurred during installation Selenium: ' + err);
reject(err);
process.exit(1);
}
console.log();
_logger2.default.info('Installation finished.');
resolve();
});
});
}
function progressCb(totalLength, progressLength, chunkLength) {
if (!bar) {
bar = new _progress2.default('downloading [:bar] :rate/bps :percent :etas', {
complete: '=',
incomplete: '-',
width: 20,
total: totalLength,
clear: true
});
}
bar.tick(progressLength);
}
module.exports = exports['default'];