@appium/base-driver 9.11.1 → 9.11.2

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.
@@ -20,7 +20,6 @@ export type StartServerOpts = {
20
20
  hostname?: string | undefined;
21
21
  };
22
22
  export type AppiumServer = import("@appium/types").AppiumServer;
23
- export type AppiumServerSocket = import("@appium/types").AppiumServerSocket;
24
23
  export type MethodMap = import("@appium/types").MethodMap<import("@appium/types").ExternalDriver>;
25
24
  /**
26
25
  * Options for {@linkcode configureHttp}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../lib/express/server.js"],"names":[],"mappings":";;;;;;;gBA8Tc,OAAO,MAAM,EAAE,MAAM;;;;UACrB,MAAM;;;;sBACN,MAAM;;;;;;2BAKP,OAAO,eAAe,EAAE,YAAY;iCACpC,OAAO,eAAe,EAAE,kBAAkB;wBAI1C,OAAO,eAAe,EAAE,SAAS,CAAC,OAAO,eAAe,EAAE,cAAc,CAAC;;;;;;;;gBAMxE,OAAO,MAAM,EAAE,MAAM;;;;YACrB,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI;;;;sBACrB,MAAM;;;;;;8BAMN,wBAAwB;UACxB,MAAM;;;;;;;;;;;;6CAaT,OAAO,SAAS,EAAE,OAAO,sDAEvB,IAAI;;;;;;;;;;;;SAaH,OAAO,SAAS,EAAE,OAAO;eACzB,wBAAwB;;;;;;AA5StC;;;;GAIG;AACH,6BAHW,UAAU,GACR,OAAO,CAAC,YAAY,CAAC,CAuDjC;AAED;;;GAGG;AACH,6GAFW,mBAAmB,QAiD7B;AAyGD;;;;GAIG;AACH,4CAHW,MAAM,GACJ,MAAM,CAkBlB"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../lib/express/server.js"],"names":[],"mappings":";;;;;;;gBA6Sc,OAAO,MAAM,EAAE,MAAM;;;;UACrB,MAAM;;;;sBACN,MAAM;;;;;;2BAKP,OAAO,eAAe,EAAE,YAAY;wBAIpC,OAAO,eAAe,EAAE,SAAS,CAAC,OAAO,eAAe,EAAE,cAAc,CAAC;;;;;;;;gBAMxE,OAAO,MAAM,EAAE,MAAM;;;;YACrB,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI;;;;sBACrB,MAAM;;;;;;8BAMN,wBAAwB;UACxB,MAAM;;;;;;;;;;;;6CAaT,OAAO,SAAS,EAAE,OAAO,sDAEvB,IAAI;;;;;;;;;;;;SAaH,OAAO,SAAS,EAAE,OAAO;eACzB,wBAAwB;;;;;;AA1RtC;;;;GAIG;AACH,6BAHW,UAAU,GACR,OAAO,CAAC,YAAY,CAAC,CAuDjC;AAED;;;GAGG;AACH,6GAFW,mBAAmB,QAiD7B;AAwFD;;;;GAIG;AACH,4CAHW,MAAM,GACJ,MAAM,CAkBlB"}
@@ -21,9 +21,9 @@ const crash_1 = require("./crash");
21
21
  const websocket_1 = require("./websocket");
22
22
  const bluebird_1 = __importDefault(require("bluebird"));
23
23
  const constants_1 = require("../constants");
24
- const events_1 = require("events");
25
24
  const support_1 = require("@appium/support");
26
25
  const KEEP_ALIVE_TIMEOUT_MS = 10 * 60 * 1000; // 10 minutes
26
+ const SERVER_CLOSE_TIMEOUT_MS = 5000;
27
27
  /**
28
28
  *
29
29
  * @param {import('express').Express} app
@@ -147,10 +147,6 @@ function configureServer({ app, addRoutes, allowCors = true, basePath = constant
147
147
  * @returns {AppiumServer}
148
148
  */
149
149
  function configureHttp({ httpServer, reject, keepAliveTimeout }) {
150
- const serverState = {
151
- notifier: new events_1.EventEmitter(),
152
- closed: false,
153
- };
154
150
  /**
155
151
  * @type {AppiumServer}
156
152
  */
@@ -162,22 +158,28 @@ function configureHttp({ httpServer, reject, keepAliveTimeout }) {
162
158
  appiumServer.getWebSocketHandlers = websocket_1.getWebSocketHandlers;
163
159
  // http.Server.close() only stops new connections, but we need to wait until
164
160
  // all connections are closed and the `close` event is emitted
165
- const close = appiumServer.close.bind(appiumServer);
166
- appiumServer.close = async () => await new bluebird_1.default((resolve, reject) => {
167
- // https://github.com/nodejs/node-v0.x-archive/issues/9066#issuecomment-124210576
168
- serverState.closed = true;
169
- serverState.notifier.emit('shutdown');
170
- logger_1.default.info('Waiting until the server is closed');
171
- httpServer.on('close', () => {
172
- logger_1.default.info('Received server close event');
173
- resolve();
161
+ const originalClose = appiumServer.close.bind(appiumServer);
162
+ appiumServer.close = async () => await new bluebird_1.default((_resolve, _reject) => {
163
+ logger_1.default.info('Closing Appium HTTP server');
164
+ const timer = new support_1.timing.Timer().start();
165
+ const onTimeout = setTimeout(() => {
166
+ logger_1.default.info(`Not all active connections have been closed within ` +
167
+ `${timer.getDuration().asMilliSeconds.toFixed(0)}ms. Exiting anyway.`);
168
+ process.exit(process.exitCode ?? 0);
169
+ }, SERVER_CLOSE_TIMEOUT_MS);
170
+ httpServer.once('close', () => {
171
+ logger_1.default.info(`Appium HTTP server has been succesfully closed after ` +
172
+ `${timer.getDuration().asMilliSeconds.toFixed(0)}ms`);
173
+ clearTimeout(onTimeout);
174
+ _resolve();
174
175
  });
175
- close((err) => {
176
- if (err)
177
- reject(err); // eslint-disable-line curly
176
+ originalClose((/** @type {Error|undefined} */ err) => {
177
+ if (err) {
178
+ _reject(err);
179
+ }
178
180
  });
179
181
  });
180
- appiumServer.on('error',
182
+ appiumServer.once('error',
181
183
  /** @param {NodeJS.ErrnoException} err */ (err) => {
182
184
  if (err.code === 'EADDRNOTAVAIL') {
183
185
  logger_1.default.error('Could not start REST http interface listener. ' + 'Requested address is not available.');
@@ -189,27 +191,7 @@ function configureHttp({ httpServer, reject, keepAliveTimeout }) {
189
191
  }
190
192
  reject(err);
191
193
  });
192
- appiumServer.on('connection',
193
- /** @param {AppiumServerSocket} socket */ (socket) => {
194
- socket.setTimeout(keepAliveTimeout);
195
- socket.on('error', reject);
196
- function destroy() {
197
- socket.destroy();
198
- }
199
- socket._openReqCount = 0;
200
- socket.once('close', () => serverState.notifier.removeListener('shutdown', destroy));
201
- serverState.notifier.once('shutdown', destroy);
202
- });
203
- appiumServer.on('request', function (req, res) {
204
- const socket = /** @type {AppiumServerSocket} */ (req.connection || req.socket);
205
- socket._openReqCount++;
206
- res.on('finish', function () {
207
- socket._openReqCount--;
208
- if (serverState.closed && socket._openReqCount === 0) {
209
- socket.destroy();
210
- }
211
- });
212
- });
194
+ appiumServer.on('connection', (socket) => socket.setTimeout(keepAliveTimeout));
213
195
  return appiumServer;
214
196
  }
215
197
  /**
@@ -257,7 +239,6 @@ function normalizeBasePath(basePath) {
257
239
  */
258
240
  /**
259
241
  * @typedef {import('@appium/types').AppiumServer} AppiumServer
260
- * @typedef {import('@appium/types').AppiumServerSocket} AppiumServerSocket
261
242
  */
262
243
  /**
263
244
  * @typedef {import('@appium/types').MethodMap<import('@appium/types').ExternalDriver>} MethodMap
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../lib/express/server.js"],"names":[],"mappings":";;;;;AAyTQ,wBAAM;AAAE,0CAAe;AAAE,8CAAiB;AAzTlD,oDAAuB;AACvB,gDAAwB;AACxB,sDAA8B;AAC9B,gDAAwB;AACxB,kEAAoC;AACpC,8DAAqC;AACrC,sEAA6C;AAC7C,sDAA2B;AAC3B,uDAAqE;AACrE,6CAUsB;AACtB,qCAAiG;AACjG,mCAAmD;AACnD,2CAKqB;AACrB,wDAAyB;AACzB,4CAA+C;AAC/C,mCAAoC;AACpC,6CAAmC;AAEnC,MAAM,qBAAqB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AAE3D;;;;;GAKG;AACH,KAAK,UAAU,YAAY,CAAE,GAAG,EAAE,OAAO;IACvC,MAAM,EAAC,kBAAkB,EAAE,UAAU,EAAC,GAAG,OAAO,IAAI,EAAE,CAAC;IACvD,IAAI,CAAC,kBAAkB,IAAI,CAAC,UAAU,EAAE,CAAC;QACvC,OAAO,cAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,CAAC,kBAAkB,IAAI,CAAC,UAAU,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,gBAAC,CAAC,GAAG,CAClB,MAAM,kBAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7C,CAAC,aAAa,EAAE,KAAK,CAAC,EACtB,OAAO,CACR,CAAC;IACF,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,QAAQ,CAAC,uCAAuC,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IACD,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,MAAM,kBAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5E,gBAAG,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;IAC5E,8DAA8D;IAC9D,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC;QAClC,IAAI;QACJ,GAAG;QACH,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK;YACZ,GAAG,EAAE,IAAI;SACV;KACF,EAAE,GAAG,CAAC,CAAC;AACV,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,MAAM,CAAC,IAAI;IACxB,MAAM,EACJ,wBAAwB,EACxB,IAAI,EACJ,QAAQ,EACR,OAAO,GAAG,EAAE,EACZ,SAAS,GAAG,IAAI,EAChB,QAAQ,GAAG,6BAAiB,EAC5B,cAAc,GAAG,EAAE,EACnB,cAAc,GAAG,EAAE,EACnB,gBAAgB,GAAG,qBAAqB,GACzC,GAAG,IAAI,CAAC;IAET,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IACtB,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAEpD,OAAO,MAAM,IAAI,kBAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,+FAA+F;QAC/F,+FAA+F;QAC/F,4FAA4F;QAC5F,wFAAwF;QACxF,mDAAmD;QACnD,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,aAAa,CAAC;gBACjC,UAAU;gBACV,MAAM;gBACN,gBAAgB;aACjB,CAAC,CAAC;YACH,eAAe,CAAC;gBACd,GAAG;gBACH,SAAS,EAAE,wBAAwB;gBACnC,SAAS;gBACT,QAAQ;gBACR,cAAc;gBACd,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;aAClD,CAAC,CAAC;YACH,6DAA6D;YAC7D,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;gBACrC,MAAM,OAAO,CAAC,GAAG,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;YAC5C,CAAC;YAED,yFAAyF;YACzF,0FAA0F;YAC1F,gEAAgE;YAChE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,4BAAe,CAAC,CAAC;YAE9B,MAAM,WAAW,CAAC,EAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAC,CAAC,CAAC;YAElE,OAAO,CAAC,YAAY,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,EACvB,GAAG,EACH,SAAS,EACT,SAAS,GAAG,IAAI,EAChB,QAAQ,GAAG,6BAAiB,EAC5B,cAAc,GAAG,EAAE,EACnB,iBAAiB,GAAG,EAAE,GACvB;IACC,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAEvC,GAAG,CAAC,GAAG,CAAC,iCAAe,CAAC,CAAC;IACzB,GAAG,CAAC,GAAG,CAAC,6BAAgB,CAAC,CAAC;IAE1B,uBAAuB;IACvB,GAAG,CAAC,GAAG,CAAC,IAAA,uBAAO,EAAC,cAAI,CAAC,OAAO,CAAC,mBAAU,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAC1D,GAAG,CAAC,GAAG,CAAC,iBAAO,CAAC,MAAM,CAAC,mBAAU,CAAC,CAAC,CAAC;IAEpC,4BAA4B;IAC5B,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,gBAAgB,EAAE,oBAAY,CAAC,CAAC;IACnD,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,QAAQ,EAAE,oBAAY,CAAC,CAAC;IAE3C,GAAG,CAAC,GAAG,CAAC,IAAA,0BAAa,EAAC,iBAAiB,CAAC,CAAC,CAAC;IAC1C,IAAI,SAAS,EAAE,CAAC;QACd,GAAG,CAAC,GAAG,CAAC,6BAAgB,CAAC,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,GAAG,CAAC,IAAA,yCAA4B,EAAC,QAAQ,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,GAAG,CAAC,GAAG,CAAC,8BAAiB,CAAC,CAAC;IAC3B,GAAG,CAAC,GAAG,CAAC,IAAA,iCAAoB,EAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,GAAG,CAAC,GAAG,CAAC,qCAAwB,CAAC,CAAC;IAClC,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;IACjD,GAAG,CAAC,GAAG,CAAC,IAAA,yBAAc,GAAE,CAAC,CAAC;IAC1B,GAAG,CAAC,GAAG,CAAC,4BAAe,CAAC,CAAC;IAEzB,mEAAmE;IACnE,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC;IAEzC,qEAAqE;IACrE,GAAG,CAAC,GAAG,CAAC,mCAAiB,CAAC,CAAC;IAE3B,SAAS,CAAC,GAAG,EAAE,EAAC,QAAQ,EAAE,cAAc,EAAC,CAAC,CAAC;IAE3C,mCAAmC;IACnC,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,gBAAO,CAAC,CAAC;IAC7B,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,kBAAS,CAAC,CAAC;IACvC,GAAG,CAAC,GAAG,CAAC,6BAA6B,EAAE,4BAAmB,CAAC,CAAC;IAC5D,GAAG,CAAC,GAAG,CAAC,6BAA6B,EAAE,2BAAkB,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,EAAC,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAC;IAC3D,MAAM,WAAW,GAAG;QAClB,QAAQ,EAAE,IAAI,qBAAY,EAAE;QAC5B,MAAM,EAAE,KAAK;KACd,CAAC;IACF;;OAEG;IACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,CAAC,UAAU,CAAC,CAAC;IACrD,YAAY,CAAC,iBAAiB,GAAG,EAAE,CAAC;IACpC,YAAY,CAAC,mBAAmB,GAAG,+BAAmB,CAAC;IACvD,YAAY,CAAC,sBAAsB,GAAG,kCAAsB,CAAC;IAC7D,YAAY,CAAC,0BAA0B,GAAG,sCAA0B,CAAC;IACrE,YAAY,CAAC,oBAAoB,GAAG,gCAAoB,CAAC;IAEzD,4EAA4E;IAC5E,8DAA8D;IAC9D,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACpD,YAAY,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAC9B,MAAM,IAAI,kBAAC,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC9B,iFAAiF;QACjF,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC;QAC1B,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,gBAAG,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAC/C,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC1B,gBAAG,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YACxC,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACZ,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,4BAA4B;QACpD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,YAAY,CAAC,EAAE,CACb,OAAO;IACP,yCAAyC,CAAC,CAAC,GAAG,EAAE,EAAE;QAChD,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACjC,gBAAG,CAAC,KAAK,CACP,gDAAgD,GAAG,qCAAqC,CACzF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,gBAAG,CAAC,KAAK,CACP,8DAA8D;gBAC5D,2DAA2D;gBAC3D,gDAAgD,CACnD,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,CAAC;IACd,CAAC,CACF,CAAC;IAEF,YAAY,CAAC,EAAE,CACb,YAAY;IACZ,yCAAyC,CAAC,CAAC,MAAM,EAAE,EAAE;QACnD,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAE3B,SAAS,OAAO;YACd,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;QACD,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACrF,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC,CACF,CAAC;IAEF,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,GAAG,EAAE,GAAG;QAC3C,MAAM,MAAM,GAAG,iCAAiC,CAAC,CAAC,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAChF,MAAM,CAAC,aAAa,EAAE,CAAC;QACvB,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE;YACf,MAAM,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,WAAW,CAAC,MAAM,IAAI,MAAM,CAAC,aAAa,KAAK,CAAC,EAAE,CAAC;gBACrD,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,WAAW,CAAC,EAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAC;IACvE,qDAAqD;IACrD,gCAAgC;IAChC,kEAAkE;IAClE,MAAM,KAAK,GAAG,kBAAC,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,EAAC,OAAO,EAAE,UAAU,EAAC,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3C,UAAU,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC/C,wDAAwD;IACxD,UAAU,CAAC,cAAc,GAAG,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC;IACxD,MAAM,YAAY,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,QAAQ;IACjC,IAAI,CAAC,gBAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,mEAAmE;IACnE,4BAA4B;IAC5B,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEvC,6EAA6E;IAC7E,uCAAuC;IACvC,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC3C,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAID;;;;;;;GAOG;AAEH;;;GAGG;AAEH;;GAEG;AAEH;;;;;;GAMG;AAEH;;;;;;;;;;;;GAYG;AAEH;;;;;;GAMG;AAEH;;;;;GAKG;AAEH;;;;;;;;;GASG"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../lib/express/server.js"],"names":[],"mappings":"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"}
@@ -1,3 +1,11 @@
1
+ /**
2
+ *
3
+ * @param {string} endpoint
4
+ * @param {import('@appium/types').HTTPMethod} method
5
+ * @param {string} [basePath=DEFAULT_BASE_PATH]
6
+ * @returns {string|undefined}
7
+ */
8
+ export function routeToCommandName(endpoint: string, method: import("@appium/types").HTTPMethod, basePath?: string | undefined): string | undefined;
1
9
  /**
2
10
  * define the routes, mapping of HTTP methods to particular driver commands, and
3
11
  * any parameters that are expected in a request parameters can be `required` or
@@ -1339,14 +1347,6 @@ export const METHOD_MAP: {
1339
1347
  };
1340
1348
  };
1341
1349
  };
1342
- export let ALL_COMMANDS: any[];
1350
+ export const ALL_COMMANDS: any[];
1343
1351
  export const NO_SESSION_ID_COMMANDS: string[];
1344
- /**
1345
- *
1346
- * @param {string} endpoint
1347
- * @param {import('@appium/types').HTTPMethod} method
1348
- * @param {string} [basePath]
1349
- * @returns {string|undefined}
1350
- */
1351
- export function routeToCommandName(endpoint: string, method: import("@appium/types").HTTPMethod, basePath?: string | undefined): string | undefined;
1352
1352
  //# sourceMappingURL=routes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../lib/protocol/routes.js"],"names":[],"mappings":"AAgBA;;;;;GAKG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+3BG;AAGH,+BAAsB;AAoFtB,8CAA6E;AA5C7E;;;;;;GAMG;AACH,6CALW,MAAM,UACN,OAAO,eAAe,EAAE,UAAU,kCAEhC,MAAM,GAAC,SAAS,CAoC5B"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../lib/protocol/routes.js"],"names":[],"mappings":"AA65BA;;;;;;GAMG;AACH,6CALW,MAAM,UACN,OAAO,eAAe,EAAE,UAAU,kCAEhC,MAAM,GAAC,SAAS,CAgC5B;AAj7BD;;;;;GAKG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+3BG;AAGH,iCAEyB;AA0CzB,8CAAoF"}
@@ -9,6 +9,7 @@ exports.routeToCommandName = routeToCommandName;
9
9
  const lodash_1 = __importDefault(require("lodash"));
10
10
  const support_1 = require("@appium/support");
11
11
  const constants_1 = require("../constants");
12
+ const path_to_regexp_1 = require("path-to-regexp");
12
13
  const SET_ALERT_TEXT_PAYLOAD_PARAMS = {
13
14
  validate: (jsonObj) => !support_1.util.hasValue(jsonObj.value) &&
14
15
  !support_1.util.hasValue(jsonObj.text) &&
@@ -23,7 +24,7 @@ const SET_ALERT_TEXT_PAYLOAD_PARAMS = {
23
24
  * `optional`
24
25
  * @satisfies {import('@appium/types').MethodMap<import('../basedriver/driver').BaseDriver>}
25
26
  */
26
- const METHOD_MAP = /** @type {const} */ ({
27
+ exports.METHOD_MAP = ({
27
28
  '/status': {
28
29
  GET: { command: 'getStatus' },
29
30
  },
@@ -904,82 +905,48 @@ const METHOD_MAP = /** @type {const} */ ({
904
905
  },
905
906
  //endregion
906
907
  });
907
- exports.METHOD_MAP = METHOD_MAP;
908
908
  // driver command names
909
- let ALL_COMMANDS = [];
910
- exports.ALL_COMMANDS = ALL_COMMANDS;
911
- for (let v of lodash_1.default.values(METHOD_MAP)) {
912
- for (let m of lodash_1.default.values(v)) {
913
- if ('command' in m && m.command) {
914
- ALL_COMMANDS.push(m.command);
915
- }
916
- }
917
- }
918
- const RE_ESCAPE = /[-[\]{}()+?.,\\^$|#\s]/g;
919
- const RE_PARAM = /([:*])(\w+)/g;
920
- class Route {
921
- constructor(route) {
922
- this.paramNames = [];
923
- let reStr = route.replace(RE_ESCAPE, '\\$&');
924
- reStr = reStr.replace(RE_PARAM, (_, mode, name) => {
925
- this.paramNames.push(name);
926
- return mode === ':' ? '([^/]*)' : '(.*)';
927
- });
928
- this.routeRegexp = new RegExp(`^${reStr}$`);
929
- }
930
- parse(url) {
931
- //if (url.indexOf('timeouts') !== -1 && this.routeRegexp.toString().indexOf('timeouts') !== -1) {
932
- //debugger;
933
- //}
934
- let matches = url.match(this.routeRegexp);
935
- if (!matches)
936
- return; // eslint-disable-line curly
937
- let i = 0;
938
- let params = {};
939
- while (i < this.paramNames.length) {
940
- const paramName = this.paramNames[i++];
941
- params[paramName] = matches[i];
942
- }
943
- return params;
944
- }
945
- }
909
+ exports.ALL_COMMANDS = lodash_1.default.flatMap(lodash_1.default.values(exports.METHOD_MAP).map(lodash_1.default.values))
910
+ .filter((m) => Boolean(m.command))
911
+ .map((m) => m.command);
946
912
  /**
947
913
  *
948
914
  * @param {string} endpoint
949
915
  * @param {import('@appium/types').HTTPMethod} method
950
- * @param {string} [basePath]
916
+ * @param {string} [basePath=DEFAULT_BASE_PATH]
951
917
  * @returns {string|undefined}
952
918
  */
953
919
  function routeToCommandName(endpoint, method, basePath = constants_1.DEFAULT_BASE_PATH) {
954
- let dstRoute = null;
955
- // remove any query string
956
- // TODO: would this be better handled as a `URL` object?
957
- if (endpoint.includes('?')) {
958
- endpoint = endpoint.slice(0, endpoint.indexOf('?'));
920
+ let normalizedEndpoint = basePath
921
+ ? endpoint.replace(new RegExp(`^${lodash_1.default.escapeRegExp(basePath)}`), '')
922
+ : endpoint;
923
+ normalizedEndpoint = `${lodash_1.default.startsWith(normalizedEndpoint, '/') ? '' : '/'}${normalizedEndpoint}`;
924
+ /** @type {string} */
925
+ let normalizedPathname;
926
+ try {
927
+ // we could use any prefix there as we anyway need to only extract the pathname
928
+ normalizedPathname = new URL(`https://appium.io${normalizedEndpoint}`).pathname;
959
929
  }
960
- const actualEndpoint = endpoint === '/' ? '' : lodash_1.default.startsWith(endpoint, '/') ? endpoint : `/${endpoint}`;
961
- for (let currentRoute of lodash_1.default.keys(METHOD_MAP)) {
962
- const route = new Route(`${basePath}${currentRoute}`);
963
- // we don't care about the actual session id for matching
964
- if (route.parse(`${basePath}/session/ignored-session-id${actualEndpoint}`) ||
965
- route.parse(`${basePath}${actualEndpoint}`) ||
966
- route.parse(actualEndpoint)) {
967
- dstRoute = currentRoute;
968
- break;
969
- }
930
+ catch (err) {
931
+ throw new Error(`'${endpoint}' cannot be translated to a command name: ${err.message}`);
932
+ }
933
+ /** @type {string[]} */
934
+ const possiblePathnames = [];
935
+ if (!normalizedPathname.startsWith('/session/')) {
936
+ possiblePathnames.push(`/session/any-session-id${normalizedPathname}`);
970
937
  }
971
- if (!dstRoute)
972
- return; // eslint-disable-line curly
973
- const methods = METHOD_MAP[dstRoute];
974
- method = /** @type {Uppercase<typeof method>} */ (lodash_1.default.toUpper(method));
975
- if (method in methods) {
976
- const dstMethod = lodash_1.default.get(methods, method);
977
- if (dstMethod.command) {
978
- return dstMethod.command;
938
+ possiblePathnames.push(normalizedPathname);
939
+ const normalizedMethod = lodash_1.default.toUpper(method);
940
+ for (const [routePath, routeSpec] of lodash_1.default.toPairs(exports.METHOD_MAP)) {
941
+ const routeRegexp = (0, path_to_regexp_1.pathToRegexp)(routePath);
942
+ if (possiblePathnames.some((pp) => routeRegexp.test(pp))) {
943
+ const commandName = routeSpec?.[normalizedMethod]?.command;
944
+ if (commandName) {
945
+ return commandName;
946
+ }
979
947
  }
980
948
  }
981
949
  }
982
950
  // driver commands that do not require a session to already exist
983
- const NO_SESSION_ID_COMMANDS = ['createSession', 'getStatus', 'getSessions'];
984
- exports.NO_SESSION_ID_COMMANDS = NO_SESSION_ID_COMMANDS;
951
+ exports.NO_SESSION_ID_COMMANDS = ['createSession', 'getStatus', 'getSessions'];
985
952
  //# sourceMappingURL=routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../lib/protocol/routes.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../lib/protocol/routes.js"],"names":[],"mappings":"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"}
@@ -28,10 +28,10 @@ import {
28
28
  } from './websocket';
29
29
  import B from 'bluebird';
30
30
  import {DEFAULT_BASE_PATH} from '../constants';
31
- import {EventEmitter} from 'events';
32
- import {fs} from '@appium/support';
31
+ import {fs, timing} from '@appium/support';
33
32
 
34
33
  const KEEP_ALIVE_TIMEOUT_MS = 10 * 60 * 1000; // 10 minutes
34
+ const SERVER_CLOSE_TIMEOUT_MS = 5000;
35
35
 
36
36
  /**
37
37
  *
@@ -192,10 +192,6 @@ function configureServer({
192
192
  * @returns {AppiumServer}
193
193
  */
194
194
  function configureHttp({httpServer, reject, keepAliveTimeout}) {
195
- const serverState = {
196
- notifier: new EventEmitter(),
197
- closed: false,
198
- };
199
195
  /**
200
196
  * @type {AppiumServer}
201
197
  */
@@ -208,23 +204,34 @@ function configureHttp({httpServer, reject, keepAliveTimeout}) {
208
204
 
209
205
  // http.Server.close() only stops new connections, but we need to wait until
210
206
  // all connections are closed and the `close` event is emitted
211
- const close = appiumServer.close.bind(appiumServer);
207
+ const originalClose = appiumServer.close.bind(appiumServer);
212
208
  appiumServer.close = async () =>
213
- await new B((resolve, reject) => {
214
- // https://github.com/nodejs/node-v0.x-archive/issues/9066#issuecomment-124210576
215
- serverState.closed = true;
216
- serverState.notifier.emit('shutdown');
217
- log.info('Waiting until the server is closed');
218
- httpServer.on('close', () => {
219
- log.info('Received server close event');
220
- resolve();
209
+ await new B((_resolve, _reject) => {
210
+ log.info('Closing Appium HTTP server');
211
+ const timer = new timing.Timer().start();
212
+ const onTimeout = setTimeout(() => {
213
+ log.info(
214
+ `Not all active connections have been closed within ` +
215
+ `${timer.getDuration().asMilliSeconds.toFixed(0)}ms. Exiting anyway.`
216
+ );
217
+ process.exit(process.exitCode ?? 0);
218
+ }, SERVER_CLOSE_TIMEOUT_MS);
219
+ httpServer.once('close', () => {
220
+ log.info(
221
+ `Appium HTTP server has been succesfully closed after ` +
222
+ `${timer.getDuration().asMilliSeconds.toFixed(0)}ms`
223
+ );
224
+ clearTimeout(onTimeout);
225
+ _resolve();
221
226
  });
222
- close((err) => {
223
- if (err) reject(err); // eslint-disable-line curly
227
+ originalClose((/** @type {Error|undefined} */ err) => {
228
+ if (err) {
229
+ _reject(err);
230
+ }
224
231
  });
225
232
  });
226
233
 
227
- appiumServer.on(
234
+ appiumServer.once(
228
235
  'error',
229
236
  /** @param {NodeJS.ErrnoException} err */ (err) => {
230
237
  if (err.code === 'EADDRNOTAVAIL') {
@@ -242,31 +249,7 @@ function configureHttp({httpServer, reject, keepAliveTimeout}) {
242
249
  }
243
250
  );
244
251
 
245
- appiumServer.on(
246
- 'connection',
247
- /** @param {AppiumServerSocket} socket */ (socket) => {
248
- socket.setTimeout(keepAliveTimeout);
249
- socket.on('error', reject);
250
-
251
- function destroy() {
252
- socket.destroy();
253
- }
254
- socket._openReqCount = 0;
255
- socket.once('close', () => serverState.notifier.removeListener('shutdown', destroy));
256
- serverState.notifier.once('shutdown', destroy);
257
- }
258
- );
259
-
260
- appiumServer.on('request', function (req, res) {
261
- const socket = /** @type {AppiumServerSocket} */ (req.connection || req.socket);
262
- socket._openReqCount++;
263
- res.on('finish', function () {
264
- socket._openReqCount--;
265
- if (serverState.closed && socket._openReqCount === 0) {
266
- socket.destroy();
267
- }
268
- });
269
- });
252
+ appiumServer.on('connection', (socket) => socket.setTimeout(keepAliveTimeout));
270
253
 
271
254
  return appiumServer;
272
255
  }
@@ -324,7 +307,6 @@ export {server, configureServer, normalizeBasePath};
324
307
 
325
308
  /**
326
309
  * @typedef {import('@appium/types').AppiumServer} AppiumServer
327
- * @typedef {import('@appium/types').AppiumServerSocket} AppiumServerSocket
328
310
  */
329
311
 
330
312
  /**
@@ -3,6 +3,7 @@
3
3
  import _ from 'lodash';
4
4
  import {util} from '@appium/support';
5
5
  import {PROTOCOLS, DEFAULT_BASE_PATH} from '../constants';
6
+ import {pathToRegexp} from 'path-to-regexp';
6
7
 
7
8
  const SET_ALERT_TEXT_PAYLOAD_PARAMS = {
8
9
  validate: (jsonObj) =>
@@ -20,7 +21,7 @@ const SET_ALERT_TEXT_PAYLOAD_PARAMS = {
20
21
  * `optional`
21
22
  * @satisfies {import('@appium/types').MethodMap<import('../basedriver/driver').BaseDriver>}
22
23
  */
23
- const METHOD_MAP = /** @type {const} */ ({
24
+ export const METHOD_MAP = /** @type {const} */ ({
24
25
  '/status': {
25
26
  GET: {command: 'getStatus'},
26
27
  },
@@ -918,90 +919,48 @@ const METHOD_MAP = /** @type {const} */ ({
918
919
  });
919
920
 
920
921
  // driver command names
921
- let ALL_COMMANDS = [];
922
- for (let v of _.values(METHOD_MAP)) {
923
- for (let m of _.values(v)) {
924
- if ('command' in m && m.command) {
925
- ALL_COMMANDS.push(m.command);
926
- }
927
- }
928
- }
929
-
930
- const RE_ESCAPE = /[-[\]{}()+?.,\\^$|#\s]/g;
931
- const RE_PARAM = /([:*])(\w+)/g;
932
-
933
- class Route {
934
- constructor(route) {
935
- this.paramNames = [];
936
-
937
- let reStr = route.replace(RE_ESCAPE, '\\$&');
938
- reStr = reStr.replace(RE_PARAM, (_, mode, name) => {
939
- this.paramNames.push(name);
940
- return mode === ':' ? '([^/]*)' : '(.*)';
941
- });
942
- this.routeRegexp = new RegExp(`^${reStr}$`);
943
- }
944
-
945
- parse(url) {
946
- //if (url.indexOf('timeouts') !== -1 && this.routeRegexp.toString().indexOf('timeouts') !== -1) {
947
- //debugger;
948
- //}
949
- let matches = url.match(this.routeRegexp);
950
- if (!matches) return; // eslint-disable-line curly
951
- let i = 0;
952
- let params = {};
953
- while (i < this.paramNames.length) {
954
- const paramName = this.paramNames[i++];
955
- params[paramName] = matches[i];
956
- }
957
- return params;
958
- }
959
- }
922
+ export const ALL_COMMANDS = _.flatMap(_.values(METHOD_MAP).map(_.values))
923
+ .filter((m) => Boolean(m.command))
924
+ .map((m) => m.command);
960
925
 
961
926
  /**
962
927
  *
963
928
  * @param {string} endpoint
964
929
  * @param {import('@appium/types').HTTPMethod} method
965
- * @param {string} [basePath]
930
+ * @param {string} [basePath=DEFAULT_BASE_PATH]
966
931
  * @returns {string|undefined}
967
932
  */
968
- function routeToCommandName(endpoint, method, basePath = DEFAULT_BASE_PATH) {
969
- let dstRoute = null;
970
-
971
- // remove any query string
972
- // TODO: would this be better handled as a `URL` object?
973
- if (endpoint.includes('?')) {
974
- endpoint = endpoint.slice(0, endpoint.indexOf('?'));
933
+ export function routeToCommandName(endpoint, method, basePath = DEFAULT_BASE_PATH) {
934
+ let normalizedEndpoint = basePath
935
+ ? endpoint.replace(new RegExp(`^${_.escapeRegExp(basePath)}`), '')
936
+ : endpoint;
937
+ normalizedEndpoint = `${_.startsWith(normalizedEndpoint, '/') ? '' : '/'}${normalizedEndpoint}`;
938
+ /** @type {string} */
939
+ let normalizedPathname;
940
+ try {
941
+ // we could use any prefix there as we anyway need to only extract the pathname
942
+ normalizedPathname = new URL(`https://appium.io${normalizedEndpoint}`).pathname;
943
+ } catch (err) {
944
+ throw new Error(`'${endpoint}' cannot be translated to a command name: ${err.message}`);
975
945
  }
976
946
 
977
- const actualEndpoint =
978
- endpoint === '/' ? '' : _.startsWith(endpoint, '/') ? endpoint : `/${endpoint}`;
979
-
980
- for (let currentRoute of _.keys(METHOD_MAP)) {
981
- const route = new Route(`${basePath}${currentRoute}`);
982
- // we don't care about the actual session id for matching
983
- if (
984
- route.parse(`${basePath}/session/ignored-session-id${actualEndpoint}`) ||
985
- route.parse(`${basePath}${actualEndpoint}`) ||
986
- route.parse(actualEndpoint)
987
- ) {
988
- dstRoute = currentRoute;
989
- break;
990
- }
947
+ /** @type {string[]} */
948
+ const possiblePathnames = [];
949
+ if (!normalizedPathname.startsWith('/session/')) {
950
+ possiblePathnames.push(`/session/any-session-id${normalizedPathname}`);
991
951
  }
992
- if (!dstRoute) return; // eslint-disable-line curly
993
-
994
- const methods = METHOD_MAP[dstRoute];
995
- method = /** @type {Uppercase<typeof method>} */ (_.toUpper(method));
996
- if (method in methods) {
997
- const dstMethod = _.get(methods, method);
998
- if (dstMethod.command) {
999
- return dstMethod.command;
952
+ possiblePathnames.push(normalizedPathname);
953
+ const normalizedMethod = _.toUpper(method);
954
+ for (const [routePath, routeSpec] of _.toPairs(METHOD_MAP)) {
955
+ const routeRegexp = pathToRegexp(routePath);
956
+ if (possiblePathnames.some((pp) => routeRegexp.test(pp))) {
957
+ const commandName = routeSpec?.[normalizedMethod]?.command;
958
+ if (commandName) {
959
+ return commandName;
960
+ }
1000
961
  }
1001
962
  }
1002
963
  }
1003
964
 
1004
965
  // driver commands that do not require a session to already exist
1005
- const NO_SESSION_ID_COMMANDS = ['createSession', 'getStatus', 'getSessions'];
1006
-
1007
- export {METHOD_MAP, ALL_COMMANDS, NO_SESSION_ID_COMMANDS, routeToCommandName};
966
+ export const NO_SESSION_ID_COMMANDS = ['createSession', 'getStatus', 'getSessions'];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appium/base-driver",
3
- "version": "9.11.1",
3
+ "version": "9.11.2",
4
4
  "description": "Base driver class for Appium drivers",
5
5
  "keywords": [
6
6
  "automation",
@@ -44,8 +44,8 @@
44
44
  "test:types": "tsd"
45
45
  },
46
46
  "dependencies": {
47
- "@appium/support": "^5.1.1",
48
- "@appium/types": "^0.21.0",
47
+ "@appium/support": "^5.1.2",
48
+ "@appium/types": "^0.21.1",
49
49
  "@colors/colors": "1.6.0",
50
50
  "@types/async-lock": "1.4.2",
51
51
  "@types/bluebird": "3.5.42",
@@ -67,7 +67,7 @@
67
67
  "path-to-regexp": "7.0.0",
68
68
  "serve-favicon": "2.5.0",
69
69
  "source-map-support": "0.5.21",
70
- "type-fest": "4.20.1",
70
+ "type-fest": "4.21.0",
71
71
  "validate.js": "0.13.1"
72
72
  },
73
73
  "optionalDependencies": {
@@ -80,7 +80,7 @@
80
80
  "publishConfig": {
81
81
  "access": "public"
82
82
  },
83
- "gitHead": "19928e9b906b9bcd84954526fa3bcb4a002bb41d",
83
+ "gitHead": "74292e229269120a58cc716ed1d8d56c8ff9c079",
84
84
  "tsd": {
85
85
  "directory": "test/types"
86
86
  }