@serenity-js/jasmine 3.37.2 → 3.39.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.
Files changed (49) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +1 -0
  3. package/esm/SerenityReporterForJasmine.d.ts +11 -1
  4. package/esm/SerenityReporterForJasmine.d.ts.map +1 -1
  5. package/esm/SerenityReporterForJasmine.js +44 -8
  6. package/esm/SerenityReporterForJasmine.js.map +1 -1
  7. package/esm/bootstrap.d.ts +7 -2
  8. package/esm/bootstrap.d.ts.map +1 -1
  9. package/esm/bootstrap.js +99 -13
  10. package/esm/bootstrap.js.map +1 -1
  11. package/esm/jasmine/SpecResult.d.ts +10 -1
  12. package/esm/jasmine/SpecResult.d.ts.map +1 -1
  13. package/esm/jasmine/SuiteResult.d.ts +10 -1
  14. package/esm/jasmine/SuiteResult.d.ts.map +1 -1
  15. package/esm/jasmine/index.d.ts +1 -0
  16. package/esm/jasmine/index.d.ts.map +1 -1
  17. package/esm/jasmine/index.js +1 -0
  18. package/esm/jasmine/index.js.map +1 -1
  19. package/esm/monkeyPatched.d.ts +4 -0
  20. package/esm/monkeyPatched.d.ts.map +1 -1
  21. package/esm/monkeyPatched.js +36 -2
  22. package/esm/monkeyPatched.js.map +1 -1
  23. package/lib/SerenityReporterForJasmine.d.ts +11 -1
  24. package/lib/SerenityReporterForJasmine.d.ts.map +1 -1
  25. package/lib/SerenityReporterForJasmine.js +44 -8
  26. package/lib/SerenityReporterForJasmine.js.map +1 -1
  27. package/lib/bootstrap.d.ts +7 -2
  28. package/lib/bootstrap.d.ts.map +1 -1
  29. package/lib/bootstrap.js +99 -13
  30. package/lib/bootstrap.js.map +1 -1
  31. package/lib/jasmine/SpecResult.d.ts +10 -1
  32. package/lib/jasmine/SpecResult.d.ts.map +1 -1
  33. package/lib/jasmine/SuiteResult.d.ts +10 -1
  34. package/lib/jasmine/SuiteResult.d.ts.map +1 -1
  35. package/lib/jasmine/index.d.ts +1 -0
  36. package/lib/jasmine/index.d.ts.map +1 -1
  37. package/lib/jasmine/index.js +1 -0
  38. package/lib/jasmine/index.js.map +1 -1
  39. package/lib/monkeyPatched.d.ts +4 -0
  40. package/lib/monkeyPatched.d.ts.map +1 -1
  41. package/lib/monkeyPatched.js +36 -2
  42. package/lib/monkeyPatched.js.map +1 -1
  43. package/package.json +5 -5
  44. package/src/SerenityReporterForJasmine.ts +61 -10
  45. package/src/bootstrap.ts +112 -13
  46. package/src/jasmine/SpecResult.ts +11 -1
  47. package/src/jasmine/SuiteResult.ts +11 -1
  48. package/src/jasmine/index.ts +1 -0
  49. package/src/monkeyPatched.ts +39 -2
package/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
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.39.0](https://github.com/serenity-js/serenity-js/compare/v3.38.0...v3.39.0) (2026-01-30)
7
+
8
+
9
+ ### Features
10
+
11
+ * **jasmine:** add support for Jasmine 6 ([cdd767c](https://github.com/serenity-js/serenity-js/commit/cdd767caca1d273e5c26a0b8e16ff7460d1ffedb))
12
+
13
+
14
+
15
+
16
+
17
+ # [3.38.0](https://github.com/serenity-js/serenity-js/compare/v3.37.2...v3.38.0) (2026-01-29)
18
+
19
+
20
+ ### Features
21
+
22
+ * **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)
23
+
24
+
25
+
26
+
27
+
6
28
  ## [3.37.2](https://github.com/serenity-js/serenity-js/compare/v3.37.1...v3.37.2) (2026-01-23)
7
29
 
8
30
  **Note:** Version bump only for package @serenity-js/jasmine
package/README.md CHANGED
@@ -17,6 +17,7 @@
17
17
 
18
18
  ## Features
19
19
 
20
+ - Supports Jasmine 5.x and 6.x
20
21
  - Enables [Screenplay Pattern](https://serenity-js.org/handbook/design/screenplay-pattern/) APIs in Jasmine tests
21
22
  - Supports all [Serenity/JS reporting features](https://serenity-js.org/handbook/reporting/)
22
23
  - TypeScript-first design with strong typing for safer and more predictable test code.
@@ -12,7 +12,8 @@ export declare class SerenityReporterForJasmine implements JasmineReporter {
12
12
  private describes;
13
13
  private currentSceneId;
14
14
  /**
15
- * @param {Serenity} serenity
15
+ * @param serenity - The Serenity instance
16
+ * @param requirementsHierarchy - The requirements hierarchy for tagging
16
17
  */
17
18
  constructor(serenity: Serenity, requirementsHierachy: RequirementsHierarchy);
18
19
  jasmineStarted(info: JasmineStartedInfo): void;
@@ -26,6 +27,15 @@ export declare class SerenityReporterForJasmine implements JasmineReporter {
26
27
  * @param {DomainEvent[]} events
27
28
  */
28
29
  private emit;
30
+ /**
31
+ * Extracts location information from a spec or suite result.
32
+ * Supports both Jasmine 5.x and 6.x (location object from monkey-patching).
33
+ *
34
+ * @private
35
+ * @param result - The spec or suite result
36
+ * @returns Location object with path, line, and column
37
+ */
38
+ private locationOf;
29
39
  /**
30
40
  * @private
31
41
  * @param {SpecResult} spec
@@ -1 +1 @@
1
- {"version":3,"file":"SerenityReporterForJasmine.d.ts","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,QAAQ,EAEhB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAqB/E,OAAO,KAAK,EAER,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,UAAU,EACV,WAAW,EACd,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,eAAe;IAW1D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAVzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IACzE,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,cAAc,CAA4B;IAElD;;OAEG;gBAEkB,QAAQ,EAAE,QAAQ,EAClB,oBAAoB,EAAE,qBAAqB;IAIhE,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAI9C,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMvC,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMpC,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAiBrC,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAwD3C,WAAW,CAAC,SAAS,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD;;;OAGG;IACH,OAAO,CAAC,IAAI;IAIZ;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAQ7B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAcnB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,gCAAgC;IAIxC,OAAO,CAAC,4DAA4D;IAMpE,OAAO,CAAC,kCAAkC;IAI1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;CAS/B"}
1
+ {"version":3,"file":"SerenityReporterForJasmine.d.ts","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,QAAQ,EAEhB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAqB/E,OAAO,KAAK,EAER,eAAe,EACf,eAAe,EACf,kBAAkB,EAElB,UAAU,EACV,WAAW,EACd,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,eAAe;IAY1D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAXzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IACzE,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,cAAc,CAA4B;IAElD;;;OAGG;gBAEkB,QAAQ,EAAE,QAAQ,EAClB,oBAAoB,EAAE,qBAAqB;IAIhE,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAI9C,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMvC,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMpC,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAiBrC,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA8D3C,WAAW,CAAC,SAAS,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD;;;OAGG;IACH,OAAO,CAAC,IAAI;IAIZ;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;IAuBlB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAcnB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,gCAAgC;IAIxC,OAAO,CAAC,4DAA4D;IAMpE,OAAO,CAAC,kCAAkC;IAI1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;CAS/B"}
@@ -13,7 +13,8 @@ export class SerenityReporterForJasmine {
13
13
  describes = [];
14
14
  currentSceneId = undefined;
15
15
  /**
16
- * @param {Serenity} serenity
16
+ * @param serenity - The Serenity instance
17
+ * @param requirementsHierarchy - The requirements hierarchy for tagging
17
18
  */
18
19
  constructor(serenity, requirementsHierachy) {
19
20
  this.serenity = serenity;
@@ -44,18 +45,22 @@ export class SerenityReporterForJasmine {
44
45
  if (result.failedExpectations.length > 1) {
45
46
  result.failedExpectations.forEach(failedExpectation => {
46
47
  const sceneId = this.serenity.currentSceneId();
47
- const activityDetails = new ActivityDetails(new Name('Expectation'), new FileSystemLocation(Path.from(result.location.path), result.location.line, result.location.column));
48
+ const location = this.locationOf(result);
49
+ const activityDetails = new ActivityDetails(new Name('Expectation'), new FileSystemLocation(Path.from(location.path), location.line, location.column));
48
50
  const activityId = this.serenity.assignNewActivityId(activityDetails);
49
51
  this.emit(new TaskStarts(sceneId, activityId, activityDetails, this.serenity.currentTime()), new TaskFinished(sceneId, activityId, activityDetails, this.failureOutcomeFrom(failedExpectation), this.serenity.currentTime()));
50
52
  });
51
53
  }
52
54
  const { scenarioDetails } = this.scenarioDetailsOf(result), outcome = this.outcomeFrom(result);
53
- this.emit(new SceneFinishes(this.currentSceneId, this.serenity.currentTime()));
55
+ this.emit(new SceneFinishes(this.currentSceneId, outcome, this.serenity.currentTime()));
54
56
  return this.serenity.waitForNextCue()
55
57
  .then(() => {
56
58
  this.emit(new SceneFinished(this.currentSceneId, scenarioDetails, outcome, this.serenity.currentTime()));
57
59
  }, error => {
58
- this.emit(new SceneFinished(this.currentSceneId, scenarioDetails, new ExecutionFailedWithError(error), this.serenity.currentTime()));
60
+ const errorOutcome = new ExecutionFailedWithError(error);
61
+ this.emit(new SceneFinished(this.currentSceneId, scenarioDetails, errorOutcome.isWorseThan(outcome)
62
+ ? errorOutcome
63
+ : outcome, this.serenity.currentTime()));
59
64
  throw error;
60
65
  });
61
66
  }
@@ -77,6 +82,34 @@ export class SerenityReporterForJasmine {
77
82
  emit(...events) {
78
83
  events.forEach(event => this.serenity.announce(event));
79
84
  }
85
+ /**
86
+ * Extracts location information from a spec or suite result.
87
+ * Supports both Jasmine 5.x and 6.x (location object from monkey-patching).
88
+ *
89
+ * @private
90
+ * @param result - The spec or suite result
91
+ * @returns Location object with path, line, and column
92
+ */
93
+ locationOf(result) {
94
+ // Jasmine 5.x and 6.x with monkey-patching provides location object
95
+ if (result.location) {
96
+ return result.location;
97
+ }
98
+ // Fallback: use filename property if available (Jasmine 6.x without monkey-patching)
99
+ if (result.filename) {
100
+ return {
101
+ path: result.filename,
102
+ line: 0,
103
+ column: 0,
104
+ };
105
+ }
106
+ // Fallback for edge cases
107
+ return {
108
+ path: 'unknown',
109
+ line: 0,
110
+ column: 0,
111
+ };
112
+ }
80
113
  /**
81
114
  * @private
82
115
  * @param {SpecResult} spec
@@ -85,8 +118,9 @@ export class SerenityReporterForJasmine {
85
118
  scenarioDetailsOf(spec) {
86
119
  const name = this.currentScenarioNameFor(spec.description);
87
120
  const featureName = this.currentFeatureNameFor(spec);
121
+ const location = this.locationOf(spec);
88
122
  return {
89
- scenarioDetails: new ScenarioDetails(new Name(Tags.stripFrom(name)), new Category(Tags.stripFrom(featureName)), FileSystemLocation.fromJSON(spec.location)),
123
+ scenarioDetails: new ScenarioDetails(new Name(Tags.stripFrom(name)), new Category(Tags.stripFrom(featureName)), new FileSystemLocation(Path.from(location.path), location.line, location.column)),
90
124
  scenarioTags: Tags.from(`${featureName} ${name}`)
91
125
  };
92
126
  }
@@ -96,14 +130,16 @@ export class SerenityReporterForJasmine {
96
130
  * @returns {TestSuiteDetails}
97
131
  */
98
132
  testSuiteDetailsOf(result) {
99
- return new TestSuiteDetails(new Name(result.description), FileSystemLocation.fromJSON(result.location), new CorrelationId(result.id));
133
+ const location = this.locationOf(result);
134
+ return new TestSuiteDetails(new Name(result.description), new FileSystemLocation(Path.from(location.path), location.line, location.column), new CorrelationId(result.id));
100
135
  }
101
136
  /**
102
137
  * @private
103
138
  * @returns {string}
104
139
  */
105
140
  currentFeatureNameFor(spec) {
106
- const path = new Path(spec.location.path);
141
+ const location = this.locationOf(spec);
142
+ const path = new Path(location.path);
107
143
  return this.describes[0]
108
144
  ? this.describes[0].description
109
145
  : this.serenity.cwd().relative(path).value;
@@ -131,7 +167,7 @@ export class SerenityReporterForJasmine {
131
167
  return new ImplementationPending(new ImplementationPendingError(result.pendingReason || ''));
132
168
  case 'excluded':
133
169
  return new ExecutionSkipped();
134
- case 'passed': // eslint-disable-line unicorn/no-useless-switch-case
170
+ case 'passed':
135
171
  default:
136
172
  return new ExecutionSuccessful();
137
173
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SerenityReporterForJasmine.js","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SerenityReporterForJasmine.js","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,12 @@
1
1
  import { SerenityReporterForJasmine } from './SerenityReporterForJasmine.js';
2
2
  /**
3
- * Monkey-patches Jasmine's Suite and Spec so that they provide more accurate information,
4
- * and returns a bootstrapped instance of the [`SerenityReporterForJasmine`](https://serenity-js.org/api/jasmine/function/default/) to be registered with Jasmine.
3
+ * Bootstraps the Serenity/JS reporter for Jasmine.
4
+ *
5
+ * This function monkey-patches Jasmine's Suite and Spec constructors
6
+ * so that they provide more accurate location information.
7
+ *
8
+ * For Jasmine 5.x, Suite and Spec are on the jasmine object directly.
9
+ * For Jasmine 6.x, Suite and Spec are in jasmine.private.
5
10
  *
6
11
  * ## Registering the reporter from the command line
7
12
  *
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,SAAS,CAAC,MAAM,GAAE,gCAAqC,EAAE,OAAO,MAA0B,GAAG,0BAA0B,CAuBtI;AAED,MAAM,WAAW,gCAAgC;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,SAAS,CAAC,MAAM,GAAE,gCAAqC,EAAE,OAAO,MAA0B,GAAG,0BAA0B,CA6CtI;AA0ED,MAAM,WAAW,gCAAgC;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B"}
package/esm/bootstrap.js CHANGED
@@ -3,8 +3,13 @@ import { FileSystem, Path, RequirementsHierarchy } from '@serenity-js/core/lib/i
3
3
  import { monkeyPatched } from './monkeyPatched.js';
4
4
  import { SerenityReporterForJasmine } from './SerenityReporterForJasmine.js';
5
5
  /**
6
- * Monkey-patches Jasmine's Suite and Spec so that they provide more accurate information,
7
- * and returns a bootstrapped instance of the [`SerenityReporterForJasmine`](https://serenity-js.org/api/jasmine/function/default/) to be registered with Jasmine.
6
+ * Bootstraps the Serenity/JS reporter for Jasmine.
7
+ *
8
+ * This function monkey-patches Jasmine's Suite and Spec constructors
9
+ * so that they provide more accurate location information.
10
+ *
11
+ * For Jasmine 5.x, Suite and Spec are on the jasmine object directly.
12
+ * For Jasmine 6.x, Suite and Spec are in jasmine.private.
8
13
  *
9
14
  * ## Registering the reporter from the command line
10
15
  *
@@ -25,19 +30,100 @@ import { SerenityReporterForJasmine } from './SerenityReporterForJasmine.js';
25
30
  * the global.jasmine instance
26
31
  */
27
32
  export function bootstrap(config = {}, jasmine = global.jasmine) {
28
- const wrappers = {
29
- expectationResultFactory: originalExpectationResultFactory => ((attributes) => {
30
- const result = originalExpectationResultFactory(attributes);
31
- if (!attributes.passed && attributes.error instanceof RuntimeError) {
32
- result.stack = attributes.error.stack;
33
- }
34
- return result;
35
- }),
36
- };
37
- jasmine.Suite = monkeyPatched(jasmine.Suite, wrappers);
38
- jasmine.Spec = monkeyPatched(jasmine.Spec, wrappers);
33
+ // Jasmine 6+ moved Suite and Spec to jasmine.private,
34
+ // so we check both locations for backwards compatibility
35
+ const Suite = jasmine.Suite || jasmine.private?.Suite;
36
+ const Spec = jasmine.Spec || jasmine.private?.Spec;
37
+ if (Suite && Spec) {
38
+ // Monkey-patch Suite and Spec to capture location info
39
+ const wrappers = {
40
+ expectationResultFactory: originalExpectationResultFactory => ((attributes) => {
41
+ const result = originalExpectationResultFactory(attributes);
42
+ if (!attributes.passed && attributes.error instanceof RuntimeError) {
43
+ result.stack = attributes.error.stack;
44
+ }
45
+ return result;
46
+ }),
47
+ };
48
+ // Jasmine 5.x: Suite and Spec are on jasmine directly
49
+ if (jasmine.Suite && jasmine.Spec) {
50
+ jasmine.Suite = monkeyPatched(jasmine.Suite, wrappers);
51
+ jasmine.Spec = monkeyPatched(jasmine.Spec, wrappers);
52
+ }
53
+ // Jasmine 6+: Suite and Spec are in jasmine.private
54
+ else if (jasmine.private?.Suite && jasmine.private?.Spec) {
55
+ jasmine.private.Suite = monkeyPatched(jasmine.private.Suite, wrappers);
56
+ jasmine.private.Spec = monkeyPatched(jasmine.private.Spec, wrappers);
57
+ }
58
+ }
59
+ // For Jasmine 6+, patch the Expector and buildExpectationResult to restore expected/actual values
60
+ // This is needed because Jasmine 6 removed these from expectation results
61
+ patchBuildExpectationResultForExpectedActual(jasmine);
62
+ patchExpectorForExpectedActual(jasmine);
39
63
  const cwd = Path.from(process.cwd());
40
64
  const requirementsHierarchy = new RequirementsHierarchy(new FileSystem(cwd), config?.specDirectory && cwd.resolve(Path.from(config?.specDirectory)));
41
65
  return new SerenityReporterForJasmine(serenity, requirementsHierarchy);
42
66
  }
67
+ /**
68
+ * Patches Jasmine's buildExpectationResult to include expected/actual values
69
+ * in the expectation result. This restores functionality that was removed in Jasmine 6.
70
+ *
71
+ * In Jasmine 6, the buildExpectationResult function no longer includes expected/actual
72
+ * values in the result object. This patch wraps the function to preserve these values
73
+ * when they are provided.
74
+ *
75
+ * @param jasmine - The global jasmine instance
76
+ */
77
+ function patchBuildExpectationResultForExpectedActual(jasmine) {
78
+ // Access the private buildExpectationResult function
79
+ const originalBuildExpectationResult = jasmine?.private?.buildExpectationResult;
80
+ if (!originalBuildExpectationResult) {
81
+ // buildExpectationResult not available, skip
82
+ return;
83
+ }
84
+ jasmine.private.buildExpectationResult = function (options) {
85
+ const result = originalBuildExpectationResult(options);
86
+ // Restore expected/actual values that Jasmine 6 removed
87
+ if (options.expected !== undefined) {
88
+ result.expected = options.expected;
89
+ }
90
+ if (options.actual !== undefined) {
91
+ result.actual = options.actual;
92
+ }
93
+ return result;
94
+ };
95
+ }
96
+ /**
97
+ * Patches Jasmine's Expector.prototype.processResult to include expected/actual values
98
+ * when calling addExpectationResult. This ensures the values are passed to
99
+ * buildExpectationResult.
100
+ *
101
+ * @param jasmine - The global jasmine instance
102
+ */
103
+ function patchExpectorForExpectedActual(jasmine) {
104
+ // Access the private Expector class through jasmine's internal structure
105
+ // In Jasmine 6+, Expector is in jasmine.private.Expector
106
+ const Expector = jasmine?.private?.Expector;
107
+ if (!Expector || !Expector.prototype || !Expector.prototype.processResult) {
108
+ // Expector not available, skip
109
+ return;
110
+ }
111
+ Expector.prototype.processResult = function (result, errorForStack) {
112
+ const message = this.buildMessage(result);
113
+ let expected = this.expected;
114
+ if (Array.isArray(expected) && expected.length === 1) {
115
+ expected = expected[0];
116
+ }
117
+ this.addExpectationResult(result.pass, {
118
+ matcherName: this.matcherName,
119
+ passed: result.pass,
120
+ message: message,
121
+ error: errorForStack ? undefined : result.error,
122
+ errorForStack: errorForStack || undefined,
123
+ // Include expected/actual values that Jasmine 6 removed
124
+ expected: expected,
125
+ actual: this.actual,
126
+ });
127
+ };
128
+ }
43
129
  //# sourceMappingURL=bootstrap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,SAAS,CAAC,SAA2C,EAAE,EAAE,UAAW,MAAc,CAAC,OAAO;IACtG,MAAM,QAAQ,GAAG;QACb,wBAAwB,EAAE,gCAAgC,CAAC,EAAE,CAAC,CAAC,CAAC,UAA6C,EAAE,EAAE;YAC7G,MAAM,MAAM,GAAG,gCAAgC,CAAC,UAAU,CAAC,CAAC;YAE5D,IAAI,CAAE,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK,YAAY,YAAY,EAAE,CAAC;gBAClE,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;YAC1C,CAAC;YAED,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC;KACL,CAAC;IAEF,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACvD,OAAO,CAAC,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACrC,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,CACnD,IAAI,UAAU,CAAC,GAAG,CAAC,EACnB,MAAM,EAAE,aAAa,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CACzE,CAAC;IAEF,OAAO,IAAI,0BAA0B,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,15 @@ export interface SpecResult {
19
19
  status?: string;
20
20
  /** The time in ms used by the spec execution, including any before/afterEach. */
21
21
  duration: number | null;
22
- location: Location;
22
+ /**
23
+ * The file system location of the spec.
24
+ * Available in Jasmine 5.x and earlier when monkey-patched by Serenity/JS.
25
+ */
26
+ location?: Location;
27
+ /**
28
+ * The filename where the spec is defined.
29
+ * Available in Jasmine 6.x and later.
30
+ */
31
+ filename?: string;
23
32
  }
24
33
  //# sourceMappingURL=SpecResult.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SpecResult.d.ts","sourceRoot":"","sources":["../../src/jasmine/SpecResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,WAAW,UAAU;IACvB,kCAAkC;IAClC,EAAE,EAAE,MAAM,CAAC;IAEX,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;IAEpB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;IAEjB,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,iFAAiF;IACjF,mBAAmB,EAAE,WAAW,EAAE,CAAC;IAEnC,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IAEtB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,QAAQ,EAAE,QAAQ,CAAC;CACtB"}
1
+ {"version":3,"file":"SpecResult.d.ts","sourceRoot":"","sources":["../../src/jasmine/SpecResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,WAAW,UAAU;IACvB,kCAAkC;IAClC,EAAE,EAAE,MAAM,CAAC;IAEX,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;IAEpB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;IAEjB,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,iFAAiF;IACjF,mBAAmB,EAAE,WAAW,EAAE,CAAC;IAEnC,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IAEtB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -20,6 +20,15 @@ export interface SuiteResult extends Result {
20
20
  status?: string;
21
21
  /** The time in ms for Suite execution, including any before/afterAll, before/afterEach. */
22
22
  duration: number | null;
23
- location: Location;
23
+ /**
24
+ * The file system location of the suite.
25
+ * Available in Jasmine 5.x and earlier when monkey-patched by Serenity/JS.
26
+ */
27
+ location?: Location;
28
+ /**
29
+ * The filename where the suite is defined.
30
+ * Available in Jasmine 6.x and later.
31
+ */
32
+ filename?: string;
24
33
  }
25
34
  //# sourceMappingURL=SuiteResult.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SuiteResult.d.ts","sourceRoot":"","sources":["../../src/jasmine/SuiteResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,MAAM;IACvC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IAEX,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;IAEpB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IAEjB,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,oEAAoE;IACpE,mBAAmB,EAAE,WAAW,EAAE,CAAC;IAEnC,+FAA+F;IAC/F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,2FAA2F;IAC3F,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,QAAQ,EAAE,QAAQ,CAAC;CACtB"}
1
+ {"version":3,"file":"SuiteResult.d.ts","sourceRoot":"","sources":["../../src/jasmine/SuiteResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,MAAM;IACvC,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IAEX,0EAA0E;IAC1E,WAAW,EAAE,MAAM,CAAC;IAEpB,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IAEjB,0EAA0E;IAC1E,kBAAkB,EAAE,WAAW,EAAE,CAAC;IAElC,oEAAoE;IACpE,mBAAmB,EAAE,WAAW,EAAE,CAAC;IAEnC,+FAA+F;IAC/F,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,2FAA2F;IAC3F,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -2,6 +2,7 @@ export * from './Expectation.js';
2
2
  export * from './JasmineDoneInfo.js';
3
3
  export * from './JasmineReporter.js';
4
4
  export * from './JasmineStartedInfo.js';
5
+ export * from './Location.js';
5
6
  export * from './Order.js';
6
7
  export * from './SpecResult.js';
7
8
  export * from './SuiteResult.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/jasmine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/jasmine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
@@ -2,6 +2,7 @@ export * from './Expectation.js';
2
2
  export * from './JasmineDoneInfo.js';
3
3
  export * from './JasmineReporter.js';
4
4
  export * from './JasmineStartedInfo.js';
5
+ export * from './Location.js';
5
6
  export * from './Order.js';
6
7
  export * from './SpecResult.js';
7
8
  export * from './SuiteResult.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/jasmine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/jasmine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
@@ -4,6 +4,10 @@
4
4
  *
5
5
  * This helps to make reporting more accurate.
6
6
  *
7
+ * For Jasmine 5.x, the location is stored on instance.result.location.
8
+ * For Jasmine 6.x, the location is stored on instance._serenityLocation and
9
+ * injected into the result events via patched startedEvent/doneEvent methods.
10
+ *
7
11
  * @param jasmineConstructor - A Jasmine constructor function to be patched
8
12
  * @param {object} wrappers - Attributes to wrap when the monkey-patched Jasmine constructor is invoked
9
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"monkeyPatched.d.ts","sourceRoot":"","sources":["../src/monkeyPatched.ts"],"names":[],"mappings":"AAMA;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CACzB,kBAAkB,EAAE,GAAG,EACvB,QAAQ,GAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAA;CAAM,WAE/C,MAAM,SAkBtD"}
1
+ {"version":3,"file":"monkeyPatched.d.ts","sourceRoot":"","sources":["../src/monkeyPatched.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CACzB,kBAAkB,EAAE,GAAG,EACvB,QAAQ,GAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAA;CAAM,WAE/C,MAAM,SAmDtD"}
@@ -1,12 +1,16 @@
1
1
  import { ErrorStackParser } from '@serenity-js/core/lib/errors/index.js';
2
2
  const parser = new ErrorStackParser();
3
- /* eslint-disable @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/ban-types */
3
+ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
4
4
  /**
5
5
  * Monkey-patches Jasmine domain model constructors so that they
6
6
  * record information about the file system location of the caller function.
7
7
  *
8
8
  * This helps to make reporting more accurate.
9
9
  *
10
+ * For Jasmine 5.x, the location is stored on instance.result.location.
11
+ * For Jasmine 6.x, the location is stored on instance._serenityLocation and
12
+ * injected into the result events via patched startedEvent/doneEvent methods.
13
+ *
10
14
  * @param jasmineConstructor - A Jasmine constructor function to be patched
11
15
  * @param {object} wrappers - Attributes to wrap when the monkey-patched Jasmine constructor is invoked
12
16
  */
@@ -16,7 +20,37 @@ export function monkeyPatched(jasmineConstructor, wrappers = {}) {
16
20
  attrs[key] = wrappers[key](attrs[key]);
17
21
  });
18
22
  const instance = new jasmineConstructor(attrs);
19
- instance.result.location = callerLocation();
23
+ const location = callerLocation();
24
+ // Jasmine 5.x: instance.result exists, store location there
25
+ if (instance.result) {
26
+ instance.result.location = location;
27
+ }
28
+ // Jasmine 6.x: store location on instance and patch event methods
29
+ else {
30
+ instance._serenityLocation = location;
31
+ // Patch startedEvent to include location
32
+ if (typeof instance.startedEvent === 'function') {
33
+ const originalStartedEvent = instance.startedEvent.bind(instance);
34
+ instance.startedEvent = function () {
35
+ const event = originalStartedEvent();
36
+ if (event && instance._serenityLocation) {
37
+ event.location = instance._serenityLocation;
38
+ }
39
+ return event;
40
+ };
41
+ }
42
+ // Patch doneEvent to include location
43
+ if (typeof instance.doneEvent === 'function') {
44
+ const originalDoneEvent = instance.doneEvent.bind(instance);
45
+ instance.doneEvent = function () {
46
+ const event = originalDoneEvent();
47
+ if (event && instance._serenityLocation) {
48
+ event.location = instance._serenityLocation;
49
+ }
50
+ return event;
51
+ };
52
+ }
53
+ }
20
54
  return instance;
21
55
  };
22
56
  Object.getOwnPropertyNames(jasmineConstructor)
@@ -1 +1 @@
1
- {"version":3,"file":"monkeyPatched.js","sourceRoot":"","sources":["../src/monkeyPatched.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAEzE,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAEtC,oGAAoG;AAEpG;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CACzB,kBAAuB,EACvB,WAA0F,EAAE;IAE5F,MAAM,MAAM,GAAG,SAAS,aAAa,CAAC,KAAa;QAC/C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAChC,KAAK,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC/C,QAAQ,CAAC,MAAM,CAAC,QAAQ,GAAG,cAAc,EAAE,CAAC;QAE5C,OAAO,QAAQ,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,CAAC,mBAAmB,CAAC,kBAAkB,CAAC;SACzC,MAAM,CAAC,iBAAiB,CAAC;SACzB,OAAO,CAAC,QAAQ,CAAC,EAAE;QAChB,MAAM,CAAC,QAAQ,CAAC,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEP,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,gBAAgB;AAEhB;;;;GAIG;AACH,SAAS,cAAc;IACnB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IAErD,MAAM,KAAK,GAAG,MAAM;SACf,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SACxD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAE7F,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IAEhF,OAAO;QACH,IAAI,EAAE,MAAM,CAAC,QAAQ;QACrB,IAAI,EAAE,MAAM,CAAC,UAAU;QACvB,MAAM,EAAE,MAAM,CAAC,YAAY;KAC9B,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,QAAgB;IACvC,OAAO,CAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACvF,CAAC"}
1
+ {"version":3,"file":"monkeyPatched.js","sourceRoot":"","sources":["../src/monkeyPatched.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,8 @@ export declare class SerenityReporterForJasmine implements JasmineReporter {
12
12
  private describes;
13
13
  private currentSceneId;
14
14
  /**
15
- * @param {Serenity} serenity
15
+ * @param serenity - The Serenity instance
16
+ * @param requirementsHierarchy - The requirements hierarchy for tagging
16
17
  */
17
18
  constructor(serenity: Serenity, requirementsHierachy: RequirementsHierarchy);
18
19
  jasmineStarted(info: JasmineStartedInfo): void;
@@ -26,6 +27,15 @@ export declare class SerenityReporterForJasmine implements JasmineReporter {
26
27
  * @param {DomainEvent[]} events
27
28
  */
28
29
  private emit;
30
+ /**
31
+ * Extracts location information from a spec or suite result.
32
+ * Supports both Jasmine 5.x and 6.x (location object from monkey-patching).
33
+ *
34
+ * @private
35
+ * @param result - The spec or suite result
36
+ * @returns Location object with path, line, and column
37
+ */
38
+ private locationOf;
29
39
  /**
30
40
  * @private
31
41
  * @param {SpecResult} spec
@@ -1 +1 @@
1
- {"version":3,"file":"SerenityReporterForJasmine.d.ts","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,QAAQ,EAEhB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAqB/E,OAAO,KAAK,EAER,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,UAAU,EACV,WAAW,EACd,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,eAAe;IAW1D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAVzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IACzE,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,cAAc,CAA4B;IAElD;;OAEG;gBAEkB,QAAQ,EAAE,QAAQ,EAClB,oBAAoB,EAAE,qBAAqB;IAIhE,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAI9C,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMvC,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMpC,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAiBrC,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAwD3C,WAAW,CAAC,SAAS,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD;;;OAGG;IACH,OAAO,CAAC,IAAI;IAIZ;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAQ7B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAcnB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,gCAAgC;IAIxC,OAAO,CAAC,4DAA4D;IAMpE,OAAO,CAAC,kCAAkC;IAI1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;CAS/B"}
1
+ {"version":3,"file":"SerenityReporterForJasmine.d.ts","sourceRoot":"","sources":["../src/SerenityReporterForJasmine.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,QAAQ,EAEhB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAqB/E,OAAO,KAAK,EAER,eAAe,EACf,eAAe,EACf,kBAAkB,EAElB,UAAU,EACV,WAAW,EACd,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,0BAA2B,YAAW,eAAe;IAY1D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAXzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAA8B;IACzE,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,cAAc,CAA4B;IAElD;;;OAGG;gBAEkB,QAAQ,EAAE,QAAQ,EAClB,oBAAoB,EAAE,qBAAqB;IAIhE,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAI9C,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMvC,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMpC,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAiBrC,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA8D3C,WAAW,CAAC,SAAS,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD;;;OAGG;IACH,OAAO,CAAC,IAAI;IAIZ;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;IAuBlB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAcnB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,gCAAgC;IAIxC,OAAO,CAAC,4DAA4D;IAMpE,OAAO,CAAC,kCAAkC;IAI1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;CAS/B"}