public void Should_set_and_get_event_id() { var commitId = Guid.NewGuid(); sut.SetEventId(commitId); Assert.Equal(commitId, sut.Headers.EventId()); Assert.Equal(commitId, sut.Headers.GetGuid("EventId")); }
public Envelope <IEvent> Parse(EventData eventData, bool migrate = true) { var headers = ReadJson <EnvelopeHeaders>(eventData.Metadata); var eventType = typeNameRegistry.GetType(eventData.Type); var eventPayload = ReadJson <IEvent>(eventData.Payload, eventType); if (migrate && eventPayload is IMigratedEvent migratedEvent) { eventPayload = migratedEvent.Migrate(); } var envelope = new Envelope <IEvent>(eventPayload, headers); envelope.SetEventId(eventData.EventId); return(envelope); }
public void Should_serialize_and_deserialize_envelope() { var commitId = Guid.NewGuid(); var inputEvent = new Envelope <MyEvent>(new MyEvent { MyProperty = "My-Property" }); inputEvent.SetAggregateId(Guid.NewGuid()); inputEvent.SetCommitId(commitId); inputEvent.SetEventId(Guid.NewGuid()); inputEvent.SetEventPosition("1"); inputEvent.SetEventStreamNumber(1); inputEvent.SetTimestamp(SystemClock.Instance.GetCurrentInstant()); var eventData = sut.ToEventData(inputEvent.To <IEvent>(), commitId); var outputEvent = sut.Parse(eventData).To <MyEvent>(); AssertHeaders(inputEvent.Headers, outputEvent.Headers); AssertPayload(inputEvent, outputEvent); }