public async Task HandleAsync(MovementDateChangeEvent @event)
        {
            var movementDateHistory = new MovementDateHistory(@event.MovementId, new DateTimeOffset(@event.PreviousDate, TimeSpan.Zero));

            context.MovementDateHistories.Add(movementDateHistory);

            await context.SaveChangesAsync();
        }
Exemple #2
0
        public void NewMovementDateHistorySetsChangedDateToUtcNow()
        {
            SystemTime.Freeze();

            var result = new MovementDateHistory(AnyGuid, AnyDate);

            Assert.Equal(SystemTime.UtcNow, result.DateChanged);

            SystemTime.Unfreeze();
        }
        public async Task WhenMultiPreviousDates_ReturnsOldestPreviousDate()
        {
            var movement = new Movement(1, AnyGuid, AnyDate, userId);

            var oldestDateHistory = new MovementDateHistory(AnyGuid, new DateTime(2015, 1, 5));
            ObjectInstantiator<MovementDateHistory>.SetProperty(m => m.DateChanged, new DateTime(2015, 10, 10), oldestDateHistory);

            var otherDateHistory = new MovementDateHistory(AnyGuid, new DateTime(2015, 1, 3));
            ObjectInstantiator<MovementDateHistory>.SetProperty(m => m.DateChanged, new DateTime(2015, 10, 11), otherDateHistory);

            A.CallTo(() => historyRepository.GetByMovementId(A<Guid>.Ignored))
                .Returns(new[]
                {
                    oldestDateHistory,
                    otherDateHistory
                });

            var dateService = new OriginalMovementDate(historyRepository);

            Assert.Equal(oldestDateHistory.PreviousDate, await dateService.Get(movement));
        }
Exemple #4
0
        public async Task WhenMultiPreviousDates_ReturnsOldestPreviousDate()
        {
            var movement = new Movement(1, AnyGuid, AnyDate, userId);

            var oldestDateHistory = new MovementDateHistory(AnyGuid, new DateTime(2015, 1, 5));

            ObjectInstantiator <MovementDateHistory> .SetProperty(m => m.DateChanged, new DateTime(2015, 10, 10), oldestDateHistory);

            var otherDateHistory = new MovementDateHistory(AnyGuid, new DateTime(2015, 1, 3));

            ObjectInstantiator <MovementDateHistory> .SetProperty(m => m.DateChanged, new DateTime(2015, 10, 11), otherDateHistory);

            A.CallTo(() => historyRepository.GetByMovementId(A <Guid> .Ignored))
            .Returns(new[]
            {
                oldestDateHistory,
                otherDateHistory
            });

            var dateService = new OriginalMovementDate(historyRepository);

            Assert.Equal(oldestDateHistory.PreviousDate, await dateService.Get(movement));
        }