Exemplo n.º 1
0
 private async Task HandleChangesInWrongOrder(CounterQueryEventsHandler handler, IEnumerable <IAggregateEvent> changes)
 {
     foreach (var ev in changes.Reverse())
     {
         await HandleEvent(handler, ev);
     }
 }
Exemplo n.º 2
0
        private Task HandleChangesAsynchronously(CounterQueryEventsHandler handler, IEnumerable <IAggregateEvent> changes)
        {
            var tasks = new List <Task>();

            foreach (var ev in changes)
            {
                tasks.Add(Task.Run(async() => await HandleEvent(handler, ev)));
            }

            return(Task.WhenAll(tasks));
        }
Exemplo n.º 3
0
 private Task HandleEvent(CounterQueryEventsHandler handler, IAggregateEvent ev)
 {
     if (ev is IAggregateEvent <Sample.CounterIncremented> )
     {
         return(handler.On(ev as IAggregateEvent <Sample.CounterIncremented>));
     }
     else if (ev is IAggregateEvent <Sample.CounterMultiplied> )
     {
         return(handler.On(ev as IAggregateEvent <Sample.CounterMultiplied>));
     }
     else
     {
         return(handler.On(ev as IAggregateEvent <Sample.CounterReset>));
     }
 }
Exemplo n.º 4
0
        private async Task ShouldHandleEventsAndStoreQuery(string expectedStatsStr, Func<CounterQueryEventsHandler, IEnumerable<IAggregateEvent>, Task> handleChanges)
        {
            // arrange
            var expected = CreateStats(expectedStatsStr);
            var changes = await MakeExpectedChanges(expected);

            // act
            var handler = new CounterQueryEventsHandler(this.queryStore, this.eventStore);
            await handleChanges(handler, changes);

            // assert
            await Task.Delay(100);

            var query = await queryStore.Get(AggregateId);

            if (query.Version != changes.Count())
            {

            }

            Assert.That(query.Version, Is.EqualTo(changes.Count()));
            AssertStats(query.Data, expected);
        }
Exemplo n.º 5
0
        private async Task ShouldHandleEventsAndStoreQuery(string expectedStatsStr, Func <CounterQueryEventsHandler, IEnumerable <IAggregateEvent>, Task> handleChanges)
        {
            // arrange
            var expected = CreateStats(expectedStatsStr);
            var changes  = await MakeExpectedChanges(expected);

            // act
            var handler = new CounterQueryEventsHandler(this.queryStore, this.eventStore);

            await handleChanges(handler, changes);

            // assert
            await Task.Delay(100);

            var query = await queryStore.Get(AggregateId);

            if (query.Version != changes.Count())
            {
            }

            Assert.That(query.Version, Is.EqualTo(changes.Count()));
            AssertStats(query.Data, expected);
        }
Exemplo n.º 6
0
 private Task HandleEvent(CounterQueryEventsHandler handler, IAggregateEvent ev)
 {
     if (ev is IAggregateEvent<Sample.CounterIncremented>)
     {
         return handler.On(ev as IAggregateEvent<Sample.CounterIncremented>);
     }
     else if (ev is IAggregateEvent<Sample.CounterMultiplied>)
     {
         return handler.On(ev as IAggregateEvent<Sample.CounterMultiplied>);
     }
     else
     {
         return handler.On(ev as IAggregateEvent<Sample.CounterReset>);
     }
 }
Exemplo n.º 7
0
        private Task HandleChangesAsynchronously(CounterQueryEventsHandler handler, IEnumerable<IAggregateEvent> changes)
        {
            var tasks = new List<Task>();

            foreach (var ev in changes)
            {
                tasks.Add(Task.Run(async () => await HandleEvent(handler, ev)));
            }

            return Task.WhenAll(tasks);
        }
Exemplo n.º 8
0
 private async Task HandleChangesInWrongOrder(CounterQueryEventsHandler handler, IEnumerable<IAggregateEvent> changes)
 {
     foreach (var ev in changes.Reverse())
     {
         await HandleEvent(handler, ev);
     }
 }