cabbie-sync
Version:
A synchronous webdriver client
111 lines (74 loc) • 2.89 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require('babel-runtime/helpers/createClass');
var _createClass3 = _interopRequireDefault(_createClass2);
var _httpMethod = require('./flow-types/http-method');
var _webdriverResponse = require('./flow-types/webdriver-response');
var _debug = require('./debug');
var _debug2 = _interopRequireDefault(_debug);
var _driver = require('./driver');
var _driver2 = _interopRequireDefault(_driver);
var _flowRuntime = require('flow-runtime');
var _flowRuntime2 = _interopRequireDefault(_flowRuntime);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Driver = _flowRuntime2.default.tdz(function () {
return _driver2.default;
}); /**
*
* This file is generated automatically, run npm run build to re-generate.
**/
var Debug = _flowRuntime2.default.tdz(function () {
return _debug2.default;
});
var WebdriverResponse = _flowRuntime2.default.tdz(function () {
return _webdriverResponse.WebdriverResponse;
});
var HttpMethod = _flowRuntime2.default.tdz(function () {
return _httpMethod.HttpMethod;
});
var BaseClass = function () {
/*
* Reference to the driver object
*
* @private
*/
function BaseClass(driver /*: Driver*/, prefix /*:: ?: string*/) {
(0, _classCallCheck3.default)(this, BaseClass);
var _driverType = _flowRuntime2.default.ref(Driver);
var _prefixType = _flowRuntime2.default.string();
_flowRuntime2.default.param('driver', _driverType).assert(driver);
_flowRuntime2.default.param('prefix', _prefixType, true).assert(prefix);
this.driver = driver;
this.debug = driver.debug;
this._prefix = prefix || '';
}
/*
* Make a request with session info and the path prefix
*
* @private
*/
/*
* Reference to the debug context
*
* @private
*/
(0, _createClass3.default)(BaseClass, [{
key: 'requestJSON',
value: function requestJSON(method /*: HttpMethod*/, path /*: string*/, body /*:: ?: Object*/) /*: WebdriverResponse*/ {
var _methodType = _flowRuntime2.default.ref(HttpMethod);
var _pathType = _flowRuntime2.default.string();
var _bodyType = _flowRuntime2.default.object();
var _returnType = _flowRuntime2.default.return(_flowRuntime2.default.ref(WebdriverResponse));
_flowRuntime2.default.param('method', _methodType).assert(method);
_flowRuntime2.default.param('path', _pathType).assert(path);
_flowRuntime2.default.param('body', _bodyType, true).assert(body);
return _returnType.assert(this.driver.requestJSON(method, this._prefix + path, body));
}
}]);
return BaseClass;
}();
exports.default = BaseClass;