@serenity-js/webdriverio-8 3.37.2 → 3.38.0

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
@@ -3,6 +3,22 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.38.0](https://github.com/serenity-js/serenity-js/compare/v3.37.2...v3.38.0) (2026-01-29)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **deps:** update rest dependencies ([6821ab3](https://github.com/serenity-js/serenity-js/commit/6821ab3217c0d3ad0bc5c017ae4214e08226a815))
12
+
13
+
14
+ ### Features
15
+
16
+ * **webdriverio:** support afterTest hooks ([a79c83c](https://github.com/serenity-js/serenity-js/commit/a79c83cf0d2b975f9d7831dbf8cbe6dc1cc4935d)), closes [#3005](https://github.com/serenity-js/serenity-js/issues/3005)
17
+
18
+
19
+
20
+
21
+
6
22
  ## [3.37.2](https://github.com/serenity-js/serenity-js/compare/v3.37.1...v3.37.2) (2026-01-23)
7
23
 
8
24
  **Note:** Version bump only for package @serenity-js/webdriverio-8
@@ -39,6 +39,17 @@ export declare class WebdriverIONotifier implements StageCrewMember {
39
39
  private suiteNamesConcatenatedWith;
40
40
  private suiteEndEventFrom;
41
41
  private onSceneStarts;
42
+ /**
43
+ * Invoked when SceneFinishes is received, BEFORE waitForNextCue() is called.
44
+ * This is the right time to invoke the afterTest hook so that it's awaited
45
+ * before the test runner moves on to the next test.
46
+ */
47
+ private onSceneFinishes;
48
+ /**
49
+ * Invoked when SceneFinished is received, AFTER waitForNextCue() has returned.
50
+ * At this point, the afterTest hook has already been invoked and awaited.
51
+ * We only need to handle any cleanup failures here.
52
+ */
42
53
  private onSceneFinished;
43
54
  private willBeRetried;
44
55
  private testShortTitleFrom;
@@ -51,13 +62,13 @@ export declare class WebdriverIONotifier implements StageCrewMember {
51
62
  * https://github.com/webdriverio/webdriverio/blob/7415f3126e15a733b51721492e4995ceafae6046/packages/wdio-allure-reporter/src/constants.ts#L3-L9
52
63
  *
53
64
  * @param started
54
- * @param finished
65
+ * @param finishes
55
66
  * @private
56
67
  */
57
- private testResultFrom;
58
- private testEndEventFrom;
68
+ private testResultFromFinishes;
69
+ private testEndEventFromFinishes;
59
70
  private whenSuccessful;
60
- private testResultEventFrom;
71
+ private testResultEventFromSceneFinishes;
61
72
  private errorFrom;
62
73
  /**
63
74
  * @see https://github.com/webdriverio/webdriverio/blob/main/packages/wdio-utils/src/shim.ts
@@ -1 +1 @@
1
- {"version":3,"file":"WebdriverIONotifier.d.ts","sourceRoot":"","sources":["../../src/adapter/WebdriverIONotifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAC,MAAM,uCAAuC,CAAC;AAExE,OAAO,KAAK,EACR,OAAO,EACU,MAAM,sCAAsC,CAAC;AAalE,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AA2B5D;;GAEG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IAenD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,KAAK,CAAC;IApBlB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa,CAAM;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;gBAG5B,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,CAAC,gBAAgB,EAC3C,QAAQ,EAAE,YAAY,EACtB,gBAAgB,EAAE,OAAO,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAC5C,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EAAE,EACxB,QAAQ,GAAE,MAAU,EACpB,KAAK,CAAC,EAAE,KAAK;IAIzB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe;IAKzC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAUlC,OAAO,CAAC,iBAAiB;IAIzB,YAAY,IAAI,MAAM;IAItB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,0BAA0B;IAIlC,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,eAAe;IAIvB;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IA+EtB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,mBAAmB;IAmD3B,OAAO,CAAC,SAAS;IAcjB;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;CAkDtB"}
1
+ {"version":3,"file":"WebdriverIONotifier.d.ts","sourceRoot":"","sources":["../../src/adapter/WebdriverIONotifier.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAWzE,OAAO,KAAK,EAAE,OAAO,EAAoB,MAAM,sCAAsC,CAAC;AActF,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D;;GAEG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IAenD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,KAAK,CAAC;IApBlB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa,CAAM;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;gBAG5B,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,CAAC,gBAAgB,EAC3C,QAAQ,EAAE,YAAY,EACtB,gBAAgB,EAAE,OAAO,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAC5C,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EAAE,EACxB,QAAQ,GAAE,MAAU,EACpB,KAAK,CAAC,EAAE,KAAK;IAIzB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe;IAKzC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAWlC,OAAO,CAAC,iBAAiB;IAIzB,YAAY,IAAI,MAAM;IAItB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,0BAA0B;IAIlC,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,aAAa;IAUrB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAqCvB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,eAAe;IAIvB;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IA+E9B,OAAO,CAAC,wBAAwB;IAShC,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,gCAAgC;IAmDxC,OAAO,CAAC,SAAS;IAcjB;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;CAkDtB"}
@@ -1,31 +1,11 @@
1
+ // qlty-ignore: +duplication
2
+ // This file intentionally mirrors packages/webdriverio/src/adapter/WebdriverIONotifier.ts
3
+ // but with different type signatures for WebdriverIO v8 (legacy) vs v9+.
4
+ // The packages are kept separate to allow independent evolution and eventual deprecation.
1
5
  import { LogicError } from '@serenity-js/core';
2
- import { AsyncOperationAttempted, AsyncOperationCompleted, SceneFinished, SceneStarts, TestRunFinishes, TestSuiteFinished, TestSuiteStarts } from '@serenity-js/core/lib/events/index.js';
6
+ import { AsyncOperationAttempted, AsyncOperationCompleted, SceneFinished, SceneFinishes, SceneStarts, TestRunFinishes, TestSuiteFinished, TestSuiteStarts } from '@serenity-js/core/lib/events/index.js';
3
7
  import { CorrelationId, Description, ExecutionCompromised, ExecutionFailedWithAssertionError, ExecutionFailedWithError, ExecutionIgnored, ExecutionSkipped, ImplementationPending, Name, ProblemIndication } from '@serenity-js/core/lib/model/index.js';
4
8
  import { match } from 'tiny-types';
5
- // interface Argument {
6
- // rows?: {
7
- // cells: string[];
8
- // }[];
9
- // }
10
- //
11
- // export interface testStats {
12
- // type: 'test:start' | 'test:pass' | 'test:fail' | 'test:retry' | 'test:pending' | 'test:end' | 'test:skip';
13
- // title: string;
14
- // parent: string;
15
- // fullTitle: string;
16
- // pending: boolean;
17
- // file?: string;
18
- // duration?: number;
19
- // cid: string;
20
- // specs: string[];
21
- // uid: string;
22
- // pendingReason?: string;
23
- // error?: Error;
24
- // errors?: Error[];
25
- // retries?: number;
26
- // argument?: string | Argument;
27
- // }
28
- //
29
9
  /**
30
10
  * @package
31
11
  */
@@ -67,6 +47,7 @@ export class WebdriverIONotifier {
67
47
  .when(TestSuiteStarts, WebdriverIONotifier.prototype.onTestSuiteStarts.bind(this))
68
48
  .when(TestSuiteFinished, WebdriverIONotifier.prototype.onTestSuiteFinished.bind(this))
69
49
  .when(SceneStarts, WebdriverIONotifier.prototype.onSceneStarts.bind(this))
50
+ .when(SceneFinishes, WebdriverIONotifier.prototype.onSceneFinishes.bind(this))
70
51
  .when(SceneFinished, WebdriverIONotifier.prototype.onSceneFinished.bind(this))
71
52
  .when(TestRunFinishes, WebdriverIONotifier.prototype.onTestRunFinishes.bind(this))
72
53
  .else(() => void 0);
@@ -120,28 +101,53 @@ export class WebdriverIONotifier {
120
101
  this.reporter.emit(test.type, test);
121
102
  return this.invokeHooks('beforeTest', this.config.beforeTest, [this.testFrom(started), WebdriverIONotifier.dummmyContext]);
122
103
  }
123
- onSceneFinished(finished) {
124
- if (finished.outcome.isWorseThan(this.successThreshold)) {
104
+ /**
105
+ * Invoked when SceneFinishes is received, BEFORE waitForNextCue() is called.
106
+ * This is the right time to invoke the afterTest hook so that it's awaited
107
+ * before the test runner moves on to the next test.
108
+ */
109
+ onSceneFinishes(finishes) {
110
+ const started = this.events.getByCorrelationId(finishes.sceneId);
111
+ // Record SceneFinishes after looking up SceneStarts to avoid overwriting it
112
+ this.events.record(finishes.sceneId, finishes);
113
+ if (finishes.outcome.isWorseThan(this.successThreshold)) {
125
114
  this.failures++;
126
115
  }
127
- const started = this.events.getByCorrelationId(finished.sceneId);
128
- let testEnd;
129
- if (this.willBeRetried(finished.outcome)) {
130
- testEnd = this.testEndEventFrom(started, finished);
116
+ // Emit test result and end events
117
+ if (this.willBeRetried(finishes.outcome)) {
118
+ const testEnd = this.testEndEventFromFinishes(started, finishes);
131
119
  const type = 'test:retry';
132
120
  this.reporter.emit(type, {
133
121
  ...testEnd,
134
122
  type,
135
- error: this.errorFrom(finished.outcome),
123
+ error: this.errorFrom(finishes.outcome),
136
124
  });
137
125
  }
138
126
  else {
139
- const testResultEvent = this.testResultEventFrom(started, finished);
127
+ const testResultEvent = this.testResultEventFromSceneFinishes(started, finishes);
140
128
  this.reporter.emit(testResultEvent.type, testResultEvent);
141
- testEnd = this.testEndEventFrom(started, finished);
129
+ const testEnd = this.testEndEventFromFinishes(started, finishes);
142
130
  this.reporter.emit(testEnd.type, testEnd);
143
131
  }
144
- return this.invokeHooks('afterTest', this.config.afterTest, [this.testFrom(started), WebdriverIONotifier.dummmyContext, this.testResultFrom(started, finished)]);
132
+ // Invoke afterTest hook - this will be awaited by waitForNextCue()
133
+ return this.invokeHooks('afterTest', this.config.afterTest, [this.testFrom(started), WebdriverIONotifier.dummmyContext, this.testResultFromFinishes(started, finishes)]);
134
+ }
135
+ /**
136
+ * Invoked when SceneFinished is received, AFTER waitForNextCue() has returned.
137
+ * At this point, the afterTest hook has already been invoked and awaited.
138
+ * We only need to handle any cleanup failures here.
139
+ */
140
+ onSceneFinished(finished) {
141
+ const finishes = this.events.getByCorrelationId(finished.sceneId);
142
+ // If the final outcome is worse than what we reported in onSceneFinishes,
143
+ // it means cleanup failed. We should update the failure count.
144
+ // Only increment if we didn't already count this as a failure.
145
+ const cleanupFailed = finished.outcome.isWorseThan(finishes.outcome);
146
+ const cleanupFailedAboveThreshold = finished.outcome.isWorseThan(this.successThreshold);
147
+ const originalOutcomeWasSuccess = !finishes.outcome.isWorseThan(this.successThreshold);
148
+ if (cleanupFailed && cleanupFailedAboveThreshold && originalOutcomeWasSuccess) {
149
+ this.failures++;
150
+ }
145
151
  }
146
152
  willBeRetried(outcome) {
147
153
  return outcome instanceof ExecutionIgnored;
@@ -161,7 +167,7 @@ export class WebdriverIONotifier {
161
167
  parent: this.parentSuiteName(),
162
168
  pending: false,
163
169
  title,
164
- type: 'test' // I _think_ it's either 'test' or 'hook' - https://github.com/mochajs/mocha/blob/0ea732c1169c678ef116c3eb452cc94758fff150/lib/test.js#L31
170
+ type: 'test'
165
171
  };
166
172
  }
167
173
  testStartEventFrom(started) {
@@ -187,14 +193,14 @@ export class WebdriverIONotifier {
187
193
  * https://github.com/webdriverio/webdriverio/blob/7415f3126e15a733b51721492e4995ceafae6046/packages/wdio-allure-reporter/src/constants.ts#L3-L9
188
194
  *
189
195
  * @param started
190
- * @param finished
196
+ * @param finishes
191
197
  * @private
192
198
  */
193
- testResultFrom(started, finished) {
194
- const duration = finished.timestamp.diff(started.timestamp).inMilliseconds();
199
+ testResultFromFinishes(started, finishes) {
200
+ const duration = finishes.timestamp.diff(started.timestamp).inMilliseconds();
195
201
  const defaultRetries = { attempts: 0, limit: 0 };
196
202
  const passedOrFailed = (outcome) => this.whenSuccessful(outcome, true, false);
197
- return match(finished.outcome)
203
+ return match(finishes.outcome)
198
204
  .when(ExecutionCompromised, (outcome) => {
199
205
  const error = this.errorFrom(outcome);
200
206
  return {
@@ -265,8 +271,8 @@ export class WebdriverIONotifier {
265
271
  retries: defaultRetries
266
272
  }));
267
273
  }
268
- testEndEventFrom(started, finished) {
269
- const duration = finished.timestamp.diff(started.timestamp).inMilliseconds();
274
+ testEndEventFromFinishes(started, finishes) {
275
+ const duration = finishes.timestamp.diff(started.timestamp).inMilliseconds();
270
276
  return {
271
277
  ...this.testStartEventFrom(started),
272
278
  type: 'test:end',
@@ -278,10 +284,10 @@ export class WebdriverIONotifier {
278
284
  ? resultWhenSuccessful
279
285
  : resultWhenNotSuccessful;
280
286
  }
281
- testResultEventFrom(started, finished) {
282
- const test = this.testEndEventFrom(started, finished);
287
+ testResultEventFromSceneFinishes(started, finishes) {
288
+ const test = this.testEndEventFromFinishes(started, finishes);
283
289
  const unlessSuccessful = (outcome, type) => this.whenSuccessful(outcome, 'test:pass', type);
284
- return match(finished.outcome)
290
+ return match(finishes.outcome)
285
291
  .when(ExecutionCompromised, (outcome) => ({
286
292
  ...test,
287
293
  type: unlessSuccessful(outcome, 'test:fail'),
@@ -1 +1 @@
1
- {"version":3,"file":"WebdriverIONotifier.js","sourceRoot":"","sources":["../../src/adapter/WebdriverIONotifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebdriverIONotifier.js","sourceRoot":"","sources":["../../src/adapter/WebdriverIONotifier.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,17 @@ export declare class WebdriverIONotifier implements StageCrewMember {
39
39
  private suiteNamesConcatenatedWith;
40
40
  private suiteEndEventFrom;
41
41
  private onSceneStarts;
42
+ /**
43
+ * Invoked when SceneFinishes is received, BEFORE waitForNextCue() is called.
44
+ * This is the right time to invoke the afterTest hook so that it's awaited
45
+ * before the test runner moves on to the next test.
46
+ */
47
+ private onSceneFinishes;
48
+ /**
49
+ * Invoked when SceneFinished is received, AFTER waitForNextCue() has returned.
50
+ * At this point, the afterTest hook has already been invoked and awaited.
51
+ * We only need to handle any cleanup failures here.
52
+ */
42
53
  private onSceneFinished;
43
54
  private willBeRetried;
44
55
  private testShortTitleFrom;
@@ -51,13 +62,13 @@ export declare class WebdriverIONotifier implements StageCrewMember {
51
62
  * https://github.com/webdriverio/webdriverio/blob/7415f3126e15a733b51721492e4995ceafae6046/packages/wdio-allure-reporter/src/constants.ts#L3-L9
52
63
  *
53
64
  * @param started
54
- * @param finished
65
+ * @param finishes
55
66
  * @private
56
67
  */
57
- private testResultFrom;
58
- private testEndEventFrom;
68
+ private testResultFromFinishes;
69
+ private testEndEventFromFinishes;
59
70
  private whenSuccessful;
60
- private testResultEventFrom;
71
+ private testResultEventFromSceneFinishes;
61
72
  private errorFrom;
62
73
  /**
63
74
  * @see https://github.com/webdriverio/webdriverio/blob/main/packages/wdio-utils/src/shim.ts
@@ -1 +1 @@
1
- {"version":3,"file":"WebdriverIONotifier.d.ts","sourceRoot":"","sources":["../../src/adapter/WebdriverIONotifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAC,MAAM,uCAAuC,CAAC;AAExE,OAAO,KAAK,EACR,OAAO,EACU,MAAM,sCAAsC,CAAC;AAalE,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AA2B5D;;GAEG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IAenD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,KAAK,CAAC;IApBlB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa,CAAM;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;gBAG5B,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,CAAC,gBAAgB,EAC3C,QAAQ,EAAE,YAAY,EACtB,gBAAgB,EAAE,OAAO,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAC5C,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EAAE,EACxB,QAAQ,GAAE,MAAU,EACpB,KAAK,CAAC,EAAE,KAAK;IAIzB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe;IAKzC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAUlC,OAAO,CAAC,iBAAiB;IAIzB,YAAY,IAAI,MAAM;IAItB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,0BAA0B;IAIlC,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,eAAe;IAIvB;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IA+EtB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,mBAAmB;IAmD3B,OAAO,CAAC,SAAS;IAcjB;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;CAkDtB"}
1
+ {"version":3,"file":"WebdriverIONotifier.d.ts","sourceRoot":"","sources":["../../src/adapter/WebdriverIONotifier.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAWzE,OAAO,KAAK,EAAE,OAAO,EAAoB,MAAM,sCAAsC,CAAC;AActF,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D;;GAEG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IAenD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,KAAK,CAAC;IApBlB;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa,CAAM;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;gBAG5B,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,CAAC,gBAAgB,EAC3C,QAAQ,EAAE,YAAY,EACtB,gBAAgB,EAAE,OAAO,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAC5C,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EAAE,EACxB,QAAQ,GAAE,MAAU,EACpB,KAAK,CAAC,EAAE,KAAK;IAIzB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe;IAKzC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAWlC,OAAO,CAAC,iBAAiB;IAIzB,YAAY,IAAI,MAAM;IAItB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,0BAA0B;IAIlC,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,aAAa;IAUrB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAqCvB;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,eAAe;IAIvB;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IA+E9B,OAAO,CAAC,wBAAwB;IAShC,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,gCAAgC;IAmDxC,OAAO,CAAC,SAAS;IAcjB;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;CAkDtB"}
@@ -1,34 +1,14 @@
1
1
  "use strict";
2
+ // qlty-ignore: +duplication
3
+ // This file intentionally mirrors packages/webdriverio/src/adapter/WebdriverIONotifier.ts
4
+ // but with different type signatures for WebdriverIO v8 (legacy) vs v9+.
5
+ // The packages are kept separate to allow independent evolution and eventual deprecation.
2
6
  Object.defineProperty(exports, "__esModule", { value: true });
3
7
  exports.WebdriverIONotifier = void 0;
4
8
  const core_1 = require("@serenity-js/core");
5
9
  const index_js_1 = require("@serenity-js/core/lib/events/index.js");
6
10
  const index_js_2 = require("@serenity-js/core/lib/model/index.js");
7
11
  const tiny_types_1 = require("tiny-types");
8
- // interface Argument {
9
- // rows?: {
10
- // cells: string[];
11
- // }[];
12
- // }
13
- //
14
- // export interface testStats {
15
- // type: 'test:start' | 'test:pass' | 'test:fail' | 'test:retry' | 'test:pending' | 'test:end' | 'test:skip';
16
- // title: string;
17
- // parent: string;
18
- // fullTitle: string;
19
- // pending: boolean;
20
- // file?: string;
21
- // duration?: number;
22
- // cid: string;
23
- // specs: string[];
24
- // uid: string;
25
- // pendingReason?: string;
26
- // error?: Error;
27
- // errors?: Error[];
28
- // retries?: number;
29
- // argument?: string | Argument;
30
- // }
31
- //
32
12
  /**
33
13
  * @package
34
14
  */
@@ -70,6 +50,7 @@ class WebdriverIONotifier {
70
50
  .when(index_js_1.TestSuiteStarts, WebdriverIONotifier.prototype.onTestSuiteStarts.bind(this))
71
51
  .when(index_js_1.TestSuiteFinished, WebdriverIONotifier.prototype.onTestSuiteFinished.bind(this))
72
52
  .when(index_js_1.SceneStarts, WebdriverIONotifier.prototype.onSceneStarts.bind(this))
53
+ .when(index_js_1.SceneFinishes, WebdriverIONotifier.prototype.onSceneFinishes.bind(this))
73
54
  .when(index_js_1.SceneFinished, WebdriverIONotifier.prototype.onSceneFinished.bind(this))
74
55
  .when(index_js_1.TestRunFinishes, WebdriverIONotifier.prototype.onTestRunFinishes.bind(this))
75
56
  .else(() => void 0);
@@ -123,28 +104,53 @@ class WebdriverIONotifier {
123
104
  this.reporter.emit(test.type, test);
124
105
  return this.invokeHooks('beforeTest', this.config.beforeTest, [this.testFrom(started), WebdriverIONotifier.dummmyContext]);
125
106
  }
126
- onSceneFinished(finished) {
127
- if (finished.outcome.isWorseThan(this.successThreshold)) {
107
+ /**
108
+ * Invoked when SceneFinishes is received, BEFORE waitForNextCue() is called.
109
+ * This is the right time to invoke the afterTest hook so that it's awaited
110
+ * before the test runner moves on to the next test.
111
+ */
112
+ onSceneFinishes(finishes) {
113
+ const started = this.events.getByCorrelationId(finishes.sceneId);
114
+ // Record SceneFinishes after looking up SceneStarts to avoid overwriting it
115
+ this.events.record(finishes.sceneId, finishes);
116
+ if (finishes.outcome.isWorseThan(this.successThreshold)) {
128
117
  this.failures++;
129
118
  }
130
- const started = this.events.getByCorrelationId(finished.sceneId);
131
- let testEnd;
132
- if (this.willBeRetried(finished.outcome)) {
133
- testEnd = this.testEndEventFrom(started, finished);
119
+ // Emit test result and end events
120
+ if (this.willBeRetried(finishes.outcome)) {
121
+ const testEnd = this.testEndEventFromFinishes(started, finishes);
134
122
  const type = 'test:retry';
135
123
  this.reporter.emit(type, {
136
124
  ...testEnd,
137
125
  type,
138
- error: this.errorFrom(finished.outcome),
126
+ error: this.errorFrom(finishes.outcome),
139
127
  });
140
128
  }
141
129
  else {
142
- const testResultEvent = this.testResultEventFrom(started, finished);
130
+ const testResultEvent = this.testResultEventFromSceneFinishes(started, finishes);
143
131
  this.reporter.emit(testResultEvent.type, testResultEvent);
144
- testEnd = this.testEndEventFrom(started, finished);
132
+ const testEnd = this.testEndEventFromFinishes(started, finishes);
145
133
  this.reporter.emit(testEnd.type, testEnd);
146
134
  }
147
- return this.invokeHooks('afterTest', this.config.afterTest, [this.testFrom(started), WebdriverIONotifier.dummmyContext, this.testResultFrom(started, finished)]);
135
+ // Invoke afterTest hook - this will be awaited by waitForNextCue()
136
+ return this.invokeHooks('afterTest', this.config.afterTest, [this.testFrom(started), WebdriverIONotifier.dummmyContext, this.testResultFromFinishes(started, finishes)]);
137
+ }
138
+ /**
139
+ * Invoked when SceneFinished is received, AFTER waitForNextCue() has returned.
140
+ * At this point, the afterTest hook has already been invoked and awaited.
141
+ * We only need to handle any cleanup failures here.
142
+ */
143
+ onSceneFinished(finished) {
144
+ const finishes = this.events.getByCorrelationId(finished.sceneId);
145
+ // If the final outcome is worse than what we reported in onSceneFinishes,
146
+ // it means cleanup failed. We should update the failure count.
147
+ // Only increment if we didn't already count this as a failure.
148
+ const cleanupFailed = finished.outcome.isWorseThan(finishes.outcome);
149
+ const cleanupFailedAboveThreshold = finished.outcome.isWorseThan(this.successThreshold);
150
+ const originalOutcomeWasSuccess = !finishes.outcome.isWorseThan(this.successThreshold);
151
+ if (cleanupFailed && cleanupFailedAboveThreshold && originalOutcomeWasSuccess) {
152
+ this.failures++;
153
+ }
148
154
  }
149
155
  willBeRetried(outcome) {
150
156
  return outcome instanceof index_js_2.ExecutionIgnored;
@@ -164,7 +170,7 @@ class WebdriverIONotifier {
164
170
  parent: this.parentSuiteName(),
165
171
  pending: false,
166
172
  title,
167
- type: 'test' // I _think_ it's either 'test' or 'hook' - https://github.com/mochajs/mocha/blob/0ea732c1169c678ef116c3eb452cc94758fff150/lib/test.js#L31
173
+ type: 'test'
168
174
  };
169
175
  }
170
176
  testStartEventFrom(started) {
@@ -190,14 +196,14 @@ class WebdriverIONotifier {
190
196
  * https://github.com/webdriverio/webdriverio/blob/7415f3126e15a733b51721492e4995ceafae6046/packages/wdio-allure-reporter/src/constants.ts#L3-L9
191
197
  *
192
198
  * @param started
193
- * @param finished
199
+ * @param finishes
194
200
  * @private
195
201
  */
196
- testResultFrom(started, finished) {
197
- const duration = finished.timestamp.diff(started.timestamp).inMilliseconds();
202
+ testResultFromFinishes(started, finishes) {
203
+ const duration = finishes.timestamp.diff(started.timestamp).inMilliseconds();
198
204
  const defaultRetries = { attempts: 0, limit: 0 };
199
205
  const passedOrFailed = (outcome) => this.whenSuccessful(outcome, true, false);
200
- return (0, tiny_types_1.match)(finished.outcome)
206
+ return (0, tiny_types_1.match)(finishes.outcome)
201
207
  .when(index_js_2.ExecutionCompromised, (outcome) => {
202
208
  const error = this.errorFrom(outcome);
203
209
  return {
@@ -268,8 +274,8 @@ class WebdriverIONotifier {
268
274
  retries: defaultRetries
269
275
  }));
270
276
  }
271
- testEndEventFrom(started, finished) {
272
- const duration = finished.timestamp.diff(started.timestamp).inMilliseconds();
277
+ testEndEventFromFinishes(started, finishes) {
278
+ const duration = finishes.timestamp.diff(started.timestamp).inMilliseconds();
273
279
  return {
274
280
  ...this.testStartEventFrom(started),
275
281
  type: 'test:end',
@@ -281,10 +287,10 @@ class WebdriverIONotifier {
281
287
  ? resultWhenSuccessful
282
288
  : resultWhenNotSuccessful;
283
289
  }
284
- testResultEventFrom(started, finished) {
285
- const test = this.testEndEventFrom(started, finished);
290
+ testResultEventFromSceneFinishes(started, finishes) {
291
+ const test = this.testEndEventFromFinishes(started, finishes);
286
292
  const unlessSuccessful = (outcome, type) => this.whenSuccessful(outcome, 'test:pass', type);
287
- return (0, tiny_types_1.match)(finished.outcome)
293
+ return (0, tiny_types_1.match)(finishes.outcome)
288
294
  .when(index_js_2.ExecutionCompromised, (outcome) => ({
289
295
  ...test,
290
296
  type: unlessSuccessful(outcome, 'test:fail'),
@@ -1 +1 @@
1
- {"version":3,"file":"WebdriverIONotifier.js","sourceRoot":"","sources":["../../src/adapter/WebdriverIONotifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebdriverIONotifier.js","sourceRoot":"","sources":["../../src/adapter/WebdriverIONotifier.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@serenity-js/webdriverio-8",
3
- "version": "3.37.2",
3
+ "version": "3.38.0",
4
4
  "description": "Adapter that integrates @serenity-js/web with WebdriverIO 8, enabling Serenity/JS reporting and using the Screenplay Pattern to write web and mobile test scenarios",
5
5
  "author": {
6
6
  "name": "Jan Molak",
@@ -74,9 +74,9 @@
74
74
  "node": "^20 || ^22 || ^24"
75
75
  },
76
76
  "dependencies": {
77
- "@serenity-js/core": "3.37.2",
78
- "@serenity-js/rest": "3.37.2",
79
- "@serenity-js/web": "3.37.2",
77
+ "@serenity-js/core": "3.38.0",
78
+ "@serenity-js/rest": "3.38.0",
79
+ "@serenity-js/web": "3.38.0",
80
80
  "@wdio/reporter": "8.43.0",
81
81
  "deepmerge": "4.3.1",
82
82
  "tiny-types": "1.24.3"
@@ -108,15 +108,15 @@
108
108
  "@wdio/local-runner": "8.46.0",
109
109
  "@wdio/spec-reporter": "8.43.0",
110
110
  "@wdio/types": "8.41.0",
111
- "axios": "1.13.2",
111
+ "axios": "1.13.4",
112
112
  "c8": "10.1.3",
113
113
  "cross-env": "10.1.0",
114
114
  "mocha": "11.7.5",
115
115
  "mocha-multi": "1.1.7",
116
116
  "mocha-testdata": "1.2.0",
117
- "puppeteer-core": "24.36.0",
117
+ "puppeteer-core": "24.36.1",
118
118
  "start-server-and-test": "2.1.3",
119
119
  "webdriverio": "8.46.0"
120
120
  },
121
- "gitHead": "5544cfdbfd7f3c4d3bb4e492b5d2f233eb5e3a79"
121
+ "gitHead": "d86152afd35fb815038b3a153e8c53a0b023e4b3"
122
122
  }
@@ -1,10 +1,22 @@
1
+ // qlty-ignore: +duplication
2
+ // This file intentionally mirrors packages/webdriverio/src/adapter/WebdriverIONotifier.ts
3
+ // but with different type signatures for WebdriverIO v8 (legacy) vs v9+.
4
+ // The packages are kept separate to allow independent evolution and eventual deprecation.
5
+
1
6
  import type { Stage, StageCrewMember } from '@serenity-js/core';
2
7
  import { LogicError } from '@serenity-js/core';
3
- import type { DomainEvent} from '@serenity-js/core/lib/events/index.js';
4
- import { AsyncOperationAttempted, AsyncOperationCompleted, SceneFinished, SceneStarts, TestRunFinishes, TestSuiteFinished, TestSuiteStarts } from '@serenity-js/core/lib/events/index.js';
5
- import type {
6
- Outcome,
7
- TestSuiteDetails} from '@serenity-js/core/lib/model/index.js';
8
+ import type { DomainEvent } from '@serenity-js/core/lib/events/index.js';
9
+ import {
10
+ AsyncOperationAttempted,
11
+ AsyncOperationCompleted,
12
+ SceneFinished,
13
+ SceneFinishes,
14
+ SceneStarts,
15
+ TestRunFinishes,
16
+ TestSuiteFinished,
17
+ TestSuiteStarts
18
+ } from '@serenity-js/core/lib/events/index.js';
19
+ import type { Outcome, TestSuiteDetails } from '@serenity-js/core/lib/model/index.js';
8
20
  import {
9
21
  CorrelationId,
10
22
  Description,
@@ -13,7 +25,8 @@ import {
13
25
  ExecutionFailedWithError,
14
26
  ExecutionIgnored,
15
27
  ExecutionSkipped,
16
- ImplementationPending, Name,
28
+ ImplementationPending,
29
+ Name,
17
30
  ProblemIndication
18
31
  } from '@serenity-js/core/lib/model/index.js';
19
32
  import type { Test as testStats } from '@wdio/reporter';
@@ -23,31 +36,6 @@ import { match } from 'tiny-types';
23
36
 
24
37
  import type { WebdriverIOConfig } from '../config/index.js';
25
38
 
26
- // interface Argument {
27
- // rows?: {
28
- // cells: string[];
29
- // }[];
30
- // }
31
- //
32
- // export interface testStats {
33
- // type: 'test:start' | 'test:pass' | 'test:fail' | 'test:retry' | 'test:pending' | 'test:end' | 'test:skip';
34
- // title: string;
35
- // parent: string;
36
- // fullTitle: string;
37
- // pending: boolean;
38
- // file?: string;
39
- // duration?: number;
40
- // cid: string;
41
- // specs: string[];
42
- // uid: string;
43
- // pendingReason?: string;
44
- // error?: Error;
45
- // errors?: Error[];
46
- // retries?: number;
47
- // argument?: string | Argument;
48
- // }
49
- //
50
-
51
39
  /**
52
40
  * @package
53
41
  */
@@ -87,6 +75,7 @@ export class WebdriverIONotifier implements StageCrewMember {
87
75
  .when(TestSuiteStarts, WebdriverIONotifier.prototype.onTestSuiteStarts.bind(this))
88
76
  .when(TestSuiteFinished, WebdriverIONotifier.prototype.onTestSuiteFinished.bind(this))
89
77
  .when(SceneStarts, WebdriverIONotifier.prototype.onSceneStarts.bind(this))
78
+ .when(SceneFinishes, WebdriverIONotifier.prototype.onSceneFinishes.bind(this))
90
79
  .when(SceneFinished, WebdriverIONotifier.prototype.onSceneFinished.bind(this))
91
80
  .when(TestRunFinishes, WebdriverIONotifier.prototype.onTestRunFinishes.bind(this))
92
81
  .else(() => void 0);
@@ -159,36 +148,66 @@ export class WebdriverIONotifier implements StageCrewMember {
159
148
  return this.invokeHooks('beforeTest', this.config.beforeTest, [ this.testFrom(started), WebdriverIONotifier.dummmyContext ]);
160
149
  }
161
150
 
162
- private onSceneFinished(finished: SceneFinished) {
151
+ /**
152
+ * Invoked when SceneFinishes is received, BEFORE waitForNextCue() is called.
153
+ * This is the right time to invoke the afterTest hook so that it's awaited
154
+ * before the test runner moves on to the next test.
155
+ */
156
+ private onSceneFinishes(finishes: SceneFinishes) {
157
+ const started = this.events.getByCorrelationId<SceneStarts>(finishes.sceneId);
163
158
 
164
- if (finished.outcome.isWorseThan(this.successThreshold)) {
159
+ // Record SceneFinishes after looking up SceneStarts to avoid overwriting it
160
+ this.events.record(finishes.sceneId, finishes);
161
+
162
+ if (finishes.outcome.isWorseThan(this.successThreshold)) {
165
163
  this.failures++;
166
164
  }
167
165
 
168
- const started = this.events.getByCorrelationId<SceneStarts>(finished.sceneId);
169
- let testEnd: testStats;
170
-
171
- if (this.willBeRetried(finished.outcome)) {
172
- testEnd = this.testEndEventFrom(started, finished);
173
-
166
+ // Emit test result and end events
167
+ if (this.willBeRetried(finishes.outcome)) {
168
+ const testEnd = this.testEndEventFromFinishes(started, finishes);
174
169
  const type = 'test:retry';
175
170
 
176
171
  this.reporter.emit(type, {
177
172
  ...testEnd,
178
173
  type,
179
- error: this.errorFrom(finished.outcome),
174
+ error: this.errorFrom(finishes.outcome),
180
175
  });
181
-
182
- } else {
183
-
184
- const testResultEvent = this.testResultEventFrom(started, finished);
176
+ }
177
+ else {
178
+ const testResultEvent = this.testResultEventFromSceneFinishes(started, finishes);
185
179
  this.reporter.emit(testResultEvent.type, testResultEvent);
186
180
 
187
- testEnd = this.testEndEventFrom(started, finished);
181
+ const testEnd = this.testEndEventFromFinishes(started, finishes);
188
182
  this.reporter.emit(testEnd.type, testEnd);
189
183
  }
190
184
 
191
- return this.invokeHooks('afterTest', this.config.afterTest, [ this.testFrom(started), WebdriverIONotifier.dummmyContext, this.testResultFrom(started, finished) ]);
185
+ // Invoke afterTest hook - this will be awaited by waitForNextCue()
186
+ return this.invokeHooks(
187
+ 'afterTest',
188
+ this.config.afterTest,
189
+ [ this.testFrom(started), WebdriverIONotifier.dummmyContext, this.testResultFromFinishes(started, finishes) ]
190
+ );
191
+ }
192
+
193
+ /**
194
+ * Invoked when SceneFinished is received, AFTER waitForNextCue() has returned.
195
+ * At this point, the afterTest hook has already been invoked and awaited.
196
+ * We only need to handle any cleanup failures here.
197
+ */
198
+ private onSceneFinished(finished: SceneFinished) {
199
+ const finishes = this.events.getByCorrelationId<SceneFinishes>(finished.sceneId);
200
+
201
+ // If the final outcome is worse than what we reported in onSceneFinishes,
202
+ // it means cleanup failed. We should update the failure count.
203
+ // Only increment if we didn't already count this as a failure.
204
+ const cleanupFailed = finished.outcome.isWorseThan(finishes.outcome);
205
+ const cleanupFailedAboveThreshold = finished.outcome.isWorseThan(this.successThreshold);
206
+ const originalOutcomeWasSuccess = !finishes.outcome.isWorseThan(this.successThreshold);
207
+
208
+ if (cleanupFailed && cleanupFailedAboveThreshold && originalOutcomeWasSuccess) {
209
+ this.failures++;
210
+ }
192
211
  }
193
212
 
194
213
  private willBeRetried(outcome: Outcome): outcome is ExecutionIgnored {
@@ -213,7 +232,7 @@ export class WebdriverIONotifier implements StageCrewMember {
213
232
  parent: this.parentSuiteName(),
214
233
  pending: false,
215
234
  title,
216
- type: 'test' // I _think_ it's either 'test' or 'hook' - https://github.com/mochajs/mocha/blob/0ea732c1169c678ef116c3eb452cc94758fff150/lib/test.js#L31
235
+ type: 'test'
217
236
  }
218
237
  }
219
238
 
@@ -242,17 +261,17 @@ export class WebdriverIONotifier implements StageCrewMember {
242
261
  * https://github.com/webdriverio/webdriverio/blob/7415f3126e15a733b51721492e4995ceafae6046/packages/wdio-allure-reporter/src/constants.ts#L3-L9
243
262
  *
244
263
  * @param started
245
- * @param finished
264
+ * @param finishes
246
265
  * @private
247
266
  */
248
- private testResultFrom(started: SceneStarts, finished: SceneFinished): Frameworks.TestResult {
249
- const duration = finished.timestamp.diff(started.timestamp).inMilliseconds();
267
+ private testResultFromFinishes(started: SceneStarts, finishes: SceneFinishes): Frameworks.TestResult {
268
+ const duration = finishes.timestamp.diff(started.timestamp).inMilliseconds();
250
269
  const defaultRetries = { attempts: 0, limit: 0 };
251
270
 
252
271
  const passedOrFailed = (outcome: Outcome): boolean =>
253
272
  this.whenSuccessful<boolean>(outcome, true, false);
254
273
 
255
- return match<Outcome, Frameworks.TestResult>(finished.outcome)
274
+ return match<Outcome, Frameworks.TestResult>(finishes.outcome)
256
275
  .when(ExecutionCompromised, (outcome: ExecutionCompromised) => {
257
276
  const error = this.errorFrom(outcome);
258
277
  return {
@@ -324,8 +343,8 @@ export class WebdriverIONotifier implements StageCrewMember {
324
343
  }));
325
344
  }
326
345
 
327
- private testEndEventFrom(started: SceneStarts, finished: SceneFinished): testStats {
328
- const duration = finished.timestamp.diff(started.timestamp).inMilliseconds();
346
+ private testEndEventFromFinishes(started: SceneStarts, finishes: SceneFinishes): testStats {
347
+ const duration = finishes.timestamp.diff(started.timestamp).inMilliseconds();
329
348
  return {
330
349
  ...this.testStartEventFrom(started),
331
350
  type: 'test:end',
@@ -339,13 +358,13 @@ export class WebdriverIONotifier implements StageCrewMember {
339
358
  : resultWhenNotSuccessful
340
359
  }
341
360
 
342
- private testResultEventFrom(started: SceneStarts, finished: SceneFinished): testStats {
343
- const test = this.testEndEventFrom(started, finished)
361
+ private testResultEventFromSceneFinishes(started: SceneStarts, finishes: SceneFinishes): testStats {
362
+ const test = this.testEndEventFromFinishes(started, finishes)
344
363
 
345
364
  const unlessSuccessful = (outcome: Outcome, type: testStats['type']) =>
346
365
  this.whenSuccessful<testStats['type']>(outcome, 'test:pass', type);
347
366
 
348
- return match<Outcome, testStats>(finished.outcome)
367
+ return match<Outcome, testStats>(finishes.outcome)
349
368
  .when(ExecutionCompromised, (outcome: ExecutionCompromised) => ({
350
369
  ...test,
351
370
  type: unlessSuccessful(outcome, 'test:fail'),