UNPKG

appium-xcuitest-driver-conan

Version:

Appium driver for iOS using XCUITest for backend

86 lines (65 loc) 5.83 kB
'use strict'; var _get = require('babel-runtime/helpers/get')['default']; var _inherits = require('babel-runtime/helpers/inherits')['default']; var _createClass = require('babel-runtime/helpers/create-class')['default']; var _classCallCheck = require('babel-runtime/helpers/class-call-check')['default']; var _slicedToArray = require('babel-runtime/helpers/sliced-to-array')['default']; var _regeneratorRuntime = require('babel-runtime/regenerator')['default']; Object.defineProperty(exports, '__esModule', { value: true }); var _appiumSupport = require('appium-support'); var _appiumBaseDriver = require('appium-base-driver'); var NoSessionProxy = (function (_JWProxy) { _inherits(NoSessionProxy, _JWProxy); function NoSessionProxy() { var opts = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; _classCallCheck(this, NoSessionProxy); _get(Object.getPrototypeOf(NoSessionProxy.prototype), 'constructor', this).call(this, opts); } _createClass(NoSessionProxy, [{ key: 'getUrlForProxy', value: function getUrlForProxy(url) { if (url === '') { url = '/'; } var proxyBase = this.scheme + '://' + this.server + ':' + this.port + this.base; var remainingUrl = ''; if (new RegExp('^/').test(url)) { remainingUrl = url; } else { throw new Error('Did not know what to do with url \'' + url + '\''); } remainingUrl = remainingUrl.replace(/\/$/, ''); // can't have trailing slashes return proxyBase + remainingUrl; } }, { key: 'proxyReqRes', value: function proxyReqRes(req, res) { var _ref, _ref2, response, body; return _regeneratorRuntime.async(function proxyReqRes$(context$2$0) { while (1) switch (context$2$0.prev = context$2$0.next) { case 0: context$2$0.next = 2; return _regeneratorRuntime.awrap(this.proxy(req.originalUrl, req.method, req.body)); case 2: _ref = context$2$0.sent; _ref2 = _slicedToArray(_ref, 2); response = _ref2[0]; body = _ref2[1]; res.headers = response.headers; res.set('Content-type', response.headers['content-type']); body = _appiumSupport.util.safeJsonParse(body); res.status(response.statusCode).send(JSON.stringify(body)); case 10: case 'end': return context$2$0.stop(); } }, null, this); } }]); return NoSessionProxy; })(_appiumBaseDriver.JWProxy); exports.NoSessionProxy = NoSessionProxy; exports['default'] = NoSessionProxy; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9uby1zZXNzaW9uLXByb3h5LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs2QkFBcUIsZ0JBQWdCOztnQ0FDYixvQkFBb0I7O0lBRXRDLGNBQWM7WUFBZCxjQUFjOztBQUNOLFdBRFIsY0FBYyxHQUNNO1FBQVgsSUFBSSx5REFBRyxFQUFFOzswQkFEbEIsY0FBYzs7QUFFaEIsK0JBRkUsY0FBYyw2Q0FFVixJQUFJLEVBQUU7R0FDYjs7ZUFIRyxjQUFjOztXQUtILHdCQUFDLEdBQUcsRUFBRTtBQUNuQixVQUFJLEdBQUcsS0FBSyxFQUFFLEVBQUU7QUFDZCxXQUFHLEdBQUcsR0FBRyxDQUFDO09BQ1g7QUFDRCxVQUFNLFNBQVMsR0FBTSxJQUFJLENBQUMsTUFBTSxXQUFNLElBQUksQ0FBQyxNQUFNLFNBQUksSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxBQUFFLENBQUM7QUFDN0UsVUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO0FBQ3RCLFVBQUksQUFBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7QUFDaEMsb0JBQVksR0FBRyxHQUFHLENBQUM7T0FDcEIsTUFBTTtBQUNMLGNBQU0sSUFBSSxLQUFLLHlDQUFzQyxHQUFHLFFBQUksQ0FBQztPQUM5RDtBQUNELGtCQUFZLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDL0MsYUFBTyxTQUFTLEdBQUcsWUFBWSxDQUFDO0tBQ2pDOzs7V0FFaUIscUJBQUMsR0FBRyxFQUFFLEdBQUc7dUJBQ3BCLFFBQVEsRUFBRSxJQUFJOzs7Ozs7NkNBQVUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQzs7Ozs7QUFBekUsb0JBQVE7QUFBRSxnQkFBSTs7QUFDbkIsZUFBRyxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDO0FBQy9CLGVBQUcsQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztBQUMxRCxnQkFBSSxHQUFHLG9CQUFLLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNoQyxlQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDOzs7Ozs7O0tBQzVEOzs7U0ExQkcsY0FBYzs7O1FBNkJYLGNBQWMsR0FBZCxjQUFjO3FCQUNSLGNBQWMiLCJmaWxlIjoibGliL25vLXNlc3Npb24tcHJveHkuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1dGlsIH0gZnJvbSAnYXBwaXVtLXN1cHBvcnQnO1xuaW1wb3J0IHsgSldQcm94eSB9IGZyb20gJ2FwcGl1bS1iYXNlLWRyaXZlcic7XG5cbmNsYXNzIE5vU2Vzc2lvblByb3h5IGV4dGVuZHMgSldQcm94eSB7XG4gIGNvbnN0cnVjdG9yIChvcHRzID0ge30pIHtcbiAgICBzdXBlcihvcHRzKTtcbiAgfVxuXG4gIGdldFVybEZvclByb3h5ICh1cmwpIHtcbiAgICBpZiAodXJsID09PSAnJykge1xuICAgICAgdXJsID0gJy8nO1xuICAgIH1cbiAgICBjb25zdCBwcm94eUJhc2UgPSBgJHt0aGlzLnNjaGVtZX06Ly8ke3RoaXMuc2VydmVyfToke3RoaXMucG9ydH0ke3RoaXMuYmFzZX1gO1xuICAgIGxldCByZW1haW5pbmdVcmwgPSAnJztcbiAgICBpZiAoKG5ldyBSZWdFeHAoJ14vJykpLnRlc3QodXJsKSkge1xuICAgICAgcmVtYWluaW5nVXJsID0gdXJsO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYERpZCBub3Qga25vdyB3aGF0IHRvIGRvIHdpdGggdXJsICcke3VybH0nYCk7XG4gICAgfVxuICAgIHJlbWFpbmluZ1VybCA9IHJlbWFpbmluZ1VybC5yZXBsYWNlKC9cXC8kLywgJycpOyAvLyBjYW4ndCBoYXZlIHRyYWlsaW5nIHNsYXNoZXNcbiAgICByZXR1cm4gcHJveHlCYXNlICsgcmVtYWluaW5nVXJsO1xuICB9XG5cbiAgYXN5bmMgcHJveHlSZXFSZXMgKHJlcSwgcmVzKSB7XG4gICAgbGV0IFtyZXNwb25zZSwgYm9keV0gPSBhd2FpdCB0aGlzLnByb3h5KHJlcS5vcmlnaW5hbFVybCwgcmVxLm1ldGhvZCwgcmVxLmJvZHkpO1xuICAgIHJlcy5oZWFkZXJzID0gcmVzcG9uc2UuaGVhZGVycztcbiAgICByZXMuc2V0KCdDb250ZW50LXR5cGUnLCByZXNwb25zZS5oZWFkZXJzWydjb250ZW50LXR5cGUnXSk7XG4gICAgYm9keSA9IHV0aWwuc2FmZUpzb25QYXJzZShib2R5KTtcbiAgICByZXMuc3RhdHVzKHJlc3BvbnNlLnN0YXR1c0NvZGUpLnNlbmQoSlNPTi5zdHJpbmdpZnkoYm9keSkpO1xuICB9XG59XG5cbmV4cG9ydCB7IE5vU2Vzc2lvblByb3h5IH07XG5leHBvcnQgZGVmYXVsdCBOb1Nlc3Npb25Qcm94eTsiXSwic291cmNlUm9vdCI6Ii4uLy4uIn0=