appium-android-driver 5.14.1 → 5.14.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [5.14.3](https://github.com/appium/appium-android-driver/compare/v5.14.2...v5.14.3) (2023-08-14)
2
+
3
+
4
+ ### Miscellaneous Chores
5
+
6
+ * **deps-dev:** bump lint-staged from 13.3.0 to 14.0.0 ([#838](https://github.com/appium/appium-android-driver/issues/838)) ([f7cc201](https://github.com/appium/appium-android-driver/commit/f7cc20133bdfd54359dab2d41ea18080c49dd260))
7
+
8
+ ## [5.14.2](https://github.com/appium/appium-android-driver/compare/v5.14.1...v5.14.2) (2023-08-14)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * relax webview matching logic of devtools_remote ([#836](https://github.com/appium/appium-android-driver/issues/836)) ([7c52b81](https://github.com/appium/appium-android-driver/commit/7c52b8197279df2cfa0e9bfa402de9db74704175))
14
+
1
15
  ## [5.14.1](https://github.com/appium/appium-android-driver/compare/v5.14.0...v5.14.1) (2023-08-14)
2
16
 
3
17
 
@@ -176,7 +176,7 @@ export namespace helpers {
176
176
  *
177
177
  * @return {Array<WebviewsMapping>} webviewsMapping
178
178
  */
179
- function getWebViewsMapping(adb: any, { androidDeviceSocket, ensureWebviewsHavePages, webviewDevtoolsPort, enableWebviewDetailsCollection }?: GetWebviewsOpts): WebviewsMapping[];
179
+ function getWebViewsMapping(adb: any, { androidDeviceSocket, ensureWebviewsHavePages, webviewDevtoolsPort, enableWebviewDetailsCollection, }?: GetWebviewsOpts): WebviewsMapping[];
180
180
  /**
181
181
  * @typedef {Object} ProcessInfo
182
182
  * @property {string} name The process name
@@ -220,4 +220,5 @@ export const WEBVIEW_WIN: "WEBVIEW";
220
220
  export const WEBVIEW_BASE: string;
221
221
  export const CHROMIUM_WIN: "CHROMIUM";
222
222
  export const KNOWN_CHROME_PACKAGE_NAMES: string[];
223
+ export const DEVTOOLS_SOCKET_PATTERN: RegExp;
223
224
  //# sourceMappingURL=webview-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"webview-helpers.d.ts","sourceRoot":"","sources":["../../lib/webview-helpers.js"],"names":[],"mappings":";;;;;;UA0Fc,MAAM;;;;aAEN,MAAM;;;;;;UAyFN,MAAM;;;;;aACN,MAAM;;;;;;;;;;WAIL,UAAa;;;;;;;0BAMb,MAAM,GAAC,MAAM;;;;;6BAEb,OAAO;;;;;;oCAER,OAAO;;;;;;yBAsJP,MAAM;;;;;6BACN,OAAO;;;;;yBAEP,MAAM;;;;;;oCAEN,OAAO;;;;;;UAOP,MAAM;;;;aACN,MAAM;;;;;;;;WAEL,UAAa;;;;;;UA0Ed,MAAM;;;;QACL,MAAM;;;;;;aAKN,WAAW;;;;;;;;;;;;;;;IAzJ1B;;;;;;;;;;;OAWG;IACH,4DAYC;IAED;;;;;;OAMG;IACH,yIAqBC;IAED;;;;;;;;;;OAUG;IAEH;;;;;;;OAOG;IAEH;;;;;;;;;;;;;;;;;OAiBG;IACH,kLAgDC;IAED;;;;OAIG;IAEH;;;;;;;;;;;;OAYG;IAEH;;;;;;OAMG;IACH,6EAGC;IAED;;;;;;;;;OASG;IACH,yGAsFC;;AAviBD,sCAAgC;AAChC,oCAA8B;AAE9B,kCAAuC;AADvC,sCAAgC;AAQhC,kDAKE"}
1
+ {"version":3,"file":"webview-helpers.d.ts","sourceRoot":"","sources":["../../lib/webview-helpers.js"],"names":[],"mappings":";;;;;;UA4Fc,MAAM;;;;aAEN,MAAM;;;;;;UA+FN,MAAM;;;;;aACN,MAAM;;;;;;;;;;WAIL,UAAa;;;;;;;0BAMb,MAAM,GAAC,MAAM;;;;;6BAEb,OAAO;;;;;;oCAER,OAAO;;;;;;yBAoKP,MAAM;;;;;6BACN,OAAO;;;;;yBAEP,MAAM;;;;;;oCAEN,OAAO;;;;;;UAOP,MAAM;;;;aACN,MAAM;;;;;;;;WAEL,UAAa;;;;;;UA6Ed,MAAM;;;;QACL,MAAM;;;;;;aAKN,WAAW;;;;;;;;;;;;;;;IAhK1B;;;;;;;;;;;OAWG;IACH,4DAYC;IAED;;;;;;OAMG;IACH,yIAyBC;IAED;;;;;;;;;;OAUG;IAEH;;;;;;;OAOG;IAEH;;;;;;;;;;;;;;;;;OAiBG;IACH,mLAmDC;IAED;;;;OAIG;IAEH;;;;;;;;;;;;OAYG;IAEH;;;;;;OAMG;IACH,6EAGC;IAED;;;;;;;;;OASG;IACH,yGA0FC;;AApkBD,sCAAgC;AAChC,oCAA8B;AAE9B,kCAAuC;AADvC,sCAAgC;AAQhC,kDAKE;AATF,6CAA8E"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.KNOWN_CHROME_PACKAGE_NAMES = exports.CHROMIUM_WIN = exports.WEBVIEW_BASE = exports.WEBVIEW_WIN = exports.NATIVE_WIN = exports.helpers = void 0;
6
+ exports.DEVTOOLS_SOCKET_PATTERN = exports.KNOWN_CHROME_PACKAGE_NAMES = exports.CHROMIUM_WIN = exports.WEBVIEW_BASE = exports.WEBVIEW_WIN = exports.NATIVE_WIN = exports.helpers = void 0;
7
7
  const lodash_1 = __importDefault(require("lodash"));
8
8
  const logger_1 = __importDefault(require("./logger"));
9
9
  const axios_1 = __importDefault(require("axios"));
@@ -23,7 +23,8 @@ const WEBVIEW_BASE = `${WEBVIEW_WIN}_`;
23
23
  exports.WEBVIEW_BASE = WEBVIEW_BASE;
24
24
  const WEBVIEW_PID_PATTERN = new RegExp(`^${WEBVIEW_BASE}(\\d+)`);
25
25
  const WEBVIEW_PKG_PATTERN = new RegExp(`^${WEBVIEW_BASE}([^\\d\\s][\\w.]*)`);
26
- const DEVTOOLS_SOCKET_PATTERN = /@[\w.]+_devtools_remote_?(\d+)?\b/;
26
+ const DEVTOOLS_SOCKET_PATTERN = /@[\w.]+_devtools_remote_?([\w.]+_)?(\d+)?\b/;
27
+ exports.DEVTOOLS_SOCKET_PATTERN = DEVTOOLS_SOCKET_PATTERN;
27
28
  const CROSSWALK_SOCKET_PATTERN = /@([\w.]+)_devtools_remote\b/;
28
29
  const CHROMIUM_DEVTOOLS_SOCKET = 'chrome_devtools_remote';
29
30
  const CHROME_PACKAGE_NAME = 'com.android.chrome';
@@ -123,15 +124,16 @@ async function webviewsFromProcs(adb, deviceSocket = null) {
123
124
  if (!socketNameMatch) {
124
125
  continue;
125
126
  }
127
+ const matchedSocketName = socketNameMatch[2];
126
128
  const crosswalkMatch = CROSSWALK_SOCKET_PATTERN.exec(socketName);
127
- if (!socketNameMatch[1] && !crosswalkMatch) {
129
+ if (!matchedSocketName && !crosswalkMatch) {
128
130
  continue;
129
131
  }
130
- if (deviceSocket && socketName === `@${deviceSocket}` || !deviceSocket) {
132
+ if ((deviceSocket && socketName === `@${deviceSocket}`) || !deviceSocket) {
131
133
  webviews.push({
132
134
  proc: socketName,
133
- webview: socketNameMatch[1]
134
- ? `${WEBVIEW_BASE}${socketNameMatch[1]}`
135
+ webview: matchedSocketName
136
+ ? `${WEBVIEW_BASE}${matchedSocketName}`
135
137
  : `${WEBVIEW_BASE}${crosswalkMatch[1]}`,
136
138
  });
137
139
  }
@@ -158,8 +160,7 @@ async function allocateDevtoolsPort(adb, socketName, webviewDevtoolsPort = null)
158
160
  endPort = webviewDevtoolsPort + (endPort - startPort);
159
161
  startPort = webviewDevtoolsPort;
160
162
  }
161
- logger_1.default.debug(`Forwarding remote port ${remotePort} to a local ` +
162
- `port in range ${startPort}..${endPort}`);
163
+ logger_1.default.debug(`Forwarding remote port ${remotePort} to a local ` + `port in range ${startPort}..${endPort}`);
163
164
  if (!webviewDevtoolsPort) {
164
165
  logger_1.default.debug(`You could use the 'webviewDevtoolsPort' capability to customize ` +
165
166
  `the starting port number`);
@@ -362,7 +363,7 @@ helpers.parseWebviewNames = function parseWebviewNames(webviewsMapping, { ensure
362
363
  *
363
364
  * @return {Array<WebviewsMapping>} webviewsMapping
364
365
  */
365
- helpers.getWebViewsMapping = async function getWebViewsMapping(adb, { androidDeviceSocket = null, ensureWebviewsHavePages = true, webviewDevtoolsPort = null, enableWebviewDetailsCollection = true } = {}) {
366
+ helpers.getWebViewsMapping = async function getWebViewsMapping(adb, { androidDeviceSocket = null, ensureWebviewsHavePages = true, webviewDevtoolsPort = null, enableWebviewDetailsCollection = true, } = {}) {
366
367
  logger_1.default.debug('Getting a list of available webviews');
367
368
  const webviewsMapping = await webviewsFromProcs(adb, androidDeviceSocket);
368
369
  await collectWebviewsDetails(adb, webviewsMapping, {
@@ -445,9 +446,9 @@ helpers.getWebviewDetails = function getWebviewDetails(adb, webview) {
445
446
  */
446
447
  helpers.createChromedriverCaps = function createChromedriverCaps(opts, deviceId, webViewDetails) {
447
448
  const caps = { chromeOptions: {} };
448
- const androidPackage = opts.chromeOptions?.androidPackage
449
- || opts.appPackage
450
- || webViewDetails?.info?.['Android-Package'];
449
+ const androidPackage = opts.chromeOptions?.androidPackage ||
450
+ opts.appPackage ||
451
+ webViewDetails?.info?.['Android-Package'];
451
452
  if (androidPackage) {
452
453
  // chromedriver raises an invalid argument error when androidPackage is 'null'
453
454
  caps.chromeOptions.androidPackage = androidPackage;
@@ -497,17 +498,14 @@ helpers.createChromedriverCaps = function createChromedriverCaps(opts, deviceId,
497
498
  `the 'chromeLoggingPrefs' cap instead, with a 'performance' key set to 'ALL'`);
498
499
  const newPref = { performance: 'ALL' };
499
500
  // don't overwrite other logging prefs that have been sent in if they exist
500
- caps.loggingPrefs = caps.loggingPrefs
501
- ? Object.assign({}, caps.loggingPrefs, newPref)
502
- : newPref;
501
+ caps.loggingPrefs = caps.loggingPrefs ? Object.assign({}, caps.loggingPrefs, newPref) : newPref;
503
502
  }
504
503
  if (opts.chromeOptions?.Arguments) {
505
504
  // merge `Arguments` and `args`
506
505
  opts.chromeOptions.args = [...(opts.chromeOptions.args || []), ...opts.chromeOptions.Arguments];
507
506
  delete opts.chromeOptions.Arguments;
508
507
  }
509
- logger_1.default.debug('Precalculated Chromedriver capabilities: ' +
510
- JSON.stringify(caps.chromeOptions, null, 2));
508
+ logger_1.default.debug('Precalculated Chromedriver capabilities: ' + JSON.stringify(caps.chromeOptions, null, 2));
511
509
  const protectedCapNames = [];
512
510
  for (const [opt, val] of lodash_1.default.toPairs(opts.chromeOptions)) {
513
511
  if (lodash_1.default.isUndefined(caps.chromeOptions[opt])) {
@@ -1 +1 @@
1
- {"version":3,"file":"webview-helpers.js","sourceRoot":"","sources":["../../lib/webview-helpers.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webview-helpers.js","sourceRoot":"","sources":["../../lib/webview-helpers.js"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import _ from 'lodash';
2
2
  import logger from './logger';
3
3
  import axios from 'axios';
4
- import { util } from '@appium/support';
5
- import { findAPortNotInUse } from 'portscanner';
4
+ import {util} from '@appium/support';
5
+ import {findAPortNotInUse} from 'portscanner';
6
6
  import LRU from 'lru-cache';
7
7
  import B from 'bluebird';
8
8
  import path from 'path';
@@ -14,7 +14,7 @@ const CHROMIUM_WIN = 'CHROMIUM';
14
14
  const WEBVIEW_BASE = `${WEBVIEW_WIN}_`;
15
15
  const WEBVIEW_PID_PATTERN = new RegExp(`^${WEBVIEW_BASE}(\\d+)`);
16
16
  const WEBVIEW_PKG_PATTERN = new RegExp(`^${WEBVIEW_BASE}([^\\d\\s][\\w.]*)`);
17
- const DEVTOOLS_SOCKET_PATTERN = /@[\w.]+_devtools_remote_?(\d+)?\b/;
17
+ const DEVTOOLS_SOCKET_PATTERN = /@[\w.]+_devtools_remote_?([\w.]+_)?(\d+)?\b/;
18
18
  const CROSSWALK_SOCKET_PATTERN = /@([\w.]+)_devtools_remote\b/;
19
19
  const CHROMIUM_DEVTOOLS_SOCKET = 'chrome_devtools_remote';
20
20
  const CHROME_PACKAGE_NAME = 'com.android.chrome';
@@ -37,7 +37,7 @@ const DEVTOOLS_PORT_ALLOCATION_GUARD = util.getLockFileGuard(
37
37
 
38
38
  const helpers = {};
39
39
 
40
- function toDetailsCacheKey (adb, webview) {
40
+ function toDetailsCacheKey(adb, webview) {
41
41
  return `${adb?.curDeviceId}:${webview}`;
42
42
  }
43
43
 
@@ -51,13 +51,13 @@ function toDetailsCacheKey (adb, webview) {
51
51
  *
52
52
  * @return {Array.<string>} - a list of matching webview socket names (including the leading '@')
53
53
  */
54
- async function getPotentialWebviewProcs (adb) {
54
+ async function getPotentialWebviewProcs(adb) {
55
55
  const out = await adb.shell(['cat', '/proc/net/unix']);
56
56
  const names = [];
57
57
  const allMatches = [];
58
58
  for (const line of out.split('\n')) {
59
59
  // Num RefCount Protocol Flags Type St Inode Path
60
- const [,,, flags,, st,, sockPath] = line.trim().split(/\s+/);
60
+ const [, , , flags, , st, , sockPath] = line.trim().split(/\s+/);
61
61
  if (!sockPath) {
62
62
  continue;
63
63
  }
@@ -79,8 +79,10 @@ async function getPotentialWebviewProcs (adb) {
79
79
  logger.debug(`Other sockets are: ${JSON.stringify(allMatches, null, 2)}`);
80
80
  }
81
81
  } else {
82
- logger.debug(`Parsed ${names.length} active devtools ${util.pluralize('socket', names.length, false)}: ` +
83
- JSON.stringify(names));
82
+ logger.debug(
83
+ `Parsed ${names.length} active devtools ${util.pluralize('socket', names.length, false)}: ` +
84
+ JSON.stringify(names)
85
+ );
84
86
  }
85
87
  // sometimes the webview process shows up multiple times per app
86
88
  return _.uniq(names);
@@ -104,7 +106,7 @@ async function getPotentialWebviewProcs (adb) {
104
106
  *
105
107
  * @return {Array.<WebviewProc>}
106
108
  */
107
- async function webviewsFromProcs (adb, deviceSocket = null) {
109
+ async function webviewsFromProcs(adb, deviceSocket = null) {
108
110
  const socketNames = await getPotentialWebviewProcs(adb);
109
111
  const webviews = [];
110
112
  for (const socketName of socketNames) {
@@ -120,16 +122,17 @@ async function webviewsFromProcs (adb, deviceSocket = null) {
120
122
  if (!socketNameMatch) {
121
123
  continue;
122
124
  }
125
+ const matchedSocketName = socketNameMatch[2];
123
126
  const crosswalkMatch = CROSSWALK_SOCKET_PATTERN.exec(socketName);
124
- if (!socketNameMatch[1] && !crosswalkMatch) {
127
+ if (!matchedSocketName && !crosswalkMatch) {
125
128
  continue;
126
129
  }
127
130
 
128
- if (deviceSocket && socketName === `@${deviceSocket}` || !deviceSocket) {
131
+ if ((deviceSocket && socketName === `@${deviceSocket}`) || !deviceSocket) {
129
132
  webviews.push({
130
133
  proc: socketName,
131
- webview: socketNameMatch[1]
132
- ? `${WEBVIEW_BASE}${socketNameMatch[1]}`
134
+ webview: matchedSocketName
135
+ ? `${WEBVIEW_BASE}${matchedSocketName}`
133
136
  : `${WEBVIEW_BASE}${crosswalkMatch[1]}`,
134
137
  });
135
138
  }
@@ -148,7 +151,7 @@ async function webviewsFromProcs (adb, deviceSocket = null) {
148
151
  * successfully or `null` otherwise
149
152
  * @throws {Error} If there was an error while allocating the local port
150
153
  */
151
- async function allocateDevtoolsPort (adb, socketName, webviewDevtoolsPort = null) {
154
+ async function allocateDevtoolsPort(adb, socketName, webviewDevtoolsPort = null) {
152
155
  // socket names come with '@', but this should not be a part of the abstract
153
156
  // remote port, so remove it
154
157
  const remotePort = socketName.replace(/^@/, '');
@@ -157,20 +160,25 @@ async function allocateDevtoolsPort (adb, socketName, webviewDevtoolsPort = null
157
160
  endPort = webviewDevtoolsPort + (endPort - startPort);
158
161
  startPort = webviewDevtoolsPort;
159
162
  }
160
- logger.debug(`Forwarding remote port ${remotePort} to a local ` +
161
- `port in range ${startPort}..${endPort}`);
163
+ logger.debug(
164
+ `Forwarding remote port ${remotePort} to a local ` + `port in range ${startPort}..${endPort}`
165
+ );
162
166
  if (!webviewDevtoolsPort) {
163
- logger.debug(`You could use the 'webviewDevtoolsPort' capability to customize ` +
164
- `the starting port number`);
167
+ logger.debug(
168
+ `You could use the 'webviewDevtoolsPort' capability to customize ` +
169
+ `the starting port number`
170
+ );
165
171
  }
166
172
  return await DEVTOOLS_PORT_ALLOCATION_GUARD(async () => {
167
173
  let localPort;
168
174
  try {
169
175
  localPort = await findAPortNotInUse(startPort, endPort);
170
176
  } catch (e) {
171
- throw new Error(`Cannot find any free port to forward the Devtools socket ` +
172
- `in range ${startPort}..${endPort}. You could set the starting port number ` +
173
- `manually by providing the 'webviewDevtoolsPort' capability`);
177
+ throw new Error(
178
+ `Cannot find any free port to forward the Devtools socket ` +
179
+ `in range ${startPort}..${endPort}. You could set the starting port number ` +
180
+ `manually by providing the 'webviewDevtoolsPort' capability`
181
+ );
174
182
  }
175
183
  await adb.adbExec(['forward', `tcp:${localPort}`, `localabstract:${remotePort}`]);
176
184
  return localPort;
@@ -213,7 +221,7 @@ async function allocateDevtoolsPort (adb, socketName, webviewDevtoolsPort = null
213
221
  * `enableWebviewDetailsCollection` properties are falsy then no details collection
214
222
  * is performed
215
223
  */
216
- async function collectWebviewsDetails (adb, webviewsMapping, opts = {}) {
224
+ async function collectWebviewsDetails(adb, webviewsMapping, opts = {}) {
217
225
  if (_.isEmpty(webviewsMapping)) {
218
226
  return;
219
227
  }
@@ -225,14 +233,18 @@ async function collectWebviewsDetails (adb, webviewsMapping, opts = {}) {
225
233
  } = opts;
226
234
 
227
235
  if (!ensureWebviewsHavePages) {
228
- logger.info(`Not checking whether webviews have active pages; use the ` +
229
- `'ensureWebviewsHavePages' cap to turn this check on`);
236
+ logger.info(
237
+ `Not checking whether webviews have active pages; use the ` +
238
+ `'ensureWebviewsHavePages' cap to turn this check on`
239
+ );
230
240
  }
231
241
 
232
242
  if (!enableWebviewDetailsCollection) {
233
- logger.info(`Not collecting web view details. Details collection might help ` +
234
- `to make Chromedriver initialization more precise. Use the 'enableWebviewDetailsCollection' ` +
235
- `cap to turn it on`);
243
+ logger.info(
244
+ `Not collecting web view details. Details collection might help ` +
245
+ `to make Chromedriver initialization more precise. Use the 'enableWebviewDetailsCollection' ` +
246
+ `cap to turn it on`
247
+ );
236
248
  }
237
249
 
238
250
  if (!ensureWebviewsHavePages && !enableWebviewDetailsCollection) {
@@ -243,47 +255,53 @@ async function collectWebviewsDetails (adb, webviewsMapping, opts = {}) {
243
255
  logger.debug(`Collecting CDP data of ${util.pluralize('webview', webviewsMapping.length, true)}`);
244
256
  const detailCollectors = [];
245
257
  for (const item of webviewsMapping) {
246
- detailCollectors.push((async () => {
247
- let localPort;
248
- try {
249
- localPort = await allocateDevtoolsPort(adb, item.proc, webviewDevtoolsPort);
250
- if (enableWebviewDetailsCollection) {
251
- item.info = await cdpInfo(localPort);
252
- }
253
- if (ensureWebviewsHavePages) {
254
- item.pages = await cdpList(localPort);
255
- }
256
- } catch (e) {
257
- logger.debug(e);
258
- } finally {
259
- if (localPort) {
260
- try {
261
- await adb.removePortForward(localPort);
262
- } catch (e) {
263
- logger.debug(e);
258
+ detailCollectors.push(
259
+ (async () => {
260
+ let localPort;
261
+ try {
262
+ localPort = await allocateDevtoolsPort(adb, item.proc, webviewDevtoolsPort);
263
+ if (enableWebviewDetailsCollection) {
264
+ item.info = await cdpInfo(localPort);
265
+ }
266
+ if (ensureWebviewsHavePages) {
267
+ item.pages = await cdpList(localPort);
268
+ }
269
+ } catch (e) {
270
+ logger.debug(e);
271
+ } finally {
272
+ if (localPort) {
273
+ try {
274
+ await adb.removePortForward(localPort);
275
+ } catch (e) {
276
+ logger.debug(e);
277
+ }
264
278
  }
265
279
  }
266
- }
267
- })());
280
+ })()
281
+ );
268
282
  }
269
283
  await B.all(detailCollectors);
270
284
  logger.debug(`CDP data collection completed`);
271
285
  }
272
286
 
273
287
  // https://chromedevtools.github.io/devtools-protocol/
274
- async function cdpList (localPort) {
275
- return (await axios({
276
- url: `http://127.0.0.1:${localPort}/json/list`,
277
- timeout: CDP_REQ_TIMEOUT,
278
- })).data;
288
+ async function cdpList(localPort) {
289
+ return (
290
+ await axios({
291
+ url: `http://127.0.0.1:${localPort}/json/list`,
292
+ timeout: CDP_REQ_TIMEOUT,
293
+ })
294
+ ).data;
279
295
  }
280
296
 
281
297
  // https://chromedevtools.github.io/devtools-protocol/
282
- async function cdpInfo (localPort) {
283
- return (await axios({
284
- url: `http://127.0.0.1:${localPort}/json/version`,
285
- timeout: CDP_REQ_TIMEOUT,
286
- })).data;
298
+ async function cdpInfo(localPort) {
299
+ return (
300
+ await axios({
301
+ url: `http://127.0.0.1:${localPort}/json/version`,
302
+ timeout: CDP_REQ_TIMEOUT,
303
+ })
304
+ ).data;
287
305
  }
288
306
 
289
307
  /**
@@ -298,7 +316,7 @@ async function cdpInfo (localPort) {
298
316
  * @returns {string} - the package name of the app running the webview
299
317
  * @throws {Error} If there was a failure while retrieving the process name
300
318
  */
301
- helpers.procFromWebview = async function procFromWebview (adb, webview) {
319
+ helpers.procFromWebview = async function procFromWebview(adb, webview) {
302
320
  const pidMatch = WEBVIEW_PID_PATTERN.exec(webview);
303
321
  if (!pidMatch) {
304
322
  throw new Error(`Could not find PID for webview '${webview}'`);
@@ -319,10 +337,10 @@ helpers.procFromWebview = async function procFromWebview (adb, webview) {
319
337
  * @param {GetWebviewsOpts} opts See note on getWebViewsMapping
320
338
  * @return {Array.<string>} - a list of webview names
321
339
  */
322
- helpers.parseWebviewNames = function parseWebviewNames (webviewsMapping, {
323
- ensureWebviewsHavePages = true,
324
- isChromeSession = false
325
- } = {}) {
340
+ helpers.parseWebviewNames = function parseWebviewNames(
341
+ webviewsMapping,
342
+ {ensureWebviewsHavePages = true, isChromeSession = false} = {}
343
+ ) {
326
344
  if (isChromeSession) {
327
345
  return [CHROMIUM_WIN];
328
346
  }
@@ -330,15 +348,19 @@ helpers.parseWebviewNames = function parseWebviewNames (webviewsMapping, {
330
348
  const result = [];
331
349
  for (const {webview, pages, proc, webviewName} of webviewsMapping) {
332
350
  if (ensureWebviewsHavePages && pages?.length === 0) {
333
- logger.info(`Skipping the webview '${webview}' at '${proc}' ` +
334
- `since it has reported having zero pages`);
351
+ logger.info(
352
+ `Skipping the webview '${webview}' at '${proc}' ` +
353
+ `since it has reported having zero pages`
354
+ );
335
355
  continue;
336
356
  }
337
357
  if (webviewName) {
338
358
  result.push(webviewName);
339
359
  }
340
360
  }
341
- logger.debug(`Found ${util.pluralize('webview', result.length, true)}: ${JSON.stringify(result)}`);
361
+ logger.debug(
362
+ `Found ${util.pluralize('webview', result.length, true)}: ${JSON.stringify(result)}`
363
+ );
342
364
  return result;
343
365
  };
344
366
 
@@ -381,12 +403,15 @@ helpers.parseWebviewNames = function parseWebviewNames (webviewsMapping, {
381
403
  *
382
404
  * @return {Array<WebviewsMapping>} webviewsMapping
383
405
  */
384
- helpers.getWebViewsMapping = async function getWebViewsMapping (adb, {
385
- androidDeviceSocket = null,
386
- ensureWebviewsHavePages = true,
387
- webviewDevtoolsPort = null,
388
- enableWebviewDetailsCollection = true
389
- } = {}) {
406
+ helpers.getWebViewsMapping = async function getWebViewsMapping(
407
+ adb,
408
+ {
409
+ androidDeviceSocket = null,
410
+ ensureWebviewsHavePages = true,
411
+ webviewDevtoolsPort = null,
412
+ enableWebviewDetailsCollection = true,
413
+ } = {}
414
+ ) {
390
415
  logger.debug('Getting a list of available webviews');
391
416
  const webviewsMapping = await webviewsFromProcs(adb, androidDeviceSocket);
392
417
 
@@ -423,7 +448,7 @@ helpers.getWebViewsMapping = async function getWebViewsMapping (adb, {
423
448
  webviewMapping.webviewName = wvName;
424
449
  const key = toDetailsCacheKey(adb, wvName);
425
450
  if (info || process) {
426
- WEBVIEWS_DETAILS_CACHE.set(key, { info, process });
451
+ WEBVIEWS_DETAILS_CACHE.set(key, {info, process});
427
452
  } else if (WEBVIEWS_DETAILS_CACHE.has(key)) {
428
453
  WEBVIEWS_DETAILS_CACHE.delete(key);
429
454
  }
@@ -458,7 +483,7 @@ helpers.getWebViewsMapping = async function getWebViewsMapping (adb, {
458
483
  * @param {string} webview The name of the web view
459
484
  * @returns {?WebViewDetails} Either `undefined` or the recent web view details
460
485
  */
461
- helpers.getWebviewDetails = function getWebviewDetails (adb, webview) {
486
+ helpers.getWebviewDetails = function getWebviewDetails(adb, webview) {
462
487
  const key = toDetailsCacheKey(adb, webview);
463
488
  return WEBVIEWS_DETAILS_CACHE.get(key);
464
489
  };
@@ -473,12 +498,13 @@ helpers.getWebviewDetails = function getWebviewDetails (adb, webview) {
473
498
  * @returns {Object} The capabilities object.
474
499
  * See https://chromedriver.chromium.org/capabilities for more details.
475
500
  */
476
- helpers.createChromedriverCaps = function createChromedriverCaps (opts, deviceId, webViewDetails) {
477
- const caps = { chromeOptions: {} };
501
+ helpers.createChromedriverCaps = function createChromedriverCaps(opts, deviceId, webViewDetails) {
502
+ const caps = {chromeOptions: {}};
478
503
 
479
- const androidPackage = opts.chromeOptions?.androidPackage
480
- || opts.appPackage
481
- || webViewDetails?.info?.['Android-Package'];
504
+ const androidPackage =
505
+ opts.chromeOptions?.androidPackage ||
506
+ opts.appPackage ||
507
+ webViewDetails?.info?.['Android-Package'];
482
508
  if (androidPackage) {
483
509
  // chromedriver raises an invalid argument error when androidPackage is 'null'
484
510
  caps.chromeOptions.androidPackage = androidPackage;
@@ -524,13 +550,13 @@ helpers.createChromedriverCaps = function createChromedriverCaps (opts, deviceId
524
550
  caps.loggingPrefs = opts.chromeLoggingPrefs || opts.loggingPrefs;
525
551
  }
526
552
  if (opts.enablePerformanceLogging) {
527
- logger.warn(`The 'enablePerformanceLogging' cap is deprecated; simply use ` +
528
- `the 'chromeLoggingPrefs' cap instead, with a 'performance' key set to 'ALL'`);
553
+ logger.warn(
554
+ `The 'enablePerformanceLogging' cap is deprecated; simply use ` +
555
+ `the 'chromeLoggingPrefs' cap instead, with a 'performance' key set to 'ALL'`
556
+ );
529
557
  const newPref = {performance: 'ALL'};
530
558
  // don't overwrite other logging prefs that have been sent in if they exist
531
- caps.loggingPrefs = caps.loggingPrefs
532
- ? Object.assign({}, caps.loggingPrefs, newPref)
533
- : newPref;
559
+ caps.loggingPrefs = caps.loggingPrefs ? Object.assign({}, caps.loggingPrefs, newPref) : newPref;
534
560
  }
535
561
 
536
562
  if (opts.chromeOptions?.Arguments) {
@@ -539,8 +565,9 @@ helpers.createChromedriverCaps = function createChromedriverCaps (opts, deviceId
539
565
  delete opts.chromeOptions.Arguments;
540
566
  }
541
567
 
542
- logger.debug('Precalculated Chromedriver capabilities: ' +
543
- JSON.stringify(caps.chromeOptions, null, 2));
568
+ logger.debug(
569
+ 'Precalculated Chromedriver capabilities: ' + JSON.stringify(caps.chromeOptions, null, 2)
570
+ );
544
571
 
545
572
  const protectedCapNames = [];
546
573
  for (const [opt, val] of _.toPairs(opts.chromeOptions)) {
@@ -551,8 +578,10 @@ helpers.createChromedriverCaps = function createChromedriverCaps (opts, deviceId
551
578
  }
552
579
  }
553
580
  if (!_.isEmpty(protectedCapNames)) {
554
- logger.info('The following Chromedriver capabilities cannot be overridden ' +
555
- 'by the provided chromeOptions:');
581
+ logger.info(
582
+ 'The following Chromedriver capabilities cannot be overridden ' +
583
+ 'by the provided chromeOptions:'
584
+ );
556
585
  for (const optName of protectedCapNames) {
557
586
  logger.info(` ${optName} (${JSON.stringify(opts.chromeOptions[optName])})`);
558
587
  }
@@ -562,4 +591,12 @@ helpers.createChromedriverCaps = function createChromedriverCaps (opts, deviceId
562
591
  };
563
592
 
564
593
  export default helpers;
565
- export { helpers, NATIVE_WIN, WEBVIEW_WIN, WEBVIEW_BASE, CHROMIUM_WIN, KNOWN_CHROME_PACKAGE_NAMES };
594
+ export {
595
+ helpers,
596
+ NATIVE_WIN,
597
+ WEBVIEW_WIN,
598
+ WEBVIEW_BASE,
599
+ CHROMIUM_WIN,
600
+ KNOWN_CHROME_PACKAGE_NAMES,
601
+ DEVTOOLS_SOCKET_PATTERN,
602
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appium-android-driver",
3
- "version": "5.14.1",
3
+ "version": "5.14.3",
4
4
  "description": "Android UiAutomator and Chrome support for Appium",
5
5
  "keywords": [
6
6
  "appium",
@@ -108,7 +108,7 @@
108
108
  "eslint-plugin-mocha": "^9.0.0",
109
109
  "eslint-plugin-promise": "^6.0.0",
110
110
  "husky": "^8.0.3",
111
- "lint-staged": "^13.0.3",
111
+ "lint-staged": "^14.0.0",
112
112
  "mocha": "^10.0.0",
113
113
  "prettier": "^2.8.8",
114
114
  "rimraf": "^5.0.0",