public async Task <GetBulkUploadAddDraftApprenticeshipsResult> Handle(BulkUploadAddDraftApprenticeshipsCommand command, CancellationToken cancellationToken)
        {
            await Validate(command, cancellationToken);

            ApiResponse <BulkCreateReservationsWithNonLevyResult> reservationResult = await GetReservations(command);

            MergeReservationWithDraftApprenticeships(command.BulkUploadAddDraftApprenticeships, reservationResult);

            var dataToSend = new BulkUploadAddDraftApprenticeshipsRequest
            {
                BulkUploadDraftApprenticeships = command.BulkUploadAddDraftApprenticeships,
                ProviderId = command.ProviderId,
                UserInfo   = command.UserInfo
            };

            var result = await _apiClient.PostWithResponseCode <GetBulkUploadAddDraftApprenticeshipsResponse>(
                new PostAddDraftApprenticeshipsRequest(command.ProviderId, dataToSend));

            result.EnsureSuccessStatusCode();

            return(new GetBulkUploadAddDraftApprenticeshipsResult
            {
                BulkUploadAddDraftApprenticeshipsResponse = result.Body.BulkUploadAddDraftApprenticeshipsResponse.Select(x => (BulkUploadAddDraftApprenticeshipsResult)x)
            });
        }
        public async Task And_Then_No_Result_Is_Returned_From_Mediator(
            BulkUploadAddDraftApprenticeshipsRequest request,
            [Greedy] BulkUploadController controller)
        {
            var controllerResult = await controller.AddDraftapprenticeships(request) as NotFoundResult;

            controllerResult.StatusCode.Should().Be((int)HttpStatusCode.NotFound);
        }
        public void Setup()
        {
            var fixture = new Fixture();

            _apiRequest = fixture.Create <BulkUploadAddDraftApprenticeshipsRequest>();
            _viewModel  = fixture.Build <FileUploadStartViewModel>()
                          .With(x => x.Attachment, Mock.Of <IFormFile>()).Create();
            _fileParser = new Mock <IBulkUploadFileParser>();
            _fileParser.Setup(x => x.CreateApiRequest(It.IsAny <long>(), It.IsAny <IFormFile>())).Returns(() => _apiRequest);

            _mapper = new FileUploadStartViewModelToBulkUploadRequestMapper(_fileParser.Object);
        }
Esempio n. 4
0
        public async Task <IActionResult> AddDraftapprenticeships(BulkUploadAddDraftApprenticeshipsRequest request)
        {
            var result = await _mediator.Send(
                new BulkUploadAddDraftApprenticeshipsCommand
            {
                ProviderId = request.ProviderId,
                BulkUploadAddDraftApprenticeships = request.BulkUploadDraftApprenticeships?.ToList(),
                UserInfo = request.UserInfo
            });

            if (result == null)
            {
                return(NotFound());
            }
            return(Ok(result));
        }
        public async Task Then_Adding_Apprentices_From_Mediator(
            BulkUploadAddDraftApprenticeshipsRequest request,
            GetBulkUploadAddDraftApprenticeshipsResult response,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] BulkUploadController controller)
        {
            mockMediator
            .Setup(mediator => mediator.Send(
                       It.Is <BulkUploadAddDraftApprenticeshipsCommand>(x => x.ProviderId == request.ProviderId && x.UserInfo == request.UserInfo),
                       It.IsAny <CancellationToken>())).ReturnsAsync(response);

            var controllerResult = await controller.AddDraftapprenticeships(request) as ObjectResult;

            Assert.IsNotNull(controllerResult);
            controllerResult.StatusCode.Should().Be((int)HttpStatusCode.OK);
        }
Esempio n. 6
0
        public PostFileUploadStartFixture()
        {
            var fixture = new Fixture();

            _viewModel = fixture.Build <FileUploadStartViewModel>()
                         .With(x => x.Attachment, Mock.Of <IFormFile>()).Create();
            _apiRequest          = fixture.Create <BulkUploadAddDraftApprenticeshipsRequest>();
            _commitmentApiClient = new Mock <ICommitmentsApiClient>();

            _mockModelMapper = new Mock <IModelMapper>();
            _mockModelMapper.Setup(x => x.Map <BulkUploadAddDraftApprenticeshipsRequest>(_viewModel)).ReturnsAsync(() => _apiRequest);

            _commitmentApiClient
            .Setup(x => x.BulkUploadDraftApprenticeships(It.IsAny <long>(), It.IsAny <BulkUploadAddDraftApprenticeshipsRequest>(), It.IsAny <CancellationToken>())).Returns(Task.FromResult(0));

            var tempData = new TempDataDictionary(new DefaultHttpContext(), Mock.Of <ITempDataProvider>());

            Sut          = new CohortController(Mock.Of <IMediator>(), _mockModelMapper.Object, Mock.Of <ILinkGenerator>(), _commitmentApiClient.Object, Mock.Of <IFeatureTogglesService <ProviderFeatureToggle> >(), Mock.Of <IEncodingService>());
            Sut.TempData = tempData;
        }