Ejemplo n.º 1
0
        public async Task TransferFundedCohortsAllowStandardCoursesOnlyWhenEmployerIsLevy()
        {
            _source.TransferSenderId = "test";
            _result = await _mapper.Map(TestHelper.Clone(_source));

            _result.Courses.Should().BeEquivalentTo(_standardTrainingProgrammes);
        }
        public async Task Arrange()
        {
            var fixture = new Fixture();

            var birthDate = fixture.Create <DateTime?>();
            var startDate = fixture.Create <DateTime?>();
            var endDate   = fixture.Create <DateTime?>();

            _mapper = new CreateCohortRequestMapper();

            _source = fixture.Build <ApprenticeViewModel>()
                      .With(x => x.BirthDay, birthDate?.Day)
                      .With(x => x.BirthMonth, birthDate?.Month)
                      .With(x => x.BirthYear, birthDate?.Year)
                      .With(x => x.Cost, birthDate?.Year)
                      .With(x => x.EndMonth, endDate?.Month)
                      .With(x => x.EndYear, endDate?.Year)
                      .With(x => x.StartMonth, startDate?.Month)
                      .With(x => x.StartYear, startDate?.Year)
                      .Without(x => x.StartDate)
                      .Without(x => x.Courses)
                      .Create();

            _result = await _mapper.Map(TestHelper.Clone(_source));
        }
Ejemplo n.º 3
0
 public CreateCohortWithDraftApprenticeshipControllerTestFixtures ForPostRequest()
 {
     PostRequest = new ApprenticeViewModel {
         ProviderId = 1
     };
     return(this);
 }
        public void Validate_FinishDate_ShouldBeValidated(int?month, int?year, bool expectedValid)
        {
            var model = new ApprenticeViewModel {
                EndMonth = month, EndYear = year
            };

            AssertValidationResult(request => request.EndDate, model, expectedValid);
        }
        public void Validate_StartDate_ShouldBeValidated(int?month, int?year, bool expectedValid)
        {
            var model = new ApprenticeViewModel {
                StartMonth = month, StartYear = year
            };

            AssertValidationResult(request => request.StartDate, model, expectedValid);
        }
        public void Validate_DoB_ShouldBeValidated(int?day, int?month, int?year, bool expectedValid)
        {
            var model = new ApprenticeViewModel {
                BirthDay = day, BirthMonth = month, BirthYear = year
            };

            AssertValidationResult(request => request.DateOfBirth, model, expectedValid);
        }
Ejemplo n.º 7
0
        public async Task NonLevyCohortsAllowStandardCoursesOnlyRegardlessOfTransferStatus(string transferSenderId)
        {
            _source.TransferSenderId = transferSenderId;
            _accountLegalEntityResponse.LevyStatus = ApprenticeshipEmployerType.NonLevy;
            _result = await _mapper.Map(TestHelper.Clone(_source));

            _result.Courses.Should().BeEquivalentTo(_standardTrainingProgrammes);
        }
        public async Task <IActionResult> Apprentice(ApprenticeViewModel model)
        {
            var request = await _modelMapper.Map <CreateCohortRequest>(model);

            var newCohort = await _commitmentsApiClient.CreateCohort(request);

            return(RedirectToAction("Details", new { model.AccountHashedId, newCohort.CohortReference }));
        }
        public AttachUserInfoToSaveRequestsTestsFixture()
        {
            var autoFixture = new Fixture();

            AuthenticationServiceMock = new Mock <IAuthenticationService>();
            InputViewModel            = new ApprenticeViewModel();
            InputDetails = new EditDraftApprenticeshipDetails();
            UserInfo     = new UserInfo();

            SaveRequestMapper    = new AttachUserInfoToSaveRequests <ApprenticeViewModel, CreateCohortRequest>(new CreateCohortRequestMapper(), AuthenticationServiceMock.Object);
            NonSaveRequestMapper = new AttachUserInfoToSaveRequests <EditDraftApprenticeshipDetails, EditDraftApprenticeshipViewModel>(new EditDraftApprenticeshipViewModelMapper(), AuthenticationServiceMock.Object);
        }
Ejemplo n.º 10
0
        public async Task Arrange()
        {
            var autoFixture = new Fixture();

            _course                     = autoFixture.Create <TrainingProgramme>();
            _courseStandard             = autoFixture.Create <TrainingProgramme>();
            _providerResponse           = autoFixture.Create <GetProviderResponse>();
            _accountLegalEntityResponse = autoFixture.Build <AccountLegalEntityResponse>().With(x => x.LevyStatus, ApprenticeshipEmployerType.Levy).Create();
            _source                     = autoFixture.Create <ApprenticeRequest>();
            _source.StartMonthYear      = "062020";
            _source.TransferSenderId    = string.Empty;
            _source.AccountId           = 12345;

            _commitmentsApiClient = new Mock <ICommitmentsApiClient>();
            _commitmentsApiClient.Setup(x => x.GetProvider(It.IsAny <long>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(_providerResponse);
            _commitmentsApiClient.Setup(x => x.GetAccountLegalEntity(_source.AccountLegalEntityId, It.IsAny <CancellationToken>()))
            .ReturnsAsync(_accountLegalEntityResponse);
            _standardTrainingProgrammes = new List <TrainingProgramme> {
                _courseStandard
            };
            _commitmentsApiClient
            .Setup(x => x.GetAllTrainingProgrammeStandards(It.IsAny <CancellationToken>()))
            .ReturnsAsync(new GetAllTrainingProgrammeStandardsResponse
            {
                TrainingProgrammes = _standardTrainingProgrammes
            });
            _allTrainingProgrammes = new List <TrainingProgramme> {
                _courseStandard, _course
            };
            _commitmentsApiClient
            .Setup(x => x.GetAllTrainingProgrammes(It.IsAny <CancellationToken>()))
            .ReturnsAsync(new GetAllTrainingProgrammesResponse
            {
                TrainingProgrammes = _allTrainingProgrammes
            });


            _mapper = new ApprenticeViewModelMapper(
                _commitmentsApiClient.Object);

            _result = await _mapper.Map(TestHelper.Clone(_source));
        }
Ejemplo n.º 11
0
        public async Task <IActionResult> Apprentice(ApprenticeViewModel model)
        {
            var request = await _modelMapper.Map <CreateCohortRequest>(model);

            var newCohort = await _commitmentsApiClient.CreateCohort(request);

            var draftApprenticeshipsResponse = await _commitmentsApiClient.GetDraftApprenticeships(newCohort.CohortId);

            var draftApprenticeship = draftApprenticeshipsResponse.DraftApprenticeships.SingleOrDefault();

            if (draftApprenticeship?.CourseCode != null)
            {
                var draftApprenticeshipHashedId = _encodingService.Encode(draftApprenticeship.Id, EncodingType.ApprenticeshipId);

                return(RedirectToAction("SelectOption", "DraftApprenticeship", new { model.AccountHashedId, newCohort.CohortReference, draftApprenticeshipHashedId }));
            }

            return(RedirectToAction("Details", new { model.AccountHashedId, newCohort.CohortReference }));
        }
        private void AssertValidationResult <T>(Expression <Func <ApprenticeViewModel, T> > property, ApprenticeViewModel instance, bool expectedValid)
        {
            var validator = new ApprenticeViewModelValidator();

            if (expectedValid)
            {
                validator.ShouldNotHaveValidationErrorFor(property, instance);
            }
            else
            {
                validator.ShouldHaveValidationErrorFor(property, instance);
            }
        }