public override void Given() { BulkRegistrationResponse = new BulkProcessResponse { IsSuccess = false, BlobUniqueReference = BlobUniqueReference, ErrorFileSize = 1.5 }; UploadRegistrationsRequestViewModel = new UploadRegistrationsRequestViewModel { AoUkprn = Ukprn, File = FormFile }; UploadRegistrationsResponseViewModel = new UploadRegistrationsResponseViewModel { IsSuccess = false, BlobUniqueReference = BlobUniqueReference, ErrorFileSize = 1.5 }; Mapper.Map <BulkProcessRequest>(UploadRegistrationsRequestViewModel).Returns(BulkRegistrationRequest); Mapper.Map <UploadRegistrationsResponseViewModel>(BulkRegistrationResponse).Returns(UploadRegistrationsResponseViewModel); InternalApiClient.ProcessBulkRegistrationsAsync(BulkRegistrationRequest).Returns(BulkRegistrationResponse); Loader = new RegistrationLoader(Mapper, Logger, InternalApiClient, BlobStorageService); }
public override void Given() { BulkRegistrationResponse = new BulkProcessResponse { IsSuccess = true, Stats = new BulkUploadStats { TotalRecordsCount = 10, NewRecordsCount = 5, AmendedRecordsCount = 3, UnchangedRecordsCount = 2 } }; UploadRegistrationsRequestViewModel = new UploadRegistrationsRequestViewModel { AoUkprn = Ukprn, File = FormFile }; UploadRegistrationsResponseViewModel = new UploadRegistrationsResponseViewModel { IsSuccess = true, Stats = new BulkUploadStatsViewModel { TotalRecordsCount = 10, NewRecordsCount = 5, AmendedRecordsCount = 3, UnchangedRecordsCount = 2 } }; Mapper.Map <BulkProcessRequest>(UploadRegistrationsRequestViewModel).Returns(BulkRegistrationRequest); Mapper.Map <UploadRegistrationsResponseViewModel>(BulkRegistrationResponse).Returns(UploadRegistrationsResponseViewModel); InternalApiClient.ProcessBulkRegistrationsAsync(BulkRegistrationRequest).Returns(BulkRegistrationResponse); Loader = new RegistrationLoader(Mapper, Logger, InternalApiClient, BlobStorageService); }
public override void Given() { HttpContextAccessor = Substitute.For <IHttpContextAccessor>(); HttpContextAccessor.HttpContext.Returns(new DefaultHttpContext { User = new ClaimsPrincipal(new ClaimsIdentity(new[] { new Claim(ClaimTypes.GivenName, _givename), new Claim(ClaimTypes.Surname, _surname), new Claim(ClaimTypes.Email, _email) })) }); CreateMapper(); BulkRegistrationRequest = new BulkProcessRequest { AoUkprn = Ukprn }; BulkRegistrationResponse = new BulkProcessResponse { IsSuccess = false, BlobUniqueReference = Guid.NewGuid(), ErrorFileSize = 1.5 }; UploadRegistrationsRequestViewModel = new UploadRegistrationsRequestViewModel { AoUkprn = Ukprn, File = FormFile }; InternalApiClient.ProcessBulkRegistrationsAsync(BulkRegistrationRequest).Returns(BulkRegistrationResponse); Loader = new RegistrationLoader(Mapper, Logger, InternalApiClient, BlobStorageService); }
public override void Setup() { RegistrationLoader = Substitute.For <IRegistrationLoader>(); CacheService = Substitute.For <ICacheService>(); Logger = Substitute.For <ILogger <RegistrationController> >(); Controller = new RegistrationController(RegistrationLoader, CacheService, Logger); ViewModel = new UploadRegistrationsRequestViewModel(); }
public IActionResult UploadRegistrationsFile(int?requestErrorTypeId) { var model = new UploadRegistrationsRequestViewModel { RequestErrorTypeId = requestErrorTypeId }; model.SetAnyModelErrors(ModelState); return(View(model)); }
public override void Setup() { Ukprn = 12345; HttpContextAccessor = Substitute.For <IHttpContextAccessor>(); RegistrationLoader = Substitute.For <IRegistrationLoader>(); CacheService = Substitute.For <ICacheService>(); Logger = Substitute.For <ILogger <RegistrationController> >(); Controller = new RegistrationController(RegistrationLoader, CacheService, Logger); ViewModel = new UploadRegistrationsRequestViewModel(); var httpContext = new ClaimsIdentityBuilder <RegistrationController>(Controller) .Add(CustomClaimTypes.Ukprn, Ukprn.ToString()) .Build() .HttpContext; HttpContextAccessor.HttpContext.Returns(httpContext); TempData = new TempDataDictionary(HttpContextAccessor.HttpContext, Substitute.For <ITempDataProvider>()); Controller.TempData = TempData; }
public override void Given() { HttpContextAccessor = Substitute.For <IHttpContextAccessor>(); HttpContextAccessor.HttpContext.Returns(new DefaultHttpContext { User = new ClaimsPrincipal(new ClaimsIdentity(new[] { new Claim(ClaimTypes.GivenName, _givename), new Claim(ClaimTypes.Surname, _surname), new Claim(ClaimTypes.Email, _email) })) }); CreateMapper(); BulkRegistrationRequest = new BulkProcessRequest { AoUkprn = Ukprn }; BulkRegistrationResponse = new BulkProcessResponse { IsSuccess = true, Stats = new BulkUploadStats { TotalRecordsCount = 10, NewRecordsCount = 5, AmendedRecordsCount = 3, UnchangedRecordsCount = 2 } }; UploadRegistrationsRequestViewModel = new UploadRegistrationsRequestViewModel { AoUkprn = Ukprn, File = FormFile }; InternalApiClient.ProcessBulkRegistrationsAsync(BulkRegistrationRequest).Returns(BulkRegistrationResponse); Loader = new RegistrationLoader(Mapper, Logger, InternalApiClient, BlobStorageService); }
public async Task <IActionResult> UploadRegistrationsFileAsync(UploadRegistrationsRequestViewModel viewModel) { if (!ModelState.IsValid) { return(View(viewModel)); } viewModel.AoUkprn = User.GetUkPrn(); var response = await _registrationLoader.ProcessBulkRegistrationsAsync(viewModel); if (response.IsSuccess) { var successfulViewModel = new UploadSuccessfulViewModel { Stats = response.Stats }; await _cacheService.SetAsync(string.Concat(CacheKey, Constants.UploadSuccessfulViewModel), successfulViewModel, CacheExpiryTime.XSmall); return(RedirectToRoute(RouteConstants.RegistrationsUploadSuccessful)); } else { if (response.ShowProblemWithServicePage) { return(RedirectToRoute(RouteConstants.ProblemWithRegistrationsUpload)); } else { var unsuccessfulViewModel = new UploadUnsuccessfulViewModel { BlobUniqueReference = response.BlobUniqueReference, FileSize = response.ErrorFileSize, FileType = FileType.Csv.ToString().ToUpperInvariant() }; await _cacheService.SetAsync(string.Concat(CacheKey, Constants.UploadUnsuccessfulViewModel), unsuccessfulViewModel, CacheExpiryTime.XSmall); return(RedirectToRoute(RouteConstants.RegistrationsUploadUnsuccessful)); } } }
public async Task <UploadRegistrationsResponseViewModel> ProcessBulkRegistrationsAsync(UploadRegistrationsRequestViewModel viewModel) { var bulkRegistrationRequest = _mapper.Map <BulkProcessRequest>(viewModel); using (var fileStream = viewModel.File.OpenReadStream()) { await _blobStorageService.UploadFileAsync(new BlobStorageData { ContainerName = bulkRegistrationRequest.DocumentType.ToString(), BlobFileName = bulkRegistrationRequest.BlobFileName, SourceFilePath = $"{bulkRegistrationRequest.AoUkprn}/{BulkProcessStatus.Processing}", FileStream = fileStream, UserName = bulkRegistrationRequest.PerformedBy }); } var bulkRegistrationResponse = await _internalApiClient.ProcessBulkRegistrationsAsync(bulkRegistrationRequest); return(_mapper.Map <UploadRegistrationsResponseViewModel>(bulkRegistrationResponse)); }