Ejemplo n.º 1
0
        public async Task GivenNoDateInTheMessage_ThenUseTodaysDate()
        {
            var targetDate = DateTime.Today.AddDays(-1);

            _timeProviderMock.Setup(t => t.Today).Returns(targetDate);
            _queryStoreHouseKeepingServiceMock.Setup(s => s.GetStaleDocumentsAsync <QueryProjectionBase>(It.IsAny <string>(), It.IsAny <DateTime>())).ReturnsAsync(new List <QueryProjectionBase>());
            _queryStoreHouseKeepingServiceMock.Setup(s => s.DeleteStaleDocumentsAsync <QueryProjectionBase>(It.IsAny <string>(), It.IsAny <IEnumerable <string> >())).ReturnsAsync(0);
            var sut = new DeleteStaleQueryStoreDocumentsQueueTrigger(_loggerMock.Object, _jobsConfig, _timeProviderMock.Object, _queryStoreHouseKeepingServiceMock.Object);
            await sut.DeleteStaleQueryStoreDocumentsAsync("{}", null);

            _queryStoreHouseKeepingServiceMock.Verify(s => s.GetStaleDocumentsAsync <QueryProjectionBase>(It.IsAny <string>(), targetDate.AddDays(Days * -1)), Times.Exactly(4));
            _timeProviderMock.VerifyGet(t => t.Today);
        }
Ejemplo n.º 2
0
        public async Task GivenDateInTheMessage_ThenUseThatDate()
        {
            _queryStoreHouseKeepingServiceMock.Setup(s => s.GetStaleDocumentsAsync <QueryProjectionBase>(It.IsAny <string>(), It.IsAny <DateTime>())).ReturnsAsync(new List <QueryProjectionBase>());
            _queryStoreHouseKeepingServiceMock.Setup(s => s.DeleteStaleDocumentsAsync <QueryProjectionBase>(It.IsAny <string>(), It.IsAny <IEnumerable <string> >())).ReturnsAsync(0);
            var sut     = new DeleteStaleQueryStoreDocumentsQueueTrigger(_loggerMock.Object, _jobsConfig, _timeProviderMock.Object, _queryStoreHouseKeepingServiceMock.Object);
            var message = new DeleteStaleQueryStoreDocumentsQueueMessage()
            {
                CreatedByScheduleDate = DateTime.Today
            };
            await sut.DeleteStaleQueryStoreDocumentsAsync(JsonConvert.SerializeObject(message), null);

            _queryStoreHouseKeepingServiceMock.Verify(s => s.GetStaleDocumentsAsync <QueryProjectionBase>(It.IsAny <string>(), DateTime.Today.AddDays(Days * -1)), Times.Exactly(4));
            _timeProviderMock.Verify(t => t.Today, Times.Never);
        }
Ejemplo n.º 3
0
        public async Task GivenStaleDocumentsExist_ThenDeleteStaleDocuments()
        {
            var viewType = "ClosedVacancy";
            var testId   = Guid.NewGuid().ToString();

            _timeProviderMock.Setup(t => t.Today).Returns(DateTime.Today);
            _queryStoreHouseKeepingServiceMock.Setup(s => s.GetStaleDocumentsAsync <QueryProjectionBase>(viewType, It.IsAny <DateTime>())).ReturnsAsync(new List <QueryProjectionBase>()
            {
                new ClosedVacancy()
                {
                    Id = testId
                }
            });
            _queryStoreHouseKeepingServiceMock.Setup(s => s.GetStaleDocumentsAsync <QueryProjectionBase>(It.IsNotIn(new [] { viewType }), It.IsAny <DateTime>())).ReturnsAsync(new List <QueryProjectionBase>());
            _queryStoreHouseKeepingServiceMock.Setup(s => s.DeleteStaleDocumentsAsync <QueryProjectionBase>(viewType, It.IsAny <IEnumerable <string> >())).ReturnsAsync(1);
            var sut = new DeleteStaleQueryStoreDocumentsQueueTrigger(_loggerMock.Object, _jobsConfig, _timeProviderMock.Object, _queryStoreHouseKeepingServiceMock.Object);
            await sut.DeleteStaleQueryStoreDocumentsAsync("", null);

            _queryStoreHouseKeepingServiceMock.Verify(s => s.GetStaleDocumentsAsync <QueryProjectionBase>(It.IsAny <string>(), DateTime.Today.AddDays(Days * -1)), Times.Exactly(4));
            _queryStoreHouseKeepingServiceMock.Verify(s => s.DeleteStaleDocumentsAsync <QueryProjectionBase>(It.IsAny <string>(), It.IsAny <IEnumerable <string> >()));
        }