@serenity-js/serenity-bdd 3.31.17 → 3.32.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 +17 -0
- package/cache/{serenity-cli-4.2.12.jar → serenity-cli-4.2.30.jar} +0 -0
- package/lib/cli/defaults.js +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.d.ts +1 -0
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.d.ts.map +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.js +6 -4
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.js.map +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.d.ts +6 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.d.ts.map +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.js +11 -0
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.js.map +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.d.ts +2 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.d.ts.map +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.js +2 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.js.map +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/sceneSequenceOverallResult.js +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/sceneSequenceOverallResult.js.map +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/transformations/tagOf.d.ts.map +1 -1
- package/lib/stage/crew/serenity-bdd-reporter/processors/transformations/tagOf.js +7 -0
- package/lib/stage/crew/serenity-bdd-reporter/processors/transformations/tagOf.js.map +1 -1
- package/package.json +6 -6
- package/src/cli/defaults.ts +1 -1
- package/src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.ts +13 -3
- package/src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.ts +17 -1
- package/src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.ts +2 -1
- package/src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/sceneSequenceOverallResult.ts +1 -1
- package/src/stage/crew/serenity-bdd-reporter/processors/transformations/tagOf.ts +21 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,23 @@
|
|
|
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.32.0](https://github.com/serenity-js/serenity-js/compare/v3.31.17...v3.32.0) (2025-06-20)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **serenity-bdd:** append ProjectTag to test name, if available ([f9174f0](https://github.com/serenity-js/serenity-js/commit/f9174f08661e9d45373cd0eee06382edb463bde0))
|
|
12
|
+
* **serenity-bdd:** upgraded Serenity BDD CLI to 4.2.30 ([e93cfb7](https://github.com/serenity-js/serenity-js/commit/e93cfb7646912070ceb9be9cd86322889972eab2))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* **playwright-test:** report a test as passing if it passed upon a retry ([47e84fe](https://github.com/serenity-js/serenity-js/commit/47e84feec894497bd88211726389bdd38cc9edd9))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
6
23
|
## [3.31.17](https://github.com/serenity-js/serenity-js/compare/v3.31.16...v3.31.17) (2025-06-16)
|
|
7
24
|
|
|
8
25
|
|
|
Binary file
|
package/lib/cli/defaults.js
CHANGED
|
@@ -17,7 +17,7 @@ exports.defaults = void 0;
|
|
|
17
17
|
* @public
|
|
18
18
|
*/
|
|
19
19
|
exports.defaults = {
|
|
20
|
-
artifact: 'net.serenity-bdd:serenity-cli:jar:4.2.
|
|
20
|
+
artifact: 'net.serenity-bdd:serenity-cli:jar:4.2.30',
|
|
21
21
|
repository: 'https://repo1.maven.org/maven2/',
|
|
22
22
|
cacheDir: 'node_modules/@serenity-js/serenity-bdd/cache',
|
|
23
23
|
sourceDir: 'target/site/serenity',
|
|
@@ -8,6 +8,7 @@ export declare class SceneSequenceEventQueueProcessor extends EventQueueProcesso
|
|
|
8
8
|
supports(queue: DomainEventQueue): boolean;
|
|
9
9
|
process(queue: DomainEventQueue): SerenityBDD4ReportSchema;
|
|
10
10
|
private onSceneSequenceDetected;
|
|
11
|
+
private onRetryableSceneDetected;
|
|
11
12
|
private onSceneStarts;
|
|
12
13
|
private onSceneTemplateDetected;
|
|
13
14
|
private onSceneParametersDetected;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneSequenceEventQueueProcessor.d.ts","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"SceneSequenceEventQueueProcessor.d.ts","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAwB1D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAkB7D;;GAEG;AACH,qBAAa,gCAAiC,SAAQ,mBAAmB;IAErE,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;IAK1C,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,wBAAwB;IA2B1D,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,wBAAwB;IAKhC,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,yBAAyB;IAMjC,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,eAAe;CAQ1B"}
|
|
@@ -7,8 +7,6 @@ const EventQueueProcessor_1 = require("../EventQueueProcessor");
|
|
|
7
7
|
const transformations_1 = require("../transformations");
|
|
8
8
|
const SceneSequenceReportContext_1 = require("./SceneSequenceReportContext");
|
|
9
9
|
const transformations_2 = require("./transformations");
|
|
10
|
-
const scenarioParameterResult_1 = require("./transformations/scenarioParameterResult");
|
|
11
|
-
const scenarioParametersOf_1 = require("./transformations/scenarioParametersOf");
|
|
12
10
|
/**
|
|
13
11
|
* @package
|
|
14
12
|
*/
|
|
@@ -22,6 +20,7 @@ class SceneSequenceEventQueueProcessor extends EventQueueProcessor_1.EventQueueP
|
|
|
22
20
|
// eslint-disable-next-line @typescript-eslint/indent
|
|
23
21
|
(0, tiny_types_1.match)(event)
|
|
24
22
|
.when(events_1.SceneSequenceDetected, this.onSceneSequenceDetected(context))
|
|
23
|
+
.when(events_1.RetryableSceneDetected, this.onRetryableSceneDetected(context))
|
|
25
24
|
.when(events_1.SceneStarts, this.onSceneStarts(context))
|
|
26
25
|
.when(events_1.ActorEntersStage, this.onActorEntersStage(context))
|
|
27
26
|
.when(events_1.ActorStageExitStarts, this.onActorStageExitStarts(context))
|
|
@@ -46,6 +45,9 @@ class SceneSequenceEventQueueProcessor extends EventQueueProcessor_1.EventQueueP
|
|
|
46
45
|
.with((0, transformations_1.reportIdIncluding)(event.details.category.value, event.details.name.value))
|
|
47
46
|
.with((0, transformations_1.scenarioDetailsOf)(event.details));
|
|
48
47
|
}
|
|
48
|
+
onRetryableSceneDetected(context) {
|
|
49
|
+
return (event) => context.usingRetryModeOutcomeReporting();
|
|
50
|
+
}
|
|
49
51
|
onSceneStarts(context) {
|
|
50
52
|
return (event) => context
|
|
51
53
|
.with((0, transformations_1.activityStarted)(event.sceneId, event.details.name, event.timestamp))
|
|
@@ -57,7 +59,7 @@ class SceneSequenceEventQueueProcessor extends EventQueueProcessor_1.EventQueueP
|
|
|
57
59
|
}
|
|
58
60
|
onSceneParametersDetected(context) {
|
|
59
61
|
return (event) => context
|
|
60
|
-
.with((0,
|
|
62
|
+
.with((0, transformations_2.scenarioParametersOf)(event.details, event.parameters));
|
|
61
63
|
}
|
|
62
64
|
onActivityStarts(context) {
|
|
63
65
|
return (event) => context
|
|
@@ -70,7 +72,7 @@ class SceneSequenceEventQueueProcessor extends EventQueueProcessor_1.EventQueueP
|
|
|
70
72
|
onSceneFinished(context) {
|
|
71
73
|
return (event) => context
|
|
72
74
|
.with((0, transformations_1.activityFinished)(event.sceneId, event.details.name, event.outcome, event.timestamp))
|
|
73
|
-
.with((0,
|
|
75
|
+
.with((0, transformations_2.scenarioParameterResult)(event.details, event.outcome))
|
|
74
76
|
.with((0, transformations_2.sceneSequenceOverallResult)(event.outcome))
|
|
75
77
|
.with((0, transformations_1.executionFinishedAt)(event.timestamp));
|
|
76
78
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneSequenceEventQueueProcessor.js","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"file":"SceneSequenceEventQueueProcessor.js","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceEventQueueProcessor.ts"],"names":[],"mappings":";;;AAEA,yDAmBsC;AACtC,2CAAmC;AAGnC,gEAA6D;AAE7D,wDAO4B;AAC5B,6EAA0E;AAC1E,uDAK2B;AAE3B;;GAEG;AACH,MAAa,gCAAiC,SAAQ,yCAAmB;IAErE,QAAQ,CAAC,KAAuB;QAC5B,OAAO,KAAK;eACL,KAAK,CAAC,KAAK,EAAE,YAAY,8BAAqB,CAAC;IAC1D,CAAC;IAED,OAAO,CAAC,KAAuB;QAC3B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QACnC,qDAAqD;QACrD,IAAA,kBAAK,EAA0C,KAAK,CAAC;aAChD,IAAI,CAAC,8BAAqB,EAAa,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;aAC7E,IAAI,CAAC,+BAAsB,EAAY,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;aAC9E,IAAI,CAAC,oBAAW,EAAuB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;aACnE,IAAI,CAAC,yBAAgB,EAAkB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;aACxE,IAAI,CAAC,6BAAoB,EAAc,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;aAC5E,IAAI,CAAC,8BAAqB,EAAa,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;aAC7E,IAAI,CAAC,gCAAuB,EAAW,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;aAC/E,IAAI,CAAC,iCAAwB,EAAU,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;aAChF,IAAI,CAAC,gCAAuB,EAAW,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;aAC/E,IAAI,CAAC,iCAAwB,EAAU,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;aAChF,IAAI,CAAC,6BAAoB,EAAc,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;aAC5E,IAAI,CAAC,2BAAkB,EAAgB,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;aAC1E,IAAI,CAAC,oBAAW,EAAuB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;aACnE,IAAI,CAAC,uBAAc,EAAoB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;aACtE,IAAI,CAAC,yBAAgB,EAAkB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;aACxE,IAAI,CAAC,yCAAgC,EAAE,IAAI,CAAC,kCAAkC,CAAC,OAAO,CAAC,CAAC;aACxF,IAAI,CAAC,wCAA+B,EAAG,IAAI,CAAC,iCAAiC,CAAC,OAAO,CAAC,CAAC;aACvF,IAAI,CAAC,sBAAa,EAAqB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;aACrE,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EACxB,IAAI,uDAA0B,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAI,gDAAgD;SACjH,CAAC,KAAK,EAAE,CAAC;IACd,CAAC;IAEO,uBAAuB,CAA2C,OAAgB;QACtF,OAAO,CAAC,KAA4B,EAAW,EAAE,CAC7C,OAAO;aACF,IAAI,CAAC,IAAA,mCAAiB,EAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC/E,IAAI,CAAC,IAAA,mCAAiB,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACpD,CAAC;IAEO,wBAAwB,CAAC,OAAmC;QAChE,OAAO,CAAC,KAA4B,EAA8B,EAAE,CAChE,OAAO,CAAC,8BAA8B,EAAE,CAAC;IACjD,CAAC;IAEO,aAAa,CAA2C,OAAgB;QAC5E,OAAO,CAAC,KAAkB,EAAW,EAAE,CACnC,OAAO;aACF,IAAI,CAAC,IAAA,iCAAe,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aACzE,IAAI,CAAC,IAAA,oCAAkB,EAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACvD,CAAC;IAEO,uBAAuB,CAAC,OAAmC;QAC/D,OAAO,CAAC,KAA4B,EAA8B,EAAE,CAChE,OAAO;aACF,IAAI,CAAC,IAAA,mCAAiB,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrD,CAAC;IAEO,yBAAyB,CAAC,OAAmC;QACjE,OAAO,CAAC,KAA8B,EAA8B,EAAE,CAClE,OAAO;aACF,IAAI,CAAC,IAAA,sCAAoB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAA;IACxE,CAAC;IAEO,gBAAgB,CAA2C,OAAgB;QAC/E,OAAO,CAAC,KAAqB,EAAW,EAAE,CACtC,OAAO;aACF,IAAI,CAAC,IAAA,iCAAe,EAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;IACzF,CAAC;IAEO,kBAAkB,CAA2C,OAAgB;QACjF,OAAO,CAAC,KAAuB,EAAW,EAAE,CACxC,OAAO;aACF,IAAI,CAAC,IAAA,kCAAgB,EAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;IACzG,CAAC;IAEO,eAAe,CAAC,OAAmC;QACvD,OAAO,CAAC,KAAoB,EAA8B,EAAE,CACxD,OAAO;aACF,IAAI,CAAC,IAAA,kCAAgB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;aACzF,IAAI,CAAC,IAAA,yCAAuB,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;aAC3D,IAAI,CAAC,IAAA,4CAA0B,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aAC/C,IAAI,CAAC,IAAA,qCAAmB,EAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;IACvD,CAAC;CACJ;AArFD,4EAqFC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ExecutionSuccessful } from '@serenity-js/core/lib/model';
|
|
1
|
+
import { ExecutionSuccessful, type Outcome } from '@serenity-js/core/lib/model';
|
|
2
2
|
import type { SerenityBDD4ReportSchema } from '../../serenity-bdd-report-schema';
|
|
3
3
|
import { SerenityBDDReportContext } from '../SerenityBDDReportContext';
|
|
4
4
|
import type { ScenarioParametersDescriptor } from './ScenarioParametersDescriptor';
|
|
@@ -8,6 +8,11 @@ import type { ScenarioParametersDescriptor } from './ScenarioParametersDescripto
|
|
|
8
8
|
export declare class SceneSequenceReportContext extends SerenityBDDReportContext {
|
|
9
9
|
readonly parameters: ScenarioParametersDescriptor[];
|
|
10
10
|
readonly worstOutcomeSoFar: ExecutionSuccessful;
|
|
11
|
+
private readonly whenOutcomeIsMoreRecent;
|
|
12
|
+
private readonly whenOutcomeIsWorseThanBefore;
|
|
13
|
+
shouldUpdateOverallResult: (outcome: Outcome) => boolean;
|
|
14
|
+
usingOutlineModeOutcomeReporting(): this;
|
|
15
|
+
usingRetryModeOutcomeReporting(): this;
|
|
11
16
|
build(): SerenityBDD4ReportSchema;
|
|
12
17
|
}
|
|
13
18
|
//# sourceMappingURL=SceneSequenceReportContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneSequenceReportContext.d.ts","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"SceneSequenceReportContext.d.ts","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,KAAK,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEhF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAEnF;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,wBAAwB;IACpE,SAAgB,UAAU,EAAE,4BAA4B,EAAE,CAAM;IAChE,SAAgB,iBAAiB,sBAA6B;IAE9D,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA+B;IACvE,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAqE;IAE3G,yBAAyB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CACZ;IAEnD,gCAAgC,IAAI,IAAI;IAKxC,8BAA8B,IAAI,IAAI;IAKtC,KAAK,IAAI,wBAAwB;CAYpC"}
|
package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.js
CHANGED
|
@@ -9,6 +9,17 @@ const SerenityBDDReportContext_1 = require("../SerenityBDDReportContext");
|
|
|
9
9
|
class SceneSequenceReportContext extends SerenityBDDReportContext_1.SerenityBDDReportContext {
|
|
10
10
|
parameters = [];
|
|
11
11
|
worstOutcomeSoFar = new model_1.ExecutionSuccessful();
|
|
12
|
+
whenOutcomeIsMoreRecent = (outcome_) => true;
|
|
13
|
+
whenOutcomeIsWorseThanBefore = (outcome) => outcome.isWorseThan(this.worstOutcomeSoFar);
|
|
14
|
+
shouldUpdateOverallResult = this.whenOutcomeIsWorseThanBefore.bind(this);
|
|
15
|
+
usingOutlineModeOutcomeReporting() {
|
|
16
|
+
this.shouldUpdateOverallResult = this.whenOutcomeIsWorseThanBefore.bind(this);
|
|
17
|
+
return this;
|
|
18
|
+
}
|
|
19
|
+
usingRetryModeOutcomeReporting() {
|
|
20
|
+
this.shouldUpdateOverallResult = this.whenOutcomeIsMoreRecent.bind(this);
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
12
23
|
build() {
|
|
13
24
|
const report = super.build();
|
|
14
25
|
this.parameters.forEach((entry, index) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneSequenceReportContext.js","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"SceneSequenceReportContext.js","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.ts"],"names":[],"mappings":";;;AAAA,uDAAgF;AAGhF,0EAAuE;AAGvE;;GAEG;AACH,MAAa,0BAA2B,SAAQ,mDAAwB;IACpD,UAAU,GAAmC,EAAE,CAAC;IAChD,iBAAiB,GAAG,IAAI,2BAAmB,EAAE,CAAC;IAE7C,uBAAuB,GAAG,CAAC,QAAiB,EAAE,EAAE,CAAC,IAAI,CAAC;IACtD,4BAA4B,GAAG,CAAC,OAAgB,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAE3G,yBAAyB,GAC1B,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEnD,gCAAgC;QAC5B,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9E,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,8BAA8B;QAC1B,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAE7B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;YACvC,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAI,GAAI,KAAM,MAAM,CAAC,GAAG,CAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAExG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,WAAW,IAAI,KAAM,KAAK,GAAG,CAAE,MAAO,gBAAiB,EAAE,CAAC;QACtF,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAhCD,gEAgCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC"}
|
package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.js
CHANGED
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./scenarioOutlineOf"), exports);
|
|
18
|
-
__exportStar(require("./
|
|
18
|
+
__exportStar(require("./scenarioParameterResult"), exports);
|
|
19
|
+
__exportStar(require("./scenarioParametersOf"), exports);
|
|
19
20
|
__exportStar(require("./sceneSequenceOverallResult"), exports);
|
|
20
21
|
//# sourceMappingURL=index.js.map
|
package/lib/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,4DAA0C;AAC1C,yDAAuC;AACvC,+DAA6C"}
|
|
@@ -4,7 +4,7 @@ exports.sceneSequenceOverallResult = sceneSequenceOverallResult;
|
|
|
4
4
|
const mappers_1 = require("../../mappers");
|
|
5
5
|
function sceneSequenceOverallResult(outcome) {
|
|
6
6
|
return (context) => {
|
|
7
|
-
if (
|
|
7
|
+
if (context.shouldUpdateOverallResult(outcome)) {
|
|
8
8
|
const outcomeReport = (0, mappers_1.outcomeReportFrom)(outcome);
|
|
9
9
|
context.report.result = outcomeReport.result;
|
|
10
10
|
context.report.testFailureCause = outcomeReport.error;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneSequenceOverallResult.js","sourceRoot":"","sources":["../../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/sceneSequenceOverallResult.ts"],"names":[],"mappings":";;AAKA,gEAYC;AAfD,2CAAkD;AAGlD,SAAgB,0BAA0B,CAAC,OAAgB;IACvD,OAAO,CAAC,OAAmC,EAA8B,EAAE;QAEvE,IAAI,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"sceneSequenceOverallResult.js","sourceRoot":"","sources":["../../../../../../../src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/transformations/sceneSequenceOverallResult.ts"],"names":[],"mappings":";;AAKA,gEAYC;AAfD,2CAAkD;AAGlD,SAAgB,0BAA0B,CAAC,OAAgB;IACvD,OAAO,CAAC,OAAmC,EAA8B,EAAE;QAEvE,IAAI,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,MAAM,aAAa,GAAG,IAAA,2BAAiB,EAAC,OAAO,CAAC,CAAC;YAEjD,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;YAC7C,OAAO,CAAC,MAAM,CAAC,gBAAgB,GAAG,aAAa,CAAC,KAAK,CAAC;QAC1D,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC,CAAA;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagOf.d.ts","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/transformations/tagOf.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"tagOf.d.ts","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/transformations/tagOf.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAC;AAiBvD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAG5E;;GAEG;AACH,wBAAgB,KAAK,CAAC,OAAO,SAAS,wBAAwB,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAuGvG"}
|
|
@@ -4,6 +4,7 @@ exports.tagOf = tagOf;
|
|
|
4
4
|
const model_1 = require("@serenity-js/core/lib/model");
|
|
5
5
|
const tiny_types_1 = require("tiny-types");
|
|
6
6
|
const objects_1 = require("tiny-types/lib/objects");
|
|
7
|
+
const mappers_1 = require("../mappers");
|
|
7
8
|
const reportIdIncluding_1 = require("./reportIdIncluding");
|
|
8
9
|
/**
|
|
9
10
|
* @package
|
|
@@ -71,6 +72,12 @@ function tagOf(tag) {
|
|
|
71
72
|
(0, reportIdIncluding_1.reportIdIncluding)(tag.name)(context);
|
|
72
73
|
context.report.tags = concatIfNotPresent(context.report.tags, tagReportFor(tag));
|
|
73
74
|
return context;
|
|
75
|
+
})
|
|
76
|
+
.when(model_1.ProjectTag, (projectTag) => {
|
|
77
|
+
(0, reportIdIncluding_1.reportIdIncluding)(projectTag.name)(context);
|
|
78
|
+
context.report.title = `${context.report.name} - ${(0, mappers_1.escapeHtml)(projectTag.name)}`;
|
|
79
|
+
context.report.tags = concatIfNotPresent(context.report.tags, tagReportFor(projectTag));
|
|
80
|
+
return context;
|
|
74
81
|
})
|
|
75
82
|
.else(_ => {
|
|
76
83
|
context.report.tags = concatIfNotPresent(context.report.tags, tagReportFor(tag));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagOf.js","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/transformations/tagOf.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"tagOf.js","sourceRoot":"","sources":["../../../../../../src/stage/crew/serenity-bdd-reporter/processors/transformations/tagOf.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serenity-js/serenity-bdd",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.32.0",
|
|
4
4
|
"description": "Serenity/JS reporting module that produces detailed Serenity BDD test reports and living documentation, enhancing transparency and traceability of test results",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Jan Molak",
|
|
@@ -54,9 +54,9 @@
|
|
|
54
54
|
"node": "^18.12 || ^20 || ^22"
|
|
55
55
|
},
|
|
56
56
|
"dependencies": {
|
|
57
|
-
"@serenity-js/assertions": "3.
|
|
58
|
-
"@serenity-js/core": "3.
|
|
59
|
-
"@serenity-js/rest": "3.
|
|
57
|
+
"@serenity-js/assertions": "3.32.0",
|
|
58
|
+
"@serenity-js/core": "3.32.0",
|
|
59
|
+
"@serenity-js/rest": "3.32.0",
|
|
60
60
|
"ansi-regex": "5.0.1",
|
|
61
61
|
"axios": "1.10.0",
|
|
62
62
|
"chalk": "4.1.2",
|
|
@@ -74,10 +74,10 @@
|
|
|
74
74
|
"c8": "10.1.3",
|
|
75
75
|
"if-env": "1.0.4",
|
|
76
76
|
"memfs": "4.17.2",
|
|
77
|
-
"mocha": "11.
|
|
77
|
+
"mocha": "11.7.0",
|
|
78
78
|
"mocha-multi": "1.1.7",
|
|
79
79
|
"ts-node": "10.9.2",
|
|
80
80
|
"typescript": "5.8.3"
|
|
81
81
|
},
|
|
82
|
-
"gitHead": "
|
|
82
|
+
"gitHead": "2b6464752f0a65ccf4b9f83ce1b309e14e9c6293"
|
|
83
83
|
}
|
package/src/cli/defaults.ts
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* @public
|
|
15
15
|
*/
|
|
16
16
|
export const defaults = {
|
|
17
|
-
artifact: 'net.serenity-bdd:serenity-cli:jar:4.2.
|
|
17
|
+
artifact: 'net.serenity-bdd:serenity-cli:jar:4.2.30',
|
|
18
18
|
repository: 'https://repo1.maven.org/maven2/',
|
|
19
19
|
cacheDir: 'node_modules/@serenity-js/serenity-bdd/cache',
|
|
20
20
|
sourceDir: 'target/site/serenity',
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
ActorStageExitStarts,
|
|
10
10
|
BusinessRuleDetected,
|
|
11
11
|
FeatureNarrativeDetected,
|
|
12
|
+
RetryableSceneDetected,
|
|
12
13
|
SceneBackgroundDetected,
|
|
13
14
|
SceneDescriptionDetected,
|
|
14
15
|
SceneFinished,
|
|
@@ -33,9 +34,12 @@ import {
|
|
|
33
34
|
scenarioDetailsOf
|
|
34
35
|
} from '../transformations';
|
|
35
36
|
import { SceneSequenceReportContext } from './SceneSequenceReportContext';
|
|
36
|
-
import {
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
import {
|
|
38
|
+
scenarioOutlineOf,
|
|
39
|
+
scenarioParameterResult,
|
|
40
|
+
scenarioParametersOf,
|
|
41
|
+
sceneSequenceOverallResult,
|
|
42
|
+
} from './transformations';
|
|
39
43
|
|
|
40
44
|
/**
|
|
41
45
|
* @package
|
|
@@ -52,6 +56,7 @@ export class SceneSequenceEventQueueProcessor extends EventQueueProcessor {
|
|
|
52
56
|
// eslint-disable-next-line @typescript-eslint/indent
|
|
53
57
|
match<DomainEvent, SceneSequenceReportContext>(event)
|
|
54
58
|
.when(SceneSequenceDetected, this.onSceneSequenceDetected(context))
|
|
59
|
+
.when(RetryableSceneDetected, this.onRetryableSceneDetected(context))
|
|
55
60
|
.when(SceneStarts, this.onSceneStarts(context))
|
|
56
61
|
.when(ActorEntersStage, this.onActorEntersStage(context))
|
|
57
62
|
.when(ActorStageExitStarts, this.onActorStageExitStarts(context))
|
|
@@ -80,6 +85,11 @@ export class SceneSequenceEventQueueProcessor extends EventQueueProcessor {
|
|
|
80
85
|
.with(scenarioDetailsOf(event.details));
|
|
81
86
|
}
|
|
82
87
|
|
|
88
|
+
private onRetryableSceneDetected(context: SceneSequenceReportContext) {
|
|
89
|
+
return (event: SceneSequenceDetected): SceneSequenceReportContext =>
|
|
90
|
+
context.usingRetryModeOutcomeReporting();
|
|
91
|
+
}
|
|
92
|
+
|
|
83
93
|
private onSceneStarts<Context extends SerenityBDDReportContext>(context: Context) {
|
|
84
94
|
return (event: SceneStarts): Context =>
|
|
85
95
|
context
|
package/src/stage/crew/serenity-bdd-reporter/processors/scene-sequence/SceneSequenceReportContext.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ExecutionSuccessful } from '@serenity-js/core/lib/model';
|
|
1
|
+
import { ExecutionSuccessful, type Outcome } from '@serenity-js/core/lib/model';
|
|
2
2
|
|
|
3
3
|
import type { SerenityBDD4ReportSchema } from '../../serenity-bdd-report-schema';
|
|
4
4
|
import { SerenityBDDReportContext } from '../SerenityBDDReportContext';
|
|
@@ -11,6 +11,22 @@ export class SceneSequenceReportContext extends SerenityBDDReportContext {
|
|
|
11
11
|
public readonly parameters: ScenarioParametersDescriptor[] = [];
|
|
12
12
|
public readonly worstOutcomeSoFar = new ExecutionSuccessful();
|
|
13
13
|
|
|
14
|
+
private readonly whenOutcomeIsMoreRecent = (outcome_: Outcome) => true;
|
|
15
|
+
private readonly whenOutcomeIsWorseThanBefore = (outcome: Outcome) => outcome.isWorseThan(this.worstOutcomeSoFar);
|
|
16
|
+
|
|
17
|
+
public shouldUpdateOverallResult: (outcome: Outcome) => boolean
|
|
18
|
+
= this.whenOutcomeIsWorseThanBefore.bind(this);
|
|
19
|
+
|
|
20
|
+
usingOutlineModeOutcomeReporting(): this {
|
|
21
|
+
this.shouldUpdateOverallResult = this.whenOutcomeIsWorseThanBefore.bind(this);
|
|
22
|
+
return this;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
usingRetryModeOutcomeReporting(): this {
|
|
26
|
+
this.shouldUpdateOverallResult = this.whenOutcomeIsMoreRecent.bind(this);
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
|
|
14
30
|
build(): SerenityBDD4ReportSchema {
|
|
15
31
|
const report = super.build();
|
|
16
32
|
|
|
@@ -6,7 +6,7 @@ import type { SceneSequenceReportContext } from '../SceneSequenceReportContext';
|
|
|
6
6
|
export function sceneSequenceOverallResult(outcome: Outcome) {
|
|
7
7
|
return (context: SceneSequenceReportContext): SceneSequenceReportContext => {
|
|
8
8
|
|
|
9
|
-
if (
|
|
9
|
+
if (context.shouldUpdateOverallResult(outcome)) {
|
|
10
10
|
const outcomeReport = outcomeReportFrom(outcome);
|
|
11
11
|
|
|
12
12
|
context.report.result = outcomeReport.result;
|
|
@@ -1,9 +1,20 @@
|
|
|
1
|
-
import type { Tag} from '@serenity-js/core/lib/model';
|
|
2
|
-
import {
|
|
1
|
+
import type { Tag } from '@serenity-js/core/lib/model';
|
|
2
|
+
import {
|
|
3
|
+
BrowserTag,
|
|
4
|
+
CapabilityTag,
|
|
5
|
+
ExecutionRetriedTag,
|
|
6
|
+
FeatureTag,
|
|
7
|
+
IssueTag,
|
|
8
|
+
ManualTag,
|
|
9
|
+
PlatformTag,
|
|
10
|
+
ProjectTag,
|
|
11
|
+
ThemeTag
|
|
12
|
+
} from '@serenity-js/core/lib/model';
|
|
3
13
|
import { match } from 'tiny-types';
|
|
4
14
|
import { equal } from 'tiny-types/lib/objects';
|
|
5
15
|
|
|
6
16
|
import type * as serenitybdd from '../../serenity-bdd-report-schema';
|
|
17
|
+
import { escapeHtml } from '../mappers';
|
|
7
18
|
import type { SerenityBDDReportContext } from '../SerenityBDDReportContext';
|
|
8
19
|
import { reportIdIncluding } from './reportIdIncluding';
|
|
9
20
|
|
|
@@ -99,6 +110,14 @@ export function tagOf<Context extends SerenityBDDReportContext>(tag: Tag): (cont
|
|
|
99
110
|
|
|
100
111
|
return context;
|
|
101
112
|
})
|
|
113
|
+
.when(ProjectTag, (projectTag: ProjectTag) => {
|
|
114
|
+
reportIdIncluding(projectTag.name)(context);
|
|
115
|
+
|
|
116
|
+
context.report.title = `${ context.report.name } - ${ escapeHtml(projectTag.name) }`;
|
|
117
|
+
context.report.tags = concatIfNotPresent(context.report.tags, tagReportFor(projectTag));
|
|
118
|
+
|
|
119
|
+
return context;
|
|
120
|
+
})
|
|
102
121
|
.else(_ => {
|
|
103
122
|
|
|
104
123
|
context.report.tags = concatIfNotPresent(context.report.tags, tagReportFor(tag));
|