示例#1
0
        public async Task HandleIsOnlyCalledOnce()
        {
            var dateTimeOffset     = 1;
            var domainEventWrapper = new SubscribedDomainEventWrapper
            {
                OverallVersion = dateTimeOffset,
                DomainEvent    = new TestEv2(Guid.NewGuid())
            };

            var handleAsync           = new Handler1();
            var handleAsync2          = new Handler2();
            var eventDelegateHandler1 = new AsyncEventHandler <Handler1, TestEv2>(
                new VersionRepositoryMongoDb(EventMongoDb),
                new EventFeedMock(dateTimeOffset, domainEventWrapper), handleAsync);

            var eventDelegateHandler2 = new AsyncEventHandler <Handler1, TestEv2>(
                new VersionRepositoryMongoDb(EventMongoDb),
                new EventFeedMock(dateTimeOffset, domainEventWrapper), handleAsync2);

            await eventDelegateHandler1.UpdateAsync();

            await eventDelegateHandler2.UpdateAsync();

            Assert.AreEqual(1, handleAsync.TimesCalled);
            Assert.AreEqual(1, handleAsync2.TimesCalled);
        }
        public Task <IEnumerable <SubscribedDomainEventWrapper> > GetEventsAsync(long lastVersion = 0)
        {
            var domainEventWrapper = new SubscribedDomainEventWrapper
            {
                EntityStreamVersion = 15,
                DomainEvent         = new TestEvnt1(ReadModelHandlerTests.EntityGuid, "ersterName")
            };
            var domainEventWrappe2 = new SubscribedDomainEventWrapper
            {
                EntityStreamVersion = 17,
                DomainEvent         = new TestEvnt1(ReadModelHandlerTests.EntityGuid, "zweiterName")
            };
            var list = new List <SubscribedDomainEventWrapper> {
                domainEventWrapper, domainEventWrappe2
            };

            return(Task.FromResult((IEnumerable <SubscribedDomainEventWrapper>)list));
        }
        public static Task <IEnumerable <SubscribedDomainEventWrapper> > MakeEvents()
        {
            var wrapper1 = new SubscribedDomainEventWrapper
            {
                EntityStreamVersion = 12,
                DomainEvent         = new TestEvnt1(EntityGuid, "testName")
            };

            var wrapper2 = new SubscribedDomainEventWrapper
            {
                EntityStreamVersion = 14,
                DomainEvent         = new TestEvnt2(EntityGuid2)
            };
            var list = new List <SubscribedDomainEventWrapper> {
                wrapper1, wrapper2
            };

            return(Task.FromResult((IEnumerable <SubscribedDomainEventWrapper>)list));
        }
示例#4
0
 public EventFeedMock(long globalVersion, SubscribedDomainEventWrapper domainEventWrapper)
 {
     _globalVersion      = globalVersion;
     _domainEventWrapper = domainEventWrapper;
 }