gst-atom-xcuitest-driver
Version:
ATOM driver for iOS using XCUITest for backend
68 lines (50 loc) • 8.21 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.helpers = exports.commands = void 0;
require("source-map-support/register");
var _lodash = _interopRequireDefault(require("lodash"));
let commands = {},
helpers = {},
extensions = {};
exports.helpers = helpers;
exports.commands = commands;
function requireSimulator(driver) {
if (!driver.isSimulator()) {
throw new Error('Permissions-related operations can only be performed on Simulator');
}
}
function requireOptions(opts = {}) {
if (!opts.bundleId) {
throw new Error(`The 'bundleId' options must be a valid application bundle identifier`);
}
return opts;
}
commands.mobileGetPermission = async function mobileGetPermission(opts = {}) {
const {
service,
bundleId
} = requireOptions(opts);
if (!service) {
throw new Error(`The 'service' option is expected to be present`);
}
requireSimulator(this);
return await this.opts.device.getPermission(bundleId, service);
};
commands.mobileSetPermissions = async function mobileSetPermissions(opts = {}) {
const {
access,
bundleId
} = requireOptions(opts);
if (!_lodash.default.isPlainObject(access)) {
throw new Error(`The 'access' option is expected to be a map`);
}
requireSimulator(this);
await this.opts.device.setPermissions(bundleId, access);
};
Object.assign(extensions, commands, helpers);
var _default = extensions;
exports.default = _default;require('source-map-support').install();
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9jb21tYW5kcy9wZXJtaXNzaW9ucy5qcyJdLCJuYW1lcyI6WyJjb21tYW5kcyIsImhlbHBlcnMiLCJleHRlbnNpb25zIiwicmVxdWlyZVNpbXVsYXRvciIsImRyaXZlciIsImlzU2ltdWxhdG9yIiwiRXJyb3IiLCJyZXF1aXJlT3B0aW9ucyIsIm9wdHMiLCJidW5kbGVJZCIsIm1vYmlsZUdldFBlcm1pc3Npb24iLCJzZXJ2aWNlIiwiZGV2aWNlIiwiZ2V0UGVybWlzc2lvbiIsIm1vYmlsZVNldFBlcm1pc3Npb25zIiwiYWNjZXNzIiwiXyIsImlzUGxhaW5PYmplY3QiLCJzZXRQZXJtaXNzaW9ucyIsIk9iamVjdCIsImFzc2lnbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFHQSxJQUFJQSxRQUFRLEdBQUcsRUFBZjtBQUFBLElBQW1CQyxPQUFPLEdBQUcsRUFBN0I7QUFBQSxJQUFpQ0MsVUFBVSxHQUFHLEVBQTlDOzs7O0FBRUEsU0FBU0MsZ0JBQVQsQ0FBMkJDLE1BQTNCLEVBQW1DO0FBQ2pDLE1BQUksQ0FBQ0EsTUFBTSxDQUFDQyxXQUFQLEVBQUwsRUFBMkI7QUFDekIsVUFBTSxJQUFJQyxLQUFKLENBQVUsbUVBQVYsQ0FBTjtBQUNEO0FBQ0Y7O0FBRUQsU0FBU0MsY0FBVCxDQUF5QkMsSUFBSSxHQUFHLEVBQWhDLEVBQW9DO0FBQ2xDLE1BQUksQ0FBQ0EsSUFBSSxDQUFDQyxRQUFWLEVBQW9CO0FBQ2xCLFVBQU0sSUFBSUgsS0FBSixDQUFXLHNFQUFYLENBQU47QUFDRDs7QUFDRCxTQUFPRSxJQUFQO0FBQ0Q7O0FBOEJEUixRQUFRLENBQUNVLG1CQUFULEdBQStCLGVBQWVBLG1CQUFmLENBQW9DRixJQUFJLEdBQUcsRUFBM0MsRUFBK0M7QUFDNUUsUUFBTTtBQUNKRyxJQUFBQSxPQURJO0FBRUpGLElBQUFBO0FBRkksTUFHRkYsY0FBYyxDQUFDQyxJQUFELENBSGxCOztBQUlBLE1BQUksQ0FBQ0csT0FBTCxFQUFjO0FBQ1osVUFBTSxJQUFJTCxLQUFKLENBQVcsZ0RBQVgsQ0FBTjtBQUNEOztBQUNESCxFQUFBQSxnQkFBZ0IsQ0FBQyxJQUFELENBQWhCO0FBRUEsU0FBTyxNQUFNLEtBQUtLLElBQUwsQ0FBVUksTUFBVixDQUFpQkMsYUFBakIsQ0FBK0JKLFFBQS9CLEVBQXlDRSxPQUF6QyxDQUFiO0FBQ0QsQ0FYRDs7QUE2Q0FYLFFBQVEsQ0FBQ2Msb0JBQVQsR0FBZ0MsZUFBZUEsb0JBQWYsQ0FBcUNOLElBQUksR0FBRyxFQUE1QyxFQUFnRDtBQUM5RSxRQUFNO0FBQ0pPLElBQUFBLE1BREk7QUFFSk4sSUFBQUE7QUFGSSxNQUdGRixjQUFjLENBQUNDLElBQUQsQ0FIbEI7O0FBSUEsTUFBSSxDQUFDUSxnQkFBRUMsYUFBRixDQUFnQkYsTUFBaEIsQ0FBTCxFQUE4QjtBQUM1QixVQUFNLElBQUlULEtBQUosQ0FBVyw2Q0FBWCxDQUFOO0FBQ0Q7O0FBQ0RILEVBQUFBLGdCQUFnQixDQUFDLElBQUQsQ0FBaEI7QUFFQSxRQUFNLEtBQUtLLElBQUwsQ0FBVUksTUFBVixDQUFpQk0sY0FBakIsQ0FBZ0NULFFBQWhDLEVBQTBDTSxNQUExQyxDQUFOO0FBQ0QsQ0FYRDs7QUFjQUksTUFBTSxDQUFDQyxNQUFQLENBQWNsQixVQUFkLEVBQTBCRixRQUExQixFQUFvQ0MsT0FBcEM7ZUFFZUMsVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5cblxubGV0IGNvbW1hbmRzID0ge30sIGhlbHBlcnMgPSB7fSwgZXh0ZW5zaW9ucyA9IHt9O1xuXG5mdW5jdGlvbiByZXF1aXJlU2ltdWxhdG9yIChkcml2ZXIpIHtcbiAgaWYgKCFkcml2ZXIuaXNTaW11bGF0b3IoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignUGVybWlzc2lvbnMtcmVsYXRlZCBvcGVyYXRpb25zIGNhbiBvbmx5IGJlIHBlcmZvcm1lZCBvbiBTaW11bGF0b3InKTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZXF1aXJlT3B0aW9ucyAob3B0cyA9IHt9KSB7XG4gIGlmICghb3B0cy5idW5kbGVJZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVGhlICdidW5kbGVJZCcgb3B0aW9ucyBtdXN0IGJlIGEgdmFsaWQgYXBwbGljYXRpb24gYnVuZGxlIGlkZW50aWZpZXJgKTtcbiAgfVxuICByZXR1cm4gb3B0cztcbn1cblxuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IEdldFBlcm1pc3Npb25PcHRpb25zXG4gKlxuICogQHByb3BlcnR5IHtzdHJpbmd9IHNlcnZpY2UgLSBPbmUgb2YgYXZhaWxhYmxlIHNlcnZpY2UgbmFtZXMuIFRoZSBmb2xsb3dpbmcgc2VydmljZXMgYXJlIHN1cHBvcnRlZDpcbiAqIGNhbGVuZGFyLFxuICogY2FtZXJhLFxuICogY29udGFjdHMsXG4gKiBob21la2l0LFxuICogbWljcm9waG9uZSxcbiAqIHBob3RvcyxcbiAqIHJlbWluZGVycyxcbiAqIG1lZGlhbGlicmFyeSxcbiAqIG1vdGlvbixcbiAqIGhlYWx0aCxcbiAqIHNpcmksXG4gKiBzcGVlY2guXG4gKiBAcHJvcGVydHkge3N0cmluZ30gYnVuZGxlSWQgLSBUaGUgYnVuZGxlIGlkZW50aWZpZXIgb2YgdGhlIGRlc3RpbmF0aW9uIGFwcC5cbiAqL1xuXG4vKipcbiAqIEdldHMgYXBwbGljYXRpb24gcGVybWlzc2lvbiBzdGF0ZSBvbiBTaW11bGF0b3IuXG4gKiBUaGlzIG1ldGhvZCByZXF1aXJlcyBXSVggYXBwbGVzaW11dGlscyB0byBiZSBpbnN0YWxsZWQgb24gdGhlIHNlcnZlciBob3N0LlxuICpcbiAqIEBwYXJhbSB7R2V0UGVybWlzc2lvbk9wdGlvbnN9IG9wdHMgLSBQZXJtaXNzaW9uIG9wdGlvbnMuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBFaXRoZXIgJ3llcycsICdubycgb3IgJ3Vuc2V0J1xuICogQHRocm93cyB7RXJyb3J9IElmIHBlcm1pc3Npb24gZ2V0dGluZyBmYWlscyBvciB0aGUgZGV2aWNlIGlzIG5vdCBhIFNpbXVsYXRvci5cbiAqL1xuY29tbWFuZHMubW9iaWxlR2V0UGVybWlzc2lvbiA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZUdldFBlcm1pc3Npb24gKG9wdHMgPSB7fSkge1xuICBjb25zdCB7XG4gICAgc2VydmljZSxcbiAgICBidW5kbGVJZCxcbiAgfSA9IHJlcXVpcmVPcHRpb25zKG9wdHMpO1xuICBpZiAoIXNlcnZpY2UpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSAnc2VydmljZScgb3B0aW9uIGlzIGV4cGVjdGVkIHRvIGJlIHByZXNlbnRgKTtcbiAgfVxuICByZXF1aXJlU2ltdWxhdG9yKHRoaXMpO1xuXG4gIHJldHVybiBhd2FpdCB0aGlzLm9wdHMuZGV2aWNlLmdldFBlcm1pc3Npb24oYnVuZGxlSWQsIHNlcnZpY2UpO1xufTtcblxuLyoqXG4gKiBAdHlwZWRlZiB7T2JqZWN0fSBTZXRQZXJtaXNzaW9uc09wdGlvbnNcbiAqXG4gKiBAcHJvcGVydHkge09iamVjdH0gYWNjZXNzIC0gT25lIG9yIG1vcmUgYWNjZXNzIHJ1bGVzIHRvIHNldC5cbiAqIFRoZSBmb2xsb3dpbmcga2V5cyBhcmUgc3VwcG9ydGVkOlxuICogLSBhbGw6IEFwcGx5IHRoZSBhY3Rpb24gdG8gYWxsIHNlcnZpY2VzLlxuICogLSBjYWxlbmRhcjogQWxsb3cgYWNjZXNzIHRvIGNhbGVuZGFyLlxuICogLSBjb250YWN0cy1saW1pdGVkOiBBbGxvdyBhY2Nlc3MgdG8gYmFzaWMgY29udGFjdCBpbmZvLlxuICogLSBjb250YWN0czogQWxsb3cgYWNjZXNzIHRvIGZ1bGwgY29udGFjdCBkZXRhaWxzLlxuICogLSBsb2NhdGlvbjogQWxsb3cgYWNjZXNzIHRvIGxvY2F0aW9uIHNlcnZpY2VzIHdoZW4gYXBwIGlzIGluIHVzZS5cbiAqIC0gbG9jYXRpb24tYWx3YXlzOiBBbGxvdyBhY2Nlc3MgdG8gbG9jYXRpb24gc2VydmljZXMgYXQgYWxsIHRpbWVzLlxuICogLSBwaG90b3MtYWRkOiBBbGxvdyBhZGRpbmcgcGhvdG9zIHRvIHRoZSBwaG90byBsaWJyYXJ5LlxuICogLSBwaG90b3M6IEFsbG93IGZ1bGwgYWNjZXNzIHRvIHRoZSBwaG90byBsaWJyYXJ5LlxuICogLSBtZWRpYS1saWJyYXJ5OiBBbGxvdyBhY2Nlc3MgdG8gdGhlIG1lZGlhIGxpYnJhcnkuXG4gKiAtIG1pY3JvcGhvbmU6IEFsbG93IGFjY2VzcyB0byBhdWRpbyBpbnB1dC5cbiAqIC0gbW90aW9uOiBBbGxvdyBhY2Nlc3MgdG8gbW90aW9uIGFuZCBmaXRuZXNzIGRhdGEuXG4gKiAtIHJlbWluZGVyczogQWxsb3cgYWNjZXNzIHRvIHJlbWluZGVycy5cbiAqIC0gc2lyaTogQWxsb3cgdXNlIG9mIHRoZSBhcHAgd2l0aCBTaXJpLlxuICogVGhlIGZvbGxvd2luZyB2YWx1ZXMgYXJlIHN1cHBvcnRlZDpcbiAqIC0geWVzOiBUbyBncmFudCB0aGUgcGVybWlzc2lvblxuICogLSBubzogVG8gcmV2b2tlIHRoZSBwZXJtaXNzaW9uXG4gKiAtIHVuc2V0OiBUbyByZXNldCB0aGUgcGVybWlzc2lvblxuICogQHByb3BlcnR5IHtzdHJpbmd9IGJ1bmRsZUlkIC0gVGhlIGJ1bmRsZSBpZGVudGlmaWVyIG9mIHRoZSBkZXN0aW5hdGlvbiBhcHAuXG4gKi9cblxuLyoqXG4gKiBTZXQgYXBwbGljYXRpb24gcGVybWlzc2lvbiBzdGF0ZSBvbiBTaW11bGF0b3IuXG4gKlxuICogQHNpbmNlIFhjb2RlIFNESyAxMS40XG4gKiBAcGFyYW0ge1NldFBlcm1pc3Npb25zT3B0aW9uc30gb3B0cyAtIFBlcm1pc3Npb25zIG9wdGlvbnMuXG4gKiBAdGhyb3dzIHtFcnJvcn0gSWYgcGVybWlzc2lvbiBzZXR0aW5nIGZhaWxzIG9yIHRoZSBkZXZpY2UgaXMgbm90IGEgU2ltdWxhdG9yLlxuICovXG5jb21tYW5kcy5tb2JpbGVTZXRQZXJtaXNzaW9ucyA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVNldFBlcm1pc3Npb25zIChvcHRzID0ge30pIHtcbiAgY29uc3Qge1xuICAgIGFjY2VzcyxcbiAgICBidW5kbGVJZCxcbiAgfSA9IHJlcXVpcmVPcHRpb25zKG9wdHMpO1xuICBpZiAoIV8uaXNQbGFpbk9iamVjdChhY2Nlc3MpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgJ2FjY2Vzcycgb3B0aW9uIGlzIGV4cGVjdGVkIHRvIGJlIGEgbWFwYCk7XG4gIH1cbiAgcmVxdWlyZVNpbXVsYXRvcih0aGlzKTtcblxuICBhd2FpdCB0aGlzLm9wdHMuZGV2aWNlLnNldFBlcm1pc3Npb25zKGJ1bmRsZUlkLCBhY2Nlc3MpO1xufTtcblxuXG5PYmplY3QuYXNzaWduKGV4dGVuc2lvbnMsIGNvbW1hbmRzLCBoZWxwZXJzKTtcbmV4cG9ydCB7IGNvbW1hbmRzLCBoZWxwZXJzIH07XG5leHBvcnQgZGVmYXVsdCBleHRlbnNpb25zO1xuIl0sImZpbGUiOiJsaWIvY29tbWFuZHMvcGVybWlzc2lvbnMuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4ifQ==