@serenity-js/core
Version:
The core Serenity/JS framework, providing the Screenplay Pattern interfaces, as well as the test reporting and integration infrastructure
29 lines • 1.16 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.SceneFinished = void 0;
const tiny_types_1 = require("tiny-types");
const model_1 = require("../model");
const screenplay_1 = require("../screenplay");
const DomainEvent_1 = require("./DomainEvent");
/**
* @group Events
*/
class SceneFinished extends DomainEvent_1.DomainEvent {
sceneId;
details;
outcome;
static fromJSON(o) {
return new SceneFinished(model_1.CorrelationId.fromJSON(o.sceneId), model_1.ScenarioDetails.fromJSON(o.details), model_1.Outcome.fromJSON(o.outcome), screenplay_1.Timestamp.fromJSON(o.timestamp));
}
constructor(sceneId, details, outcome, timestamp) {
super(timestamp);
this.sceneId = sceneId;
this.details = details;
this.outcome = outcome;
(0, tiny_types_1.ensure)('sceneId', sceneId, (0, tiny_types_1.isDefined)());
(0, tiny_types_1.ensure)('details', details, (0, tiny_types_1.isDefined)());
(0, tiny_types_1.ensure)('outcome', outcome, (0, tiny_types_1.isDefined)());
}
}
exports.SceneFinished = SceneFinished;
//# sourceMappingURL=SceneFinished.js.map
;