示例#1
0
        public EventDataFormatterTests()
        {
            serializerSettings.Converters.Add(new PropertiesBagConverter());

            typeNameRegistry.Map(typeof(MyEvent), "Event");
            typeNameRegistry.Map(typeof(MyOldEvent), "OldEvent");

            sut = new EventDataFormatter(typeNameRegistry, serializerSettings);
        }
示例#2
0
        public EventReceiver(
            EventDataFormatter formatter,
            IEventStore eventStore,
            IEventConsumerInfoRepository eventConsumerInfoRepository,
            ISemanticLog log)
        {
            Guard.NotNull(log, nameof(log));
            Guard.NotNull(formatter, nameof(formatter));
            Guard.NotNull(eventStore, nameof(eventStore));
            Guard.NotNull(eventConsumerInfoRepository, nameof(eventConsumerInfoRepository));

            this.log        = log;
            this.formatter  = formatter;
            this.eventStore = eventStore;
            this.eventConsumerInfoRepository = eventConsumerInfoRepository;
        }
示例#3
0
        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.SetEventNumber(1);
            inputEvent.SetEventStreamNumber(1);
            inputEvent.SetTimestamp(SystemClock.Instance.GetCurrentInstant());

            var sut = new EventDataFormatter(typeNameRegistry, serializerSettings);

            var eventData = sut.ToEventData(inputEvent.To <IEvent>(), commitId);

            var outputEvent = sut.Parse(eventData).To <MyEvent>();

            CompareHeaders(outputEvent.Headers, inputEvent.Headers);

            Assert.Equal(inputEvent.Payload.MyProperty, outputEvent.Payload.MyProperty);
        }