webdriver 7.19.2 → 7.19.7
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/build/command.d.ts.map +1 -1
- package/build/command.js +1 -0
- package/build/request/browser.d.ts +1 -0
- package/build/request/browser.d.ts.map +1 -1
- package/build/request/browser.js +3 -0
- package/build/request/index.d.ts +1 -0
- package/build/request/index.d.ts.map +1 -1
- package/build/request/index.js +11 -0
- package/build/request/node.d.ts +1 -0
- package/build/request/node.d.ts.map +1 -1
- package/build/request/node.js +4 -0
- package/package.json +5 -5
package/build/command.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAIpC,MAAM,CAAC,OAAO,WACV,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,eAAe,EAC5B,qBAAqB,UAAQ,UAIU,UAAU,WAAW,GAAG,EAAE,KAAG,QAAQ,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAIpC,MAAM,CAAC,OAAO,WACV,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,eAAe,EAC5B,qBAAqB,UAAQ,UAIU,UAAU,WAAW,GAAG,EAAE,KAAG,QAAQ,iBAAiB,CAAC,CA2FjG"}
|
package/build/command.js
CHANGED
|
@@ -69,6 +69,7 @@ function default_1(method, endpointUri, commandInfo, doubleEncodeVariables = fal
|
|
|
69
69
|
body[commandParams[i].name] = arg;
|
|
70
70
|
}
|
|
71
71
|
const request = factory_1.default.getInstance(method, endpoint, body, isHubCommand);
|
|
72
|
+
request.on('performance', (...args) => this.emit('request.performance', ...args));
|
|
72
73
|
this.emit('command', { method, endpoint, body });
|
|
73
74
|
log.info('COMMAND', (0, utils_1.commandCallStructure)(command, args));
|
|
74
75
|
return request.makeRequest(this.options, this.sessionId).then((result) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/request/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,gBAAgB,MAAM,SAAS,CAAA;AAGtC,aAAK,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAA;AAClD,aAAK,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;AAU7D,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,gBAAgB;gBAE3C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAE,OAAe;IAI5G,SAAS,CAAC,cAAc,CAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,iBAAiB;cAIzE,WAAW,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB;;;;
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/request/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,gBAAgB,MAAM,SAAS,CAAA;AAGtC,aAAK,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAA;AAClD,aAAK,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;AAU7D,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,gBAAgB;gBAE3C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAE,OAAe;IAI5G,SAAS,CAAC,cAAc,CAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,iBAAiB;cAIzE,WAAW,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB;;;;IA+BjE,SAAS,CAAC,kBAAkB,IAAI,MAAM;CAGzC"}
|
package/build/request/browser.js
CHANGED
package/build/request/index.d.ts
CHANGED
|
@@ -38,6 +38,7 @@ export default abstract class WebDriverRequest extends EventEmitter {
|
|
|
38
38
|
makeRequest(options: RequestOptions, sessionId?: string): Promise<WebDriverResponse>;
|
|
39
39
|
protected _createOptions(options: RequestOptions, sessionId?: string, isBrowser?: boolean): RequestLibOptions;
|
|
40
40
|
protected _libRequest(url: URL, options: RequestLibOptions): Promise<RequestLibResponse>;
|
|
41
|
+
protected _libPerformanceNow(): number;
|
|
41
42
|
private _request;
|
|
42
43
|
}
|
|
43
44
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/request/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAErC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAK9B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAM1C,aAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;AAC5B,aAAK,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAA;AAClD,aAAK,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAA;AACpD,aAAK,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;AAE7D,qBAAa,eAAgB,SAAQ,KAAK;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,GAAG,CAAA;IACV;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAWD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,gBAAiB,SAAQ,YAAY;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,OAAO,CAAA;IACrB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,cAAc,EAAE,iBAAiB,CAKhC;gBAEY,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAE,OAAe;IAU5G,WAAW,CAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM;IAYxD,SAAS,CAAC,cAAc,CAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,GAAE,OAAe,GAAG,iBAAiB;cAiErG,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/request/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAErC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAK9B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAM1C,aAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;AAC5B,aAAK,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAA;AAClD,aAAK,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAA;AACpD,aAAK,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;AAE7D,qBAAa,eAAgB,SAAQ,KAAK;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,GAAG,CAAA;IACV;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAWD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,gBAAiB,SAAQ,YAAY;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,OAAO,CAAA;IACrB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,cAAc,EAAE,iBAAiB,CAKhC;gBAEY,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAE,OAAe;IAU5G,WAAW,CAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM;IAYxD,SAAS,CAAC,cAAc,CAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,GAAE,OAAe,GAAG,iBAAiB;cAiErG,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAI9F,SAAS,CAAC,kBAAkB,IAAI,MAAM;YAIxB,QAAQ;CAsHzB"}
|
package/build/request/index.js
CHANGED
|
@@ -104,17 +104,22 @@ class WebDriverRequest extends events_1.EventEmitter {
|
|
|
104
104
|
async _libRequest(url, options) {
|
|
105
105
|
throw new Error('This function must be implemented');
|
|
106
106
|
}
|
|
107
|
+
_libPerformanceNow() {
|
|
108
|
+
throw new Error('This function must be implemented');
|
|
109
|
+
}
|
|
107
110
|
async _request(fullRequestOptions, transformResponse, totalRetryCount = 0, retryCount = 0) {
|
|
108
111
|
log.info(`[${fullRequestOptions.method}] ${fullRequestOptions.url.href}`);
|
|
109
112
|
if (fullRequestOptions.json && Object.keys(fullRequestOptions.json).length) {
|
|
110
113
|
log.info('DATA', (0, utils_1.transformCommandLogResult)(fullRequestOptions.json));
|
|
111
114
|
}
|
|
112
115
|
const { url, ...requestLibOptions } = fullRequestOptions;
|
|
116
|
+
const startTime = this._libPerformanceNow();
|
|
113
117
|
let response = await this._libRequest(url, requestLibOptions)
|
|
114
118
|
// @ts-ignore
|
|
115
119
|
.catch((err) => {
|
|
116
120
|
return err;
|
|
117
121
|
});
|
|
122
|
+
const durationMillisecond = this._libPerformanceNow() - startTime;
|
|
118
123
|
/**
|
|
119
124
|
* handle retries for requests
|
|
120
125
|
* @param {Error} error error object that causes the retry
|
|
@@ -128,10 +133,12 @@ class WebDriverRequest extends events_1.EventEmitter {
|
|
|
128
133
|
if (retryCount >= totalRetryCount || error.message.includes('invalid session id')) {
|
|
129
134
|
log.error(`Request failed with status ${response.statusCode} due to ${error}`);
|
|
130
135
|
this.emit('response', { error });
|
|
136
|
+
this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error, retryCount });
|
|
131
137
|
throw error;
|
|
132
138
|
}
|
|
133
139
|
++retryCount;
|
|
134
140
|
this.emit('retry', { error, retryCount });
|
|
141
|
+
this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error, retryCount });
|
|
135
142
|
log.warn(msg);
|
|
136
143
|
log.info(`Retrying ${retryCount}/${totalRetryCount}`);
|
|
137
144
|
return this._request(fullRequestOptions, transformResponse, totalRetryCount, retryCount);
|
|
@@ -150,6 +157,7 @@ class WebDriverRequest extends events_1.EventEmitter {
|
|
|
150
157
|
/**
|
|
151
158
|
* throw if request error is unknown
|
|
152
159
|
*/
|
|
160
|
+
this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error: response, retryCount });
|
|
153
161
|
throw response;
|
|
154
162
|
}
|
|
155
163
|
if (typeof transformResponse === 'function') {
|
|
@@ -172,6 +180,7 @@ class WebDriverRequest extends events_1.EventEmitter {
|
|
|
172
180
|
* directly without using a hub, therefore throw
|
|
173
181
|
*/
|
|
174
182
|
if (typeof response.body === 'string' && response.body.startsWith('<!DOCTYPE html>')) {
|
|
183
|
+
this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error, retryCount });
|
|
175
184
|
return Promise.reject(new Error('Command can only be called to a Selenium Hub'));
|
|
176
185
|
}
|
|
177
186
|
return { value: response.body || null };
|
|
@@ -181,6 +190,7 @@ class WebDriverRequest extends events_1.EventEmitter {
|
|
|
181
190
|
*/
|
|
182
191
|
if ((0, utils_2.isSuccessfulResponse)(response.statusCode, response.body)) {
|
|
183
192
|
this.emit('response', { result: response.body });
|
|
193
|
+
this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: true, retryCount });
|
|
184
194
|
return response.body;
|
|
185
195
|
}
|
|
186
196
|
/**
|
|
@@ -190,6 +200,7 @@ class WebDriverRequest extends events_1.EventEmitter {
|
|
|
190
200
|
if (error.name === 'stale element reference') {
|
|
191
201
|
log.warn('Request encountered a stale element - terminating request');
|
|
192
202
|
this.emit('response', { error });
|
|
203
|
+
this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error, retryCount });
|
|
193
204
|
throw error;
|
|
194
205
|
}
|
|
195
206
|
return retry(error, `Request failed with status ${response.statusCode} due to ${error.message}`);
|
package/build/request/node.d.ts
CHANGED
|
@@ -5,5 +5,6 @@ import WebDriverRequest from './index';
|
|
|
5
5
|
export default class NodeJSRequest extends WebDriverRequest {
|
|
6
6
|
constructor(method: string, endpoint: string, body?: Record<string, unknown>, isHubCommand?: boolean);
|
|
7
7
|
protected _libRequest(url: URL, opts: Options.RequestLibOptions): Promise<Options.RequestLibResponse>;
|
|
8
|
+
protected _libPerformanceNow(): number;
|
|
8
9
|
}
|
|
9
10
|
//# sourceMappingURL=node.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/request/node.ts"],"names":[],"mappings":";AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,gBAAqC,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/request/node.ts"],"names":[],"mappings":";AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,gBAAqC,MAAM,SAAS,CAAA;AAQ3D,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,gBAAgB;gBAC1C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAE,OAAe;cAK5F,WAAW,CAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,iBAAiB;IAWtE,SAAS,CAAC,kBAAkB,IAAI,MAAM;CAGzC"}
|
package/build/request/node.js
CHANGED
|
@@ -30,6 +30,7 @@ const http_1 = __importDefault(require("http"));
|
|
|
30
30
|
const https_1 = __importDefault(require("https"));
|
|
31
31
|
const got = __importStar(require("got"));
|
|
32
32
|
const index_1 = __importStar(require("./index"));
|
|
33
|
+
const perf_hooks_1 = require("perf_hooks");
|
|
33
34
|
const agents = {
|
|
34
35
|
http: new http_1.default.Agent({ keepAlive: true }),
|
|
35
36
|
https: new https_1.default.Agent({ keepAlive: true })
|
|
@@ -50,5 +51,8 @@ class NodeJSRequest extends index_1.default {
|
|
|
50
51
|
throw err;
|
|
51
52
|
}
|
|
52
53
|
}
|
|
54
|
+
_libPerformanceNow() {
|
|
55
|
+
return perf_hooks_1.performance.now();
|
|
56
|
+
}
|
|
53
57
|
}
|
|
54
58
|
exports.default = NodeJSRequest;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "webdriver",
|
|
3
|
-
"version": "7.19.
|
|
3
|
+
"version": "7.19.7",
|
|
4
4
|
"description": "A Node.js bindings implementation for the W3C WebDriver and Mobile JSONWire Protocol",
|
|
5
5
|
"author": "Christian Bromann <mail@bromann.dev>",
|
|
6
6
|
"homepage": "https://github.com/webdriverio/webdriverio/tree/main/packages/webdriver",
|
|
@@ -26,14 +26,14 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@types/node": "^17.0.4",
|
|
29
|
-
"@wdio/config": "7.19.
|
|
29
|
+
"@wdio/config": "7.19.5",
|
|
30
30
|
"@wdio/logger": "7.19.0",
|
|
31
31
|
"@wdio/protocols": "7.19.0",
|
|
32
|
-
"@wdio/types": "7.19.
|
|
33
|
-
"@wdio/utils": "7.19.
|
|
32
|
+
"@wdio/types": "7.19.5",
|
|
33
|
+
"@wdio/utils": "7.19.7",
|
|
34
34
|
"got": "^11.0.2",
|
|
35
35
|
"ky": "^0.30.0",
|
|
36
36
|
"lodash.merge": "^4.6.1"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "ed5b7278190953d5e77d11083b59db2209ac99b5"
|
|
39
39
|
}
|