Example #1
0
        public async Task <DQTFileTransferDTO> GetDQTFileTransferServiceStatus()
        {
            var fileTransfers = await _repository.FindAllAsync();

            if (fileTransfers.Any())
            {
                var latestFileTransfer      = fileTransfers.OrderByDescending(r => r.LastRun).First();
                var successfulFileTransfers = await _repository.FindAsync(r => r.Status == DQTFileTransferStatus.Success.ToString());

                var result = new DQTFileTransferDTO()
                {
                    LastSuccessfulRunDate = null,
                    LastRunDate           = latestFileTransfer.LastRun,
                    LastRunStatus         = latestFileTransfer.Status,
                    LastRunError          = latestFileTransfer.Error
                };

                if (successfulFileTransfers.Any())
                {
                    result.LastSuccessfulRunDate = successfulFileTransfers.Max(s => s.LastRun);
                }

                return(await Task.FromResult(result));
            }

            return(await Task.FromResult <DQTFileTransferDTO>(null));
        }
Example #2
0
        public async void Returns_NotFoundObjectResult_WhenRequestIsValidAndNoRecordsFound()
        {
            DQTFileTransferDTO mockResult = null;

            _mockAuth.Setup(x => x.AuthorizeRequest(It.IsAny <HttpRequest>())).Returns(true);
            _dqtFileTransferServiceMock.Setup(x => x.GetDQTFileTransferServiceStatus()).ReturnsAsync(mockResult);

            var request  = CreateMockHttpRequest();
            var response = (NotFoundObjectResult)await _qualifiedTeacherStatusService.Run(request.Object);

            Assert.Equal(404, response.StatusCode);
            Assert.Equal("No file transfer record(s) found", response.Value);
        }
        public async void Returns_SuccessResponseWithDQTFileTransferRecords_WhenRequestIsValid()
        {
            var mockResult = new DQTFileTransferDTO()
            {
                LastSuccessfulRunDate = today.AddDays(-1),
                LastRunDate           = today.AddDays(-1),
                LastRunStatus         = DQTFileTransferStatus.Success.ToString(),
                LastRunError          = ""
            };

            var request  = CreateMockHttpRequest();
            var response = (OkObjectResult)await _qualifiedTeacherStatusService.Run(request.Object);

            var resultDto = (ResultDTO <DQTFileTransferDTO>)response.Value;

            Assert.Equal(200, response.StatusCode);
            Assert.Equal(mockResult.LastRunDate, resultDto.Data.LastRunDate);
        }
Example #4
0
        public async void Returns_SuccessResponseWithDQTFileTransferRecords_WhenRequestIsValid()
        {
            var mockResult = new DQTFileTransferDTO()
            {
                LastSuccessfulRunDate = today.AddDays(-1),
                LastRunDate           = today,
                LastRunStatus         = DQTFileTransferStatus.Failure.ToString(),
                LastRunError          = "File not found"
            };

            _mockAuth.Setup(x => x.AuthorizeRequest(It.IsAny <HttpRequest>())).Returns(true);
            _dqtFileTransferServiceMock.Setup(x => x.GetDQTFileTransferServiceStatus()).ReturnsAsync(mockResult);

            var request  = CreateMockHttpRequest();
            var response = (OkObjectResult)await _qualifiedTeacherStatusService.Run(request.Object);

            var resultDto = (ResultDTO <DQTFileTransferDTO>)response.Value;

            Assert.Equal(200, response.StatusCode);
            Assert.Equal(mockResult, resultDto.Data);
        }
        public async void Returns_LastSuccessfulRunDateNull_WhenNoSuccessRunFound()
        {
            _repositoryMock
            .Setup(q => q.FindAllAsync())
            .ReturnsAsync(mockFileTransferResults);

            _repositoryMock
            .Setup(q => q.FindAsync(r => r.Status == DQTFileTransferStatus.Success.ToString()))
            .ReturnsAsync(new List <DQTFileTransfer>());

            var actualResult = await _dqtFileTransferService.GetDQTFileTransferServiceStatus();

            var expectedResult = new DQTFileTransferDTO()
            {
                LastSuccessfulRunDate = null,
                LastRunDate           = today,
                LastRunStatus         = DQTFileTransferStatus.Failure.ToString(),
                LastRunError          = "File not found"
            };

            Assert.Equal(actualResult.LastSuccessfulRunDate, expectedResult.LastSuccessfulRunDate);
            Assert.Equal(actualResult.LastRunDate, expectedResult.LastRunDate);
            Assert.Equal(actualResult.LastRunStatus, expectedResult.LastRunStatus);
        }
Example #6
0
 static ResultDTO <DQTFileTransferDTO> GetResultDto(DQTFileTransferDTO data, string message = null)
 {
     return(new ResultDTO <DQTFileTransferDTO>(data, message));
 }