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)); }
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); }
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); }
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)); }
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); } }