Example #1
0
        public void RegisterEventHandlerByNameTest()
        {
            DispatchingSubscriber subscriber = new DispatchingSubscriber();
            TestEvent             testEvent  = new TestEvent("some value");

            TestEvent receivedEvent = null;

            subscriber.Register <TestEvent>("TestEvent", evt => receivedEvent = evt);

            subscriber.ProcessEvent(new EventEnvelope(testEvent.Name, type => testEvent));

            receivedEvent.Should().NotBeNull();
            receivedEvent.ShouldBeEquivalentTo(testEvent);
        }
Example #2
0
        public void RegisterDynamicEventHandlerTest()
        {
            DispatchingSubscriber subscriber = new DispatchingSubscriber();
            TestEvent             testEvent  = new TestEvent("some value");

            dynamic receivedEvent = null;

            subscriber.Register("TestEvent", evt => receivedEvent = evt);

            subscriber.ProcessEvent(new EventEnvelope(testEvent.Name, type => testEvent));

            ((DateTime)receivedEvent.EventDate).ShouldBeEquivalentTo(testEvent.EventDate);
            ((Guid)receivedEvent.EventId).ShouldBeEquivalentTo(testEvent.EventId);
            ((string)receivedEvent.Name).ShouldBeEquivalentTo(testEvent.Name);
            ((string)receivedEvent.Value).ShouldBeEquivalentTo(testEvent.Value);
        }