Exemple #1
0
        public void And_Employer_Adding_Apprentices_Then_Redirect_To_Add_Apprentice(
            AssignViewModel viewModel,
            [Greedy] CohortController controller)
        {
            var expectedRouteValues = new RouteValueDictionary(new
            {
                viewModel.AccountHashedId,
                viewModel.AccountLegalEntityHashedId,
                viewModel.ReservationId,
                viewModel.StartMonthYear,
                viewModel.CourseCode,
                viewModel.ProviderId,
                viewModel.TransferSenderId,
                viewModel.EncodedPledgeApplicationId,
                Origin = viewModel.ReservationId.HasValue ? Origin.Reservations : Origin.Apprentices
            });

            viewModel.WhoIsAddingApprentices = WhoIsAddingApprentices.Employer;

            var result = controller.Assign(viewModel) as RedirectToActionResult;

            result.Should().NotBeNull();
            result.ActionName.Should().Be("Apprentice");
            result.ControllerName.Should().Be("Cohort");
            result.RouteValues.Should().BeEquivalentTo(expectedRouteValues);
        }
            public CreateCohortWithOtherPartyControllerTestFixture()
            {
                var autoFixture = new Fixture();

                CommitmentsApiClientMock = new Mock <ICommitmentsApiClient>();
                ErrorDetail = new ErrorDetail("field1", "error message");

                MapperResult    = new CreateCohortWithOtherPartyRequest();
                ModelMapperMock = new Mock <IModelMapper>();
                ModelMapperMock
                .Setup(x => x.Map <CreateCohortWithOtherPartyRequest>(It.IsAny <object>()))
                .ReturnsAsync(() => MapperResult);

                MessageViewModel = autoFixture.Create <MessageViewModel>();
                ModelMapperMock.Setup(x => x.Map <MessageViewModel>(It.IsAny <object>()))
                .ReturnsAsync(() => MessageViewModel);

                Sut = new CohortController(
                    CommitmentsApiClientMock.Object, Mock.Of <ILogger <CohortController> >(),
                    Mock.Of <ILinkGenerator>(),
                    ModelMapperMock.Object,
                    Mock.Of <IAuthorizationService>(),
                    Mock.Of <IEncodingService>()
                    );
            }
Exemple #3
0
            public WhenPostingDetailsFixture()
            {
                var autoFixture = new Fixture();

                var modelMapper = new Mock <IModelMapper>();

                _commitmentsApiClient = new Mock <ICommitmentsApiClient>();
                var linkGenerator = new Mock <ILinkGenerator>();

                _cohortId                   = autoFixture.Create <long>();
                _accountHashedId            = autoFixture.Create <string>();
                _accountLegalEntityHashedId = autoFixture.Create <string>();

                _viewModel = new DetailsViewModel
                {
                    CohortId                   = _cohortId,
                    AccountHashedId            = _accountHashedId,
                    AccountLegalEntityHashedId = _accountLegalEntityHashedId
                };

                _sendCohortApiRequest         = new SendCohortRequest();
                _approveCohortApiRequest      = new ApproveCohortRequest();
                _viewEmployerAgreementRequest = new ViewEmployerAgreementRequest
                {
                    AccountHashedId   = autoFixture.Create <string>(),
                    AgreementHashedId = autoFixture.Create <string>()
                };

                modelMapper.Setup(x => x.Map <SendCohortRequest>(It.Is <DetailsViewModel>(vm => vm == _viewModel)))
                .ReturnsAsync(_sendCohortApiRequest);

                modelMapper.Setup(x => x.Map <ApproveCohortRequest>(It.Is <DetailsViewModel>(vm => vm == _viewModel)))
                .ReturnsAsync(_approveCohortApiRequest);

                modelMapper.Setup(x =>
                                  x.Map <ViewEmployerAgreementRequest>(It.Is <DetailsViewModel>(vm => vm == _viewModel)))
                .ReturnsAsync(_viewEmployerAgreementRequest);

                _commitmentsApiClient.Setup(x => x.SendCohort(It.Is <long>(c => c == _cohortId),
                                                              It.Is <SendCohortRequest>(r => r == _sendCohortApiRequest), It.IsAny <CancellationToken>()))
                .Returns(Task.CompletedTask);

                _commitmentsApiClient.Setup(x => x.ApproveCohort(It.Is <long>(c => c == _cohortId),
                                                                 It.Is <ApproveCohortRequest>(r => r == _approveCohortApiRequest), It.IsAny <CancellationToken>()))
                .Returns(Task.CompletedTask);

                _linkGeneratorResult = autoFixture.Create <string>();

                linkGenerator.Setup(x => x.AccountsLink(It.IsAny <string>()))
                .Returns(_linkGeneratorResult);

                linkGenerator.Setup(x => x.CommitmentsLink(It.IsAny <string>()))
                .Returns(_linkGeneratorResult);

                _controller = new CohortController(_commitmentsApiClient.Object,
                                                   Mock.Of <ILogger <CohortController> >(),
                                                   linkGenerator.Object,
                                                   modelMapper.Object,
                                                   Mock.Of <IAuthorizationService>());
            }
Exemple #4
0
        public async Task Then_Returns_View_With_Correct_ViewModel(
            IndexRequest request,
            IndexViewModel viewModel,
            string organisationsLink,
            string schemesLink,
            [Frozen] Mock <IModelMapper> mockMapper,
            [Frozen] Mock <ILinkGenerator> mockLinkGenerator,
            CohortController controller)
        {
            mockMapper
            .Setup(mapper => mapper.Map <IndexViewModel>(request))
            .ReturnsAsync(viewModel);
            mockLinkGenerator
            .Setup(generator => generator.AccountsLink($"accounts/{request.AccountHashedId}/agreements"))
            .Returns(organisationsLink);
            mockLinkGenerator
            .Setup(generator => generator.AccountsLink($"accounts/{request.AccountHashedId}/schemes"))
            .Returns(schemesLink);

            var result = await controller.Index(request) as ViewResult;

            result.ViewName.Should().BeNull();
            var model = result.Model as IndexViewModel;

            model.Should().BeSameAs(viewModel);
        }
Exemple #5
0
 public WhenGettingFileUploadStartFixture()
 {
     _request = new SelectAddDraftApprenticeshipJourneyRequest {
         ProviderId = ProviderId
     };
     Sut = new CohortController(Mock.Of <IMediator>(), Mock.Of <IModelMapper>(), Mock.Of <ILinkGenerator>(), Mock.Of <ICommitmentsApiClient>(), Mock.Of <IFeatureTogglesService <ProviderFeatureToggle> >(), Mock.Of <IEncodingService>());
 }
Exemple #6
0
 public WhenPostingSelectAddDraftApprenticeshipJourneyFixture()
 {
     _viewModel = new SelectAddDraftApprenticeshipJourneyViewModel {
         ProviderId = ProviderId
     };
     Sut = new CohortController(Mock.Of <IMediator>(), Mock.Of <IModelMapper>(), Mock.Of <ILinkGenerator>(), Mock.Of <ICommitmentsApiClient>(), Mock.Of <IFeatureTogglesService <ProviderFeatureToggle> >(), Mock.Of <IEncodingService>());
 }
Exemple #7
0
        public PostConfirmEmployerFixture()
        {
            var fixture = new Fixture();

            _providerId = 123;
            _viewModel  = new ConfirmEmployerViewModel {
                ProviderId = _providerId, EmployerAccountLegalEntityPublicHashedId = "XYZ"
            };
            _commitmentApiClient = new Mock <ICommitmentsApiClient>();

            _emptyCohortRequest  = fixture.Create <CommitmentsV2.Api.Types.Requests.CreateEmptyCohortRequest>();
            _emptyCohortResponse = fixture.Create <CommitmentsV2.Api.Types.Responses.CreateCohortResponse>();

            _mockModelMapper = new Mock <IModelMapper>();
            _mockModelMapper
            .Setup(x => x.Map <CommitmentsV2.Api.Types.Requests.CreateEmptyCohortRequest>(_viewModel))
            .ReturnsAsync(_emptyCohortRequest);

            _commitmentApiClient
            .Setup(x => x.CreateCohort(_emptyCohortRequest, It.IsAny <CancellationToken>()))
            .ReturnsAsync(_emptyCohortResponse);

            RedirectUrl    = $"{_viewModel.ProviderId}/apprentices/{_emptyCohortResponse.CohortReference}/Details";
            _linkGenerator = new Mock <ILinkGenerator>();
            _linkGenerator.Setup(x => x.ProviderApprenticeshipServiceLink(RedirectUrl)).Returns(RedirectUrl);

            Sut = new CohortController(Mock.Of <IMediator>(), _mockModelMapper.Object, _linkGenerator.Object, _commitmentApiClient.Object);
        }
        public async Task ThenRedirectsToConfirmProvider(
            SelectProviderViewModel viewModel,
            long providerId,
            ValidationResult validationResult,
            [Frozen] Mock <IValidator <SelectProviderViewModel> > mockValidator,
            [Frozen] Mock <ICommitmentsApiClient> mockApiClient,
            [Frozen] Mock <IModelMapper> mockMapper,
            GetProviderResponse apiResponse,
            ConfirmProviderRequest confirmProviderRequest,
            [Greedy] CohortController controller)
        {
            var actionName = "ConfirmProvider";

            viewModel.ProviderId = providerId.ToString();
            mockValidator
            .Setup(x => x.Validate(viewModel))
            .Returns(validationResult);
            mockApiClient
            .Setup(x => x.GetProvider(long.Parse(viewModel.ProviderId), CancellationToken.None))
            .ReturnsAsync(apiResponse);
            mockMapper
            .Setup(x => x.Map <ConfirmProviderRequest>(viewModel))
            .ReturnsAsync(confirmProviderRequest);

            var result = await controller.SelectProvider(viewModel) as RedirectToActionResult;

            Assert.NotNull(result);
            Assert.AreEqual(actionName, result.ActionName);
        }
            public WhenGettingApprovalTestFixture()
            {
                var autoFixture = new Fixture();

                _request             = autoFixture.Create <ApprovedRequest>();
                _viewModel           = autoFixture.Create <ApprovedViewModel>();
                _viewModel.WithParty = Party.Provider;

                var modelMapper = new Mock <IModelMapper>();

                modelMapper.Setup(x => x.Map <ApprovedViewModel>(It.Is <ApprovedRequest>(r => r == _request)))
                .ReturnsAsync(_viewModel);

                _linkGeneratorResult = autoFixture.Create <string>();
                var linkGenerator = new Mock <ILinkGenerator>();

                linkGenerator.Setup(x => x.CommitmentsLink(It.IsAny <string>()))
                .Returns(_linkGeneratorResult);

                CohortController = new CohortController(Mock.Of <ICommitmentsApiClient>(),
                                                        Mock.Of <ILogger <CohortController> >(),
                                                        linkGenerator.Object,
                                                        modelMapper.Object,
                                                        Mock.Of <IAuthorizationService>());
            }
        public WhenGettingReadyForReviewFixture()
        {
            var autoFixture = new Fixture();

            _request   = autoFixture.Create <CohortsByAccountRequest>();
            _viewModel = autoFixture.Create <ReviewViewModel>();

            var modelMapper = new Mock <IModelMapper>();

            modelMapper.Setup(x => x.Map <ReviewViewModel>(It.Is <CohortsByAccountRequest>(r => r == _request)))
            .ReturnsAsync(_viewModel);

            _linkGeneratorResult = autoFixture.Create <string>();
            var linkGenerator = new Mock <ILinkGenerator>();

            linkGenerator.Setup(x => x.CommitmentsLink(It.IsAny <string>()))
            .Returns(_linkGeneratorResult);

            CohortController = new CohortController(Mock.Of <ICommitmentsApiClient>(),
                                                    Mock.Of <ILogger <CohortController> >(),
                                                    linkGenerator.Object,
                                                    modelMapper.Object,
                                                    Mock.Of <IAuthorizationService>(),
                                                    Mock.Of <IEncodingService>());
        }
        public CreateTestsFixture()
        {
            AutoFixture = new Fixture();
            Mediator    = new Mock <IMediator>();
            Controller  = new CohortController(Mediator.Object);
            Request     = AutoFixture.Create <CreateCohortRequest>();
            Result      = AutoFixture.Create <AddCohortResult>();

            Mediator
            .Setup(m => m.Send(It.Is <AddCohortCommand>(c =>
                                                        c.AccountId == Request.AccountId &&
                                                        c.AccountLegalEntityId == Request.AccountLegalEntityId &&
                                                        c.ProviderId == Request.ProviderId &&
                                                        c.CourseCode == Request.CourseCode &&
                                                        c.Cost == Request.Cost &&
                                                        c.StartDate == Request.StartDate &&
                                                        c.EndDate == Request.EndDate &&
                                                        c.OriginatorReference == Request.OriginatorReference &&
                                                        c.ReservationId == Request.ReservationId &&
                                                        c.FirstName == Request.FirstName &&
                                                        c.LastName == Request.LastName &&
                                                        c.DateOfBirth == Request.DateOfBirth &&
                                                        c.Uln == Request.Uln &&
                                                        c.TransferSenderId == Request.TransferSenderId &&
                                                        c.UserInfo == Request.UserInfo), CancellationToken.None))
            .ReturnsAsync(Result);
        }
Exemple #12
0
        public void And_Provider_Adding_Apprentices_Then_Redirect_To_Message(
            AssignViewModel viewModel,
            [Frozen] Mock <ITempDataProvider> tempDataProvider,
            [Greedy] CohortController controller)
        {
            var tempdata = new TempDataDictionary(new DefaultHttpContext(), tempDataProvider.Object);

            controller.TempData = tempdata;

            var expectedRouteValues = new RouteValueDictionary(new
            {
                viewModel.AccountHashedId,
                viewModel.AccountLegalEntityHashedId,
                viewModel.ReservationId,
                viewModel.StartMonthYear,
                viewModel.CourseCode,
                viewModel.ProviderId,
                viewModel.TransferSenderId,
                viewModel.EncodedPledgeApplicationId,
                Origin = viewModel.ReservationId.HasValue ? Origin.Reservations : Origin.Apprentices
            });

            viewModel.WhoIsAddingApprentices = WhoIsAddingApprentices.Provider;

            var result = controller.Assign(viewModel) as RedirectToActionResult;

            result.Should().NotBeNull();
            result.ActionName.Should().Be("Message");
            result.RouteValues.Should().BeEquivalentTo(expectedRouteValues);
        }
Exemple #13
0
        public void And_Provider_Adding_Apprentices_Then_Legal_Entity_Name_Stored_In_TempData(
            [Frozen] AssignViewModel viewModel,
            [Frozen] Mock <ITempDataProvider> tempDataProvider,
            [Frozen, Greedy] CohortController controller)
        {
            var tempdata = new TempDataDictionary(new DefaultHttpContext(), tempDataProvider.Object);

            controller.TempData = tempdata;
            var expectedRouteValues = new RouteValueDictionary(new
            {
                viewModel.AccountHashedId,
                viewModel.AccountLegalEntityHashedId,
                viewModel.ReservationId,
                viewModel.StartMonthYear,
                viewModel.CourseCode,
                viewModel.ProviderId,
                viewModel.TransferSenderId,
                Origin = viewModel.ReservationId.HasValue ? Origin.Reservations : Origin.Apprentices
            });

            viewModel.WhoIsAddingApprentices = WhoIsAddingApprentices.Provider;

            var result = controller.Assign(viewModel) as RedirectToActionResult;

            Assert.True(controller.TempData.Contains(new KeyValuePair <string, object>(nameof(viewModel.LegalEntityName), viewModel.LegalEntityName)));
        }
        public async Task And_Then_No_Cohort_Is_Returned_From_Mediator(
            long cohortId,
            [Greedy] CohortController controller)
        {
            var controllerResult = await controller.Get(cohortId) as NotFoundResult;

            controllerResult.StatusCode.Should().Be((int)HttpStatusCode.NotFound);
        }
        public WhenGettingACohortWithDraftApprenticeFixture()
        {
            _request     = new CreateCohortWithDraftApprenticeshipRequest();
            _viewModel   = new AddDraftApprenticeshipViewModel();
            _modelMapper = new Mock <IModelMapper>();
            _modelMapper.Setup(x => x.Map <AddDraftApprenticeshipViewModel>(_request)).ReturnsAsync(_viewModel);

            Sut = new CohortController(Mock.Of <IMediator>(), _modelMapper.Object, Mock.Of <ILinkGenerator>(), Mock.Of <ICommitmentsApiClient>());
        }
        public async Task ThenMapperIsCalled(
            [Frozen] Mock <IModelMapper> modelMapper,
            CohortsByAccountRequest request,
            CohortController controller)
        {
            await controller.Draft(request);

            modelMapper.Verify(x => x.Map <DraftViewModel>(request), Times.Once);
        }
        public WhenGettingChooseCohortFixture()
        {
            Request               = new ChooseCohortByProviderRequest();
            ModelMapperMock       = new Mock <IModelMapper>();
            ChooseCohortViewModel = new ChooseCohortViewModel();

            ModelMapperMock.Setup(x => x.Map <ChooseCohortViewModel>(Request)).ReturnsAsync(ChooseCohortViewModel);
            Sut = new CohortController(Mock.Of <IMediator>(), ModelMapperMock.Object, Mock.Of <ILinkGenerator>(), Mock.Of <ICommitmentsApiClient>(), Mock.Of <IFeatureTogglesService <ProviderFeatureToggle> >(), Mock.Of <IEncodingService>());
        }
        public async Task ThenMapsTheRequestToViewModel(
            SelectProviderRequest request,
            SelectProviderViewModel viewModel,
            [Frozen] Mock <IModelMapper> mockMapper,
            [Greedy] CohortController controller)
        {
            await controller.SelectProvider(request);

            mockMapper.Verify(x => x.Map <SelectProviderViewModel>(It.IsAny <SelectProviderRequest>()), Times.Once);
        }
            public DeleteTestsFixture()
            {
                AutoFixture = new Fixture();
                Mediator    = new Mock <IMediator>();
                Controller  = new CohortController(Mediator.Object);
                UserInfo    = AutoFixture.Create <UserInfo>();

                Mediator.Setup(m => m.Send(It.IsAny <DeleteCohortCommand>(), It.IsAny <CancellationToken>()))
                .ReturnsAsync(Unit.Value);
            }
 public WhenGettingSelectAddDraftApprenticeshipJourneyFixture()
 {
     _request = new SelectAddDraftApprenticeshipJourneyRequest {
         ProviderId = ProviderId
     };
     _featureToggleServiceMock = new Mock <IFeatureTogglesService <ProviderFeatureToggle> >();
     _featureToggleServiceMock.Setup(x => x.GetFeatureToggle(ProviderFeature.BulkUploadV2WithoutPrefix)).Returns(new ProviderFeatureToggle {
         IsEnabled = false
     });
     Sut = new CohortController(Mock.Of <IMediator>(), Mock.Of <IModelMapper>(), Mock.Of <ILinkGenerator>(), Mock.Of <ICommitmentsApiClient>(), _featureToggleServiceMock.Object, Mock.Of <IEncodingService>());
 }
Exemple #21
0
        public CohortController CreateController()
        {
            var controller = new CohortController(
                CommitmentsApiClient,
                Mock.Of <ILogger <CohortController> >(),
                LinkGenerator,
                ModelMapper,
                AuthorizationService
                );

            return(controller);
        }
Exemple #22
0
        public void And_Unknown_Adding_Apprentices_Then_Redirect_To_Error(
            AssignViewModel viewModel,
            [Greedy] CohortController controller)
        {
            viewModel.WhoIsAddingApprentices = (WhoIsAddingApprentices)55;

            var result = controller.Assign(viewModel) as RedirectToActionResult;

            result.Should().NotBeNull();
            result.ActionName.Should().Be("Error");
            result.ControllerName.Should().Be("Error");
        }
        public async Task ThenCallsApi(
            SelectProviderViewModel viewModel,
            long providerId,
            [Frozen] Mock <ICommitmentsApiClient> mockApiClient,
            GetProviderResponse apiResponse,
            [Greedy] CohortController controller)
        {
            viewModel.ProviderId = providerId.ToString();

            await controller.SelectProvider(viewModel);

            mockApiClient.Verify(x => x.GetProvider(providerId, CancellationToken.None), Times.Once);
        }
        public GetTestsFixture()
        {
            AutoFixture = new Fixture();
            Mediator    = new Mock <IMediator>();
            Controller  = new CohortController(Mediator.Object);

            GetCohortResult = AutoFixture.Create <GetCohortSummaryQueryResult>();
            Mediator.Setup(m => m.Send(It.Is <GetCohortSummaryQuery>(q => q.CohortId == CohortId), CancellationToken.None)).ReturnsAsync(GetCohortResult);

            GetCohortsRequest = AutoFixture.Build <GetCohortsRequest>().With(x => x.AccountId, AccountId).Create();
            GetCohortsResult  = AutoFixture.Create <GetCohortsResult>();
            Mediator.Setup(m => m.Send(It.Is <GetCohortsQuery>(q => q.AccountId == AccountId), CancellationToken.None)).ReturnsAsync(GetCohortsResult);
        }
Exemple #25
0
        public SendTestsFixture()
        {
            AutoFixture = new Fixture();
            Mediator    = new Mock <IMediator>();
            Controller  = new CohortController(Mediator.Object);
            Request     = AutoFixture.Create <SendCohortRequest>();

            Mediator.Setup(m => m.Send(It.Is <SendCohortCommand>(c =>
                                                                 c.CohortId == CohortId &&
                                                                 c.Message == Request.Message &&
                                                                 c.UserInfo == Request.UserInfo), CancellationToken.None))
            .ReturnsAsync(Unit.Value);
        }
Exemple #26
0
        public WhenGettingDeleteCohortFixture()
        {
            var fixture = new Fixture();

            _request         = fixture.Create <DeleteCohortRequest>();
            _modelMapperMock = new Mock <IModelMapper>();
            _viewModel       = fixture.Create <DeleteCohortViewModel>();

            _modelMapperMock
            .Setup(x => x.Map <DeleteCohortViewModel>(_request))
            .ReturnsAsync(_viewModel);

            Sut = new CohortController(Mock.Of <IMediator>(), _modelMapperMock.Object, Mock.Of <ILinkGenerator>(), Mock.Of <ICommitmentsApiClient>(), Mock.Of <IFeatureTogglesService <ProviderFeatureToggle> >(), Mock.Of <IEncodingService>());
        }
Exemple #27
0
            public WhenPostingDetailsFixture()
            {
                var autoFixture = new Fixture();

                var modelMapper = new Mock <IModelMapper>();

                _commitmentsApiClient       = new Mock <ICommitmentsApiClient>();
                _policyAuthorizationWrapper = new Mock <IPolicyAuthorizationWrapper>();
                var linkGenerator = new Mock <ILinkGenerator>();

                _cohortId   = autoFixture.Create <long>();
                _providerId = autoFixture.Create <long>();
                _accountLegalEntityHashedId = autoFixture.Create <string>();

                _viewModel = new DetailsViewModel
                {
                    CohortId   = _cohortId,
                    ProviderId = _providerId,
                    AccountLegalEntityHashedId = _accountLegalEntityHashedId
                };

                _sendCohortApiRequest    = new SendCohortRequest();
                _approveCohortApiRequest = new ApproveCohortRequest();

                modelMapper.Setup(x => x.Map <SendCohortRequest>(It.Is <DetailsViewModel>(vm => vm == _viewModel)))
                .ReturnsAsync(_sendCohortApiRequest);

                modelMapper.Setup(x => x.Map <ApproveCohortRequest>(It.Is <DetailsViewModel>(vm => vm == _viewModel)))
                .ReturnsAsync(_approveCohortApiRequest);

                _commitmentsApiClient.Setup(x => x.SendCohort(It.Is <long>(c => c == _cohortId),
                                                              It.Is <SendCohortRequest>(r => r == _sendCohortApiRequest), It.IsAny <CancellationToken>()))
                .Returns(Task.CompletedTask);

                _commitmentsApiClient.Setup(x => x.ApproveCohort(It.Is <long>(c => c == _cohortId),
                                                                 It.Is <ApproveCohortRequest>(r => r == _approveCohortApiRequest), It.IsAny <CancellationToken>()))
                .Returns(Task.CompletedTask);
                _policyAuthorizationWrapper.Setup(x => x.IsAuthorized(It.IsAny <System.Security.Claims.ClaimsPrincipal>(), It.IsAny <string>())).ReturnsAsync(true);

                _linkGeneratorResult = autoFixture.Create <string>();

                linkGenerator.Setup(x => x.ProviderApprenticeshipServiceLink(It.IsAny <string>()))
                .Returns(_linkGeneratorResult);

                _controller = new CohortController(Mock.Of <IMediator>(),
                                                   modelMapper.Object,
                                                   linkGenerator.Object,
                                                   _commitmentsApiClient.Object, Mock.Of <IFeatureTogglesService <ProviderFeatureToggle> >(), Mock.Of <IEncodingService>());
            }
        public async Task ThenReturnsView(
            SelectProviderRequest request,
            SelectProviderViewModel viewModel,
            [Frozen] Mock <IModelMapper> mockMapper,
            [Greedy] CohortController controller)
        {
            mockMapper
            .Setup(mapper => mapper.Map <SelectProviderViewModel>(request))
            .ReturnsAsync(viewModel);

            var result = await controller.SelectProvider(request) as ViewResult;

            Assert.Null(result.ViewName);
            Assert.AreSame(viewModel, result.Model);
        }
        public async Task ThenViewIsReturned(
            [Frozen] Mock <IModelMapper> modelMapper,
            CohortsByAccountRequest request,
            DraftViewModel viewModel,
            CohortController controller)
        {
            modelMapper
            .Setup(x => x.Map <DraftViewModel>(request))
            .ReturnsAsync(viewModel);

            var result = await controller.Draft(request) as ViewResult;

            Assert.NotNull(result);
            Assert.AreEqual(result.Model, viewModel);
        }
Exemple #30
0
        public void And_Employer_Adding_Apprentices_And_No_Reservation_Then_Redirect_To_Reservation_Selection(
            [Frozen] Mock <ILinkGenerator> linkGenerator,
            AssignViewModel viewModel,
            [Greedy] CohortController controller)
        {
            const string reservationsUrl = "RESERVATIONS-URL";

            linkGenerator.Setup(x => x.ReservationsLink(It.IsAny <string>())).Returns(reservationsUrl);
            viewModel.ReservationId          = null;
            viewModel.WhoIsAddingApprentices = WhoIsAddingApprentices.Employer;

            var result = controller.Assign(viewModel) as RedirectResult;

            result.Url.Should().Be(reservationsUrl);
        }