/**
*
* Get informations about the current network connection (Data/WIFI/Airplane). The actual
* server value will be a number (see `getNetworkConnection.js` example). However WebdriverIO
* additional properties to the response object to allow easier assertions (see
* `getNetworkConnectionEasier.js` example).
*
* <example>
:getNetworkConnection.js
client.getNetworkConnection().then(function(connection) {
console.log(connection.value);
// if 0: airplane mode off, wifi off, data off
// if 1: airplane mode on, wifi off, data off
// if 2: airplane mode off, wifi on, data off
// if 4: airplane mode off, wifi off, data on
// if 6: airplane mode off, wifi on, data on
})
:getNetworkConnectionEasier.js
client.getNetworkConnection().then(function(connection) {
console.log(connection.value); // returns 6
console.log(connection.inAirplaneMode); // returns false
console.log(connection.hasWifi); // returns true
console.log(connection.hasData); // returns true
})
* </example>
*
* @type mobile
* @see https://github.com/appium/appium-android-driver/blob/master/lib/commands/network.js#L8-L22
* @for android
*
*/
'use strict';
Object.defineProperty(exports, '__esModule', {
value: true
});
// istanbul ignore next
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var _deepmerge = require('deepmerge');
var _deepmerge2 = _interopRequireDefault(_deepmerge);
var getNetworkConnection = function getNetworkConnection() {
return this.requestHandler.create({
path: '/session/:sessionId/network_connection',
method: 'GET'
}).then(function (result) {
result = (0, _deepmerge2['default'])(result, {
inAirplaneMode: result.value === 1,
hasWifi: result.value === 2 || result.value === 6,
hasData: result.value === 4 || result.value === 6
});
return result;
});
};
exports['default'] = getNetworkConnection;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9jaHJpc3RpYW5icm9tYW5uL1NpdGVzL1dlYnByb2pla3RlL3dlYmRyaXZlcmpzL0RFVi9saWIvcHJvdG9jb2wvZ2V0TmV0d29ya0Nvbm5lY3Rpb24uanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3lCQWlDa0IsV0FBVzs7OztBQUU3QixJQUFJLG9CQUFvQixHQUFHLFNBQXZCLG9CQUFvQixHQUFlO0FBQ25DLFdBQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUM7QUFDOUIsWUFBSSxFQUFFLHdDQUF3QztBQUM5QyxjQUFNLEVBQUUsS0FBSztLQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDLFVBQUMsTUFBTSxFQUFLO0FBQ2hCLGNBQU0sR0FBRyw0QkFBTSxNQUFNLEVBQUU7QUFDbkIsMEJBQWMsRUFBRSxNQUFNLENBQUMsS0FBSyxLQUFLLENBQUM7QUFDbEMsbUJBQU8sRUFBRSxNQUFNLENBQUMsS0FBSyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLENBQUM7QUFDakQsbUJBQU8sRUFBRSxNQUFNLENBQUMsS0FBSyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLENBQUM7U0FDcEQsQ0FBQyxDQUFBOztBQUVGLGVBQU8sTUFBTSxDQUFBO0tBQ2hCLENBQUMsQ0FBQTtDQUNMLENBQUE7O3FCQUVjLG9CQUFvQiIsImZpbGUiOiIvVXNlcnMvY2hyaXN0aWFuYnJvbWFubi9TaXRlcy9XZWJwcm9qZWt0ZS93ZWJkcml2ZXJqcy9ERVYvbGliL3Byb3RvY29sL2dldE5ldHdvcmtDb25uZWN0aW9uLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKlxuICogR2V0IGluZm9ybWF0aW9ucyBhYm91dCB0aGUgY3VycmVudCBuZXR3b3JrIGNvbm5lY3Rpb24gKERhdGEvV0lGSS9BaXJwbGFuZSkuIFRoZSBhY3R1YWxcbiAqIHNlcnZlciB2YWx1ZSB3aWxsIGJlIGEgbnVtYmVyIChzZWUgYGdldE5ldHdvcmtDb25uZWN0aW9uLmpzYCBleGFtcGxlKS4gSG93ZXZlciBXZWJkcml2ZXJJT1xuICogYWRkaXRpb25hbCBwcm9wZXJ0aWVzIHRvIHRoZSByZXNwb25zZSBvYmplY3QgdG8gYWxsb3cgZWFzaWVyIGFzc2VydGlvbnMgKHNlZVxuICogYGdldE5ldHdvcmtDb25uZWN0aW9uRWFzaWVyLmpzYCBleGFtcGxlKS5cbiAqXG4gKiA8ZXhhbXBsZT5cbiAgICA6Z2V0TmV0d29ya0Nvbm5lY3Rpb24uanNcbiAgICBjbGllbnQuZ2V0TmV0d29ya0Nvbm5lY3Rpb24oKS50aGVuKGZ1bmN0aW9uKGNvbm5lY3Rpb24pIHtcbiAgICAgICAgY29uc29sZS5sb2coY29ubmVjdGlvbi52YWx1ZSk7XG4gICAgICAgIC8vIGlmIDA6IGFpcnBsYW5lIG1vZGUgb2ZmLCB3aWZpIG9mZiwgZGF0YSBvZmZcbiAgICAgICAgLy8gaWYgMTogYWlycGxhbmUgbW9kZSBvbiwgd2lmaSBvZmYsIGRhdGEgb2ZmXG4gICAgICAgIC8vIGlmIDI6IGFpcnBsYW5lIG1vZGUgb2ZmLCB3aWZpIG9uLCBkYXRhIG9mZlxuICAgICAgICAvLyBpZiA0OiBhaXJwbGFuZSBtb2RlIG9mZiwgd2lmaSBvZmYsIGRhdGEgb25cbiAgICAgICAgLy8gaWYgNjogYWlycGxhbmUgbW9kZSBvZmYsIHdpZmkgb24sIGRhdGEgb25cbiAgICB9KVxuXG4gICAgOmdldE5ldHdvcmtDb25uZWN0aW9uRWFzaWVyLmpzXG4gICAgY2xpZW50LmdldE5ldHdvcmtDb25uZWN0aW9uKCkudGhlbihmdW5jdGlvbihjb25uZWN0aW9uKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGNvbm5lY3Rpb24udmFsdWUpOyAvLyByZXR1cm5zIDZcbiAgICAgICAgY29uc29sZS5sb2coY29ubmVjdGlvbi5pbkFpcnBsYW5lTW9kZSk7IC8vIHJldHVybnMgZmFsc2VcbiAgICAgICAgY29uc29sZS5sb2coY29ubmVjdGlvbi5oYXNXaWZpKTsgLy8gcmV0dXJucyB0cnVlXG4gICAgICAgIGNvbnNvbGUubG9nKGNvbm5lY3Rpb24uaGFzRGF0YSk7IC8vIHJldHVybnMgdHJ1ZVxuICAgIH0pXG4gKiA8L2V4YW1wbGU+XG4gKlxuICogQHR5cGUgbW9iaWxlXG4gKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hcHBpdW0vYXBwaXVtLWFuZHJvaWQtZHJpdmVyL2Jsb2IvbWFzdGVyL2xpYi9jb21tYW5kcy9uZXR3b3JrLmpzI0w4LUwyMlxuICogQGZvciBhbmRyb2lkXG4gKlxuICovXG5cbmltcG9ydCBtZXJnZSBmcm9tICdkZWVwbWVyZ2UnXG5cbmxldCBnZXROZXR3b3JrQ29ubmVjdGlvbiA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0SGFuZGxlci5jcmVhdGUoe1xuICAgICAgICBwYXRoOiAnL3Nlc3Npb24vOnNlc3Npb25JZC9uZXR3b3JrX2Nvbm5lY3Rpb24nLFxuICAgICAgICBtZXRob2Q6ICdHRVQnXG4gICAgfSkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgIHJlc3VsdCA9IG1lcmdlKHJlc3VsdCwge1xuICAgICAgICAgICAgaW5BaXJwbGFuZU1vZGU6IHJlc3VsdC52YWx1ZSA9PT0gMSxcbiAgICAgICAgICAgIGhhc1dpZmk6IHJlc3VsdC52YWx1ZSA9PT0gMiB8fCByZXN1bHQudmFsdWUgPT09IDYsXG4gICAgICAgICAgICBoYXNEYXRhOiByZXN1bHQudmFsdWUgPT09IDQgfHwgcmVzdWx0LnZhbHVlID09PSA2XG4gICAgICAgIH0pXG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdFxuICAgIH0pXG59XG5cbmV4cG9ydCBkZWZhdWx0IGdldE5ldHdvcmtDb25uZWN0aW9uXG4iXX0= |