UNPKG

webdriverio-automation

Version:

WebdriverIO-Automation android ios project

175 lines (140 loc) 12.6 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "validator", { enumerable: true, get: function () { return _validate.default; } }); exports.desiredCapabilityConstraints = void 0; require("source-map-support/register"); var _logger = _interopRequireDefault(require("./logger")); var _validate = _interopRequireDefault(require("validate.js")); var _bluebird = _interopRequireDefault(require("bluebird")); let desiredCapabilityConstraints = { platformName: { presence: true, isString: true }, deviceName: { presence: true, isString: true }, platformVersion: {}, newCommandTimeout: { isNumber: true }, automationName: { isString: true }, autoLaunch: { isBoolean: true }, udid: { isString: true }, orientation: { inclusion: ['LANDSCAPE', 'PORTRAIT'] }, autoWebview: { isBoolean: true }, noReset: { isBoolean: true }, fullReset: { isBoolean: true }, language: { isString: true }, locale: { isString: true }, eventTimings: { isBoolean: true }, printPageSourceOnFindFailure: { isBoolean: true } }; exports.desiredCapabilityConstraints = desiredCapabilityConstraints; _validate.default.validators.isString = function isString(value) { if (typeof value === 'string') { return null; } if (typeof value === 'undefined') { return null; } return 'must be of type string'; }; _validate.default.validators.isNumber = function isNumber(value) { if (typeof value === 'number') { return null; } if (typeof value === 'undefined') { return null; } if (typeof value === 'string' && !isNaN(value)) { _logger.default.warn('Number capability passed in as string. Functionality may be compromised.'); return null; } return 'must be of type number'; }; _validate.default.validators.isBoolean = function isBoolean(value) { if (typeof value === 'boolean') { return null; } if (typeof value === 'string' && ['true', 'false', ''].includes(value)) { return null; } if (typeof value === 'undefined') { return null; } return 'must be of type boolean'; }; _validate.default.validators.isObject = function isObject(value) { if (typeof value === 'object') { return null; } if (typeof value === 'undefined') { return null; } return 'must be of type object'; }; _validate.default.validators.isArray = function isArray(value) { if (Array.isArray(value)) { return null; } if (typeof value === 'undefined') { return null; } return 'must be of type array'; }; _validate.default.validators.deprecated = function deprecated(value, options, key) { if (options) { _logger.default.warn(`${key} is a deprecated capability`); } return null; }; _validate.default.validators.inclusionCaseInsensitive = function inclusionCaseInsensitive(value, options) { if (typeof value === 'undefined') { return null; } else if (typeof value !== 'string') { return 'unrecognised'; } for (let option of options) { if (option.toLowerCase() === value.toLowerCase()) { return null; } } return `${value} not part of ${options.toString()}`; }; _validate.default.promise = _bluebird.default; _validate.default.prettify = function prettify(val) { return val; };require('source-map-support').install(); //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9iYXNlZHJpdmVyL2Rlc2lyZWQtY2Fwcy5qcyJdLCJuYW1lcyI6WyJkZXNpcmVkQ2FwYWJpbGl0eUNvbnN0cmFpbnRzIiwicGxhdGZvcm1OYW1lIiwicHJlc2VuY2UiLCJpc1N0cmluZyIsImRldmljZU5hbWUiLCJwbGF0Zm9ybVZlcnNpb24iLCJuZXdDb21tYW5kVGltZW91dCIsImlzTnVtYmVyIiwiYXV0b21hdGlvbk5hbWUiLCJhdXRvTGF1bmNoIiwiaXNCb29sZWFuIiwidWRpZCIsIm9yaWVudGF0aW9uIiwiaW5jbHVzaW9uIiwiYXV0b1dlYnZpZXciLCJub1Jlc2V0IiwiZnVsbFJlc2V0IiwibGFuZ3VhZ2UiLCJsb2NhbGUiLCJldmVudFRpbWluZ3MiLCJwcmludFBhZ2VTb3VyY2VPbkZpbmRGYWlsdXJlIiwidmFsaWRhdG9yIiwidmFsaWRhdG9ycyIsInZhbHVlIiwiaXNOYU4iLCJsb2ciLCJ3YXJuIiwiaW5jbHVkZXMiLCJpc09iamVjdCIsImlzQXJyYXkiLCJBcnJheSIsImRlcHJlY2F0ZWQiLCJvcHRpb25zIiwia2V5IiwiaW5jbHVzaW9uQ2FzZUluc2Vuc2l0aXZlIiwib3B0aW9uIiwidG9Mb3dlckNhc2UiLCJ0b1N0cmluZyIsInByb21pc2UiLCJCIiwicHJldHRpZnkiLCJ2YWwiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBR0EsSUFBSUEsNEJBQTRCLEdBQUc7QUFDakNDLEVBQUFBLFlBQVksRUFBRTtBQUNaQyxJQUFBQSxRQUFRLEVBQUUsSUFERTtBQUVaQyxJQUFBQSxRQUFRLEVBQUU7QUFGRSxHQURtQjtBQUtqQ0MsRUFBQUEsVUFBVSxFQUFFO0FBQ1ZGLElBQUFBLFFBQVEsRUFBRSxJQURBO0FBRVZDLElBQUFBLFFBQVEsRUFBRTtBQUZBLEdBTHFCO0FBU2pDRSxFQUFBQSxlQUFlLEVBQUUsRUFUZ0I7QUFVakNDLEVBQUFBLGlCQUFpQixFQUFFO0FBQ2pCQyxJQUFBQSxRQUFRLEVB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UUFBVCxDQUFtQkMsR0FBbkIsRUFBd0I7QUFDM0MsU0FBT0EsR0FBUDtBQUNELENBRkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbG9nIGZyb20gJy4vbG9nZ2VyJztcbmltcG9ydCB2YWxpZGF0b3IgZnJvbSAndmFsaWRhdGUuanMnO1xuaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuXG5cbmxldCBkZXNpcmVkQ2FwYWJpbGl0eUNvbnN0cmFpbnRzID0ge1xuICBwbGF0Zm9ybU5hbWU6IHtcbiAgICBwcmVzZW5jZTogdHJ1ZSxcbiAgICBpc1N0cmluZzogdHJ1ZSxcbiAgfSxcbiAgZGV2aWNlTmFtZToge1xuICAgIHByZXNlbmNlOiB0cnVlLFxuICAgIGlzU3RyaW5nOiB0cnVlXG4gIH0sXG4gIHBsYXRmb3JtVmVyc2lvbjoge30sXG4gIG5ld0NvbW1hbmRUaW1lb3V0OiB7XG4gICAgaXNOdW1iZXI6IHRydWVcbiAgfSxcbiAgYXV0b21hdGlvbk5hbWU6IHtcbiAgICBpc1N0cmluZzogdHJ1ZVxuICB9LFxuICBhdXRvTGF1bmNoOiB7XG4gICAgaXNCb29sZWFuOiB0cnVlXG4gIH0sXG4gIHVkaWQ6IHtcbiAgICBpc1N0cmluZzogdHJ1ZVxuICB9LFxuICBvcmllbnRhdGlvbjoge1xuICAgIGluY2x1c2lvbjogW1xuICAgICAgJ0xBTkRTQ0FQRScsXG4gICAgICAnUE9SVFJBSVQnXG4gICAgXVxuICB9LFxuICBhdXRvV2Vidmlldzoge1xuICAgIGlzQm9vbGVhbjogdHJ1ZVxuICB9LFxuICBub1Jlc2V0OiB7XG4gICAgaXNCb29sZWFuOiB0cnVlXG4gIH0sXG4gIGZ1bGxSZXNldDoge1xuICAgIGlzQm9vbGVhbjogdHJ1ZVxuICB9LFxuICBsYW5ndWFnZToge1xuICAgIGlzU3RyaW5nOiB0cnVlXG4gIH0sXG4gIGxvY2FsZToge1xuICAgIGlzU3RyaW5nOiB0cnVlXG4gIH0sXG4gIGV2ZW50VGltaW5nczoge1xuICAgIGlzQm9vbGVhbjogdHJ1ZVxuICB9LFxuICBwcmludFBhZ2VTb3VyY2VPbkZpbmRGYWlsdXJlOiB7XG4gICAgaXNCb29sZWFuOiB0cnVlXG4gIH0sXG59O1xuXG52YWxpZGF0b3IudmFsaWRhdG9ycy5pc1N0cmluZyA9IGZ1bmN0aW9uIGlzU3RyaW5nICh2YWx1ZSkge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiAnbXVzdCBiZSBvZiB0eXBlIHN0cmluZyc7XG59O1xudmFsaWRhdG9yLnZhbGlkYXRvcnMuaXNOdW1iZXIgPSBmdW5jdGlvbiBpc051bWJlciAodmFsdWUpIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBhbGxvdyBhIHN0cmluZyB2YWx1ZVxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyAmJiAhaXNOYU4odmFsdWUpKSB7XG4gICAgbG9nLndhcm4oJ051bWJlciBjYXBhYmlsaXR5IHBhc3NlZCBpbiBhcyBzdHJpbmcuIEZ1bmN0aW9uYWxpdHkgbWF5IGJlIGNvbXByb21pc2VkLicpO1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuICdtdXN0IGJlIG9mIHR5cGUgbnVtYmVyJztcbn07XG52YWxpZGF0b3IudmFsaWRhdG9ycy5pc0Jvb2xlYW4gPSBmdW5jdGlvbiBpc0Jvb2xlYW4gKHZhbHVlKSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gYWxsb3cgYSBzdHJpbmcgdmFsdWVcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgWyd0cnVlJywgJ2ZhbHNlJywgJyddLmluY2x1ZGVzKHZhbHVlKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiAnbXVzdCBiZSBvZiB0eXBlIGJvb2xlYW4nO1xufTtcbnZhbGlkYXRvci52YWxpZGF0b3JzLmlzT2JqZWN0ID0gZnVuY3Rpb24gaXNPYmplY3QgKHZhbHVlKSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAodHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuICdtdXN0IGJlIG9mIHR5cGUgb2JqZWN0Jztcbn07XG52YWxpZGF0b3IudmFsaWRhdG9ycy5pc0FycmF5ID0gZnVuY3Rpb24gaXNBcnJheSAodmFsdWUpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpZiAodHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuICdtdXN0IGJlIG9mIHR5cGUgYXJyYXknO1xufTtcbnZhbGlkYXRvci52YWxpZGF0b3JzLmRlcHJlY2F0ZWQgPSBmdW5jdGlvbiBkZXByZWNhdGVkICh2YWx1ZSwgb3B0aW9ucywga2V5KSB7XG4gIGlmIChvcHRpb25zKSB7XG4gICAgbG9nLndhcm4oYCR7a2V5fSBpcyBhIGRlcHJlY2F0ZWQgY2FwYWJpbGl0eWApO1xuICB9XG4gIHJldHVybiBudWxsO1xufTtcbnZhbGlkYXRvci52YWxpZGF0b3JzLmluY2x1c2lvbkNhc2VJbnNlbnNpdGl2ZSA9IGZ1bmN0aW9uIGluY2x1c2lvbkNhc2VJbnNlbnNpdGl2ZSAodmFsdWUsIG9wdGlvbnMpIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuICd1bnJlY29nbmlzZWQnO1xuICB9XG4gIGZvciAobGV0IG9wdGlvbiBvZiBvcHRpb25zKSB7XG4gICAgaWYgKG9wdGlvbi50b0xvd2VyQ2FzZSgpID09PSB2YWx1ZS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGAke3ZhbHVlfSBub3QgcGFydCBvZiAke29wdGlvbnMudG9TdHJpbmcoKX1gO1xufTtcblxudmFsaWRhdG9yLnByb21pc2UgPSBCO1xudmFsaWRhdG9yLnByZXR0aWZ5ID0gZnVuY3Rpb24gcHJldHRpZnkgKHZhbCkge1xuICByZXR1cm4gdmFsO1xufTtcblxuXG5leHBvcnQgeyBkZXNpcmVkQ2FwYWJpbGl0eUNvbnN0cmFpbnRzLCB2YWxpZGF0b3IgfTtcbiJdLCJmaWxlIjoibGliL2Jhc2Vkcml2ZXIvZGVzaXJlZC1jYXBzLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uIn0=