@wdio/utils 8.16.9 → 8.16.11

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/driver/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAAyB,MAAM,oBAAoB,CAAA;AAO1D,OAAO,EAA8B,KAAK,mBAAmB,IAAI,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAC7G,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,EAA0C,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAC9F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,KAAK,EAAgB,OAAO,EAAE,MAAM,aAAa,CAAA;AAQxD,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,oBAAoB,EAAE,MAAM,GAAG,mBAAmB,GAAG,sBAAsB,CAAC,CAAA;AAChJ,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,WAAW,CAAC;QAClB,UAAU,mBAAoB,SAAQ,sBAAsB;SAAG;QAC/D,UAAU,kBAAmB,SAAQ,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC;SAAG;QAC3E,UAAU,iBAAkB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC;SAAG;QACzE,UAAU,mBAAoB,SAAQ,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC;SAAG;KAChF;CACJ;AAKD,wBAAsB,cAAc,CAAE,OAAO,EAAE,OAAO,CAAC,SAAS,wCAmJ/D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/driver/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAAyB,MAAM,oBAAoB,CAAA;AAQ1D,OAAO,EAA8B,KAAK,mBAAmB,IAAI,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAC7G,OAAO,EAA6B,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,EAA0C,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAC9F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,KAAK,EAAgB,OAAO,EAAE,MAAM,aAAa,CAAA;AAQxD,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,oBAAoB,EAAE,MAAM,GAAG,mBAAmB,GAAG,sBAAsB,CAAC,CAAA;AAChJ,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,WAAW,CAAC;QAClB,UAAU,mBAAoB,SAAQ,sBAAsB;SAAG;QAC/D,UAAU,kBAAmB,SAAQ,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC;SAAG;QAC3E,UAAU,iBAAkB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC;SAAG;QACzE,UAAU,mBAAoB,SAAQ,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC;SAAG;KAChF;CACJ;AAKD,wBAAsB,cAAc,CAAE,OAAO,EAAE,OAAO,CAAC,SAAS,wCAuJ/D"}
@@ -5,6 +5,7 @@ import cp from 'node:child_process';
5
5
  import getPort from 'get-port';
6
6
  import waitPort from 'wait-port';
7
7
  import logger from '@wdio/logger';
8
+ import split2 from 'split2';
8
9
  import { deepmerge } from 'deepmerge-ts';
9
10
  import { start as startSafaridriver } from 'safaridriver';
10
11
  import { start as startGeckodriver } from 'geckodriver';
@@ -123,8 +124,8 @@ export async function startWebDriver(options) {
123
124
  throw new Error(`Unknown browser name "${caps.browserName}". Make sure to pick from one of the following ` +
124
125
  Object.values(SUPPORTED_BROWSERNAMES).flat(Infinity));
125
126
  }
127
+ const logIdentifier = driver.split(' ').shift()?.toLowerCase() || 'driver';
126
128
  if (options.outputDir) {
127
- const logIdentifier = driver.split(' ').shift()?.toLowerCase();
128
129
  const logFileName = process.env.WDIO_WORKER_ID
129
130
  ? `wdio-${process.env.WDIO_WORKER_ID}-${logIdentifier}.log`
130
131
  : `wdio-${logIdentifier}-${port}.log`;
@@ -133,6 +134,11 @@ export async function startWebDriver(options) {
133
134
  driverProcess.stdout?.pipe(logStream);
134
135
  driverProcess.stderr?.pipe(logStream);
135
136
  }
137
+ else {
138
+ const driverLog = logger(logIdentifier);
139
+ driverProcess.stdout?.pipe(split2()).on('data', driverLog.info.bind(driverLog));
140
+ driverProcess.stderr?.pipe(split2()).on('data', driverLog.warn.bind(driverLog));
141
+ }
136
142
  await waitPort({ port, output: 'silent', timeout: DRIVER_WAIT_TIMEOUT })
137
143
  .catch((e) => { throw new Error(`Timed out to connect to ${driver}: ${e.message}`); });
138
144
  options.hostname = '0.0.0.0';
@@ -1 +1 @@
1
- {"version":3,"file":"shim.d.ts","sourceRoot":"","sources":["../src/shim.ts"],"names":[],"mappings":"AASA,UAAU,OAAO;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED,OAAO,CAAC,MAAM,CAAC;IAEX,IAAI,WAAW,EAAE,GAAG,CAAA;CACvB;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM,CAAC;QACb,UAAU,MAAM;YACZ,MAAM,EAAE,GAAG,CAAA;YACX,WAAW,EAAE,GAAG,CAAA;SACnB;KACJ;CACJ;AAaD,QAAA,MAAM,oBAAoB,YAAqD,GAAG,YAAY,MAAM,UAAS,QAAQ,GAAG,QAAQ,EAAE,SAAa,GAAG,EAAE,2BAsDnJ,CAAA;AAED;;;;GAIG;AACH,QAAA,MAAM,WAAW,mBAAwC,MAAM,MAAM,QAAQ,eAAa,GAAG,eAkL5F,CAAA;AAED;;;;;;;;GAQG;AACH,iBAAe,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,GAAG,EAAO,EAAE,OAAO,GAAE,MAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CA+BlI;AAED,OAAO,EACH,oBAAoB,EACpB,WAAW,EACX,YAAY,GACf,CAAA"}
1
+ {"version":3,"file":"shim.d.ts","sourceRoot":"","sources":["../src/shim.ts"],"names":[],"mappings":"AASA,UAAU,OAAO;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED,OAAO,CAAC,MAAM,CAAC;IAEX,IAAI,WAAW,EAAE,GAAG,CAAA;CACvB;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM,CAAC;QACb,UAAU,MAAM;YACZ,MAAM,EAAE,GAAG,CAAA;YACX,WAAW,EAAE,GAAG,CAAA;SACnB;KACJ;CACJ;AAaD,QAAA,MAAM,oBAAoB,YAAqD,GAAG,YAAY,MAAM,UAAS,QAAQ,GAAG,QAAQ,EAAE,SAAa,GAAG,EAAE,2BAsDnJ,CAAA;AAED;;;;GAIG;AACH,QAAA,MAAM,WAAW,mBAAwC,MAAM,MAAM,QAAQ,eAAa,GAAG,eAmM5F,CAAA;AAED;;;;;;;;GAQG;AACH,iBAAe,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,GAAG,EAAO,EAAE,OAAO,GAAE,MAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CA+BlI;AAED,OAAO,EACH,oBAAoB,EACpB,WAAW,EACX,YAAY,GACf,CAAA"}
package/build/shim.js CHANGED
@@ -194,6 +194,20 @@ const wrapCommand = function wrapCommand(commandName, fn) {
194
194
  }
195
195
  throw new Error(errMsg);
196
196
  }
197
+ /**
198
+ * Jasmine uses `toJSON` to parse the target object for information.
199
+ * Since WebdriverIo doesn't have this method on the Element object
200
+ * we need to mimic it here
201
+ */
202
+ if (prop === 'toJSON') {
203
+ return { ELEMENT: elem.elementId };
204
+ }
205
+ /**
206
+ * provide a better error message than "TypeError: elem[prop] is not a function"
207
+ */
208
+ if (typeof elem[prop] !== 'function') {
209
+ throw new Error(`Can't call "${prop}" on element with selector "${elem.selector}", it is not a function`);
210
+ }
197
211
  return elem[prop](...args);
198
212
  });
199
213
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wdio/utils",
3
- "version": "8.16.9",
3
+ "version": "8.16.11",
4
4
  "description": "A WDIO helper utility to provide several utility functions used across the project.",
5
5
  "author": "Christian Bromann <mail@bromann.dev>",
6
6
  "homepage": "https://github.com/webdriverio/webdriverio/tree/main/packages/wdio-utils",
@@ -42,10 +42,11 @@
42
42
  "import-meta-resolve": "^3.0.0",
43
43
  "locate-app": "^2.1.0",
44
44
  "safaridriver": "^0.1.0",
45
+ "split2": "^4.2.0",
45
46
  "wait-port": "^1.0.4"
46
47
  },
47
48
  "publishConfig": {
48
49
  "access": "public"
49
50
  },
50
- "gitHead": "a94335c7a66b9d4c792f0ae55a854f2c8b68e26d"
51
+ "gitHead": "f254aac9e601e0c39f1d046faeccffb0ebbe5cb4"
51
52
  }