public DeleteDraftApprenticeshipTestsFixture WithDeleteDraftApprenticeshipViewModel(bool confirmDelete) { DeleteDraftApprenticeshipViewModel = new DeleteDraftApprenticeshipViewModel { AccountHashedId = AccountHashedId, CohortId = CohortId, DraftApprenticeshipId = DraftApprenticeshipId, Origin = DeleteDraftApprenticeshipOrigin.EditDraftApprenticeship, ConfirmDelete = confirmDelete, DraftApprenticeshipHashedId = DraftApprenticeshipHashedId, CohortReference = CohortReference }; return(this); }
public DeleteDraftApprenticeshipTestsFixture() { var fixture = new AutoFixture.Fixture(); CommitmentApiClient = new Mock <ICommitmentsApiClient>(); CommitmentApiClient.Setup(x => x.GetCohort(It.IsAny <long>(), It.IsAny <CancellationToken>())).ReturnsAsync(new GetCohortResponse()); var deleteDraftApprenticeshipViewModel = new DeleteDraftApprenticeshipViewModel { FirstName = "John", LastName = "Jack", CohortId = CohortId, DraftApprenticeshipHashedId = DraftApprenticeshipHashedId, AccountHashedId = AccountHashedId, }; ModelMapperMock = new Mock <IModelMapper>(); ModelMapperMock.Setup(x => x.Map <DeleteDraftApprenticeshipViewModel>(It.IsAny <DeleteApprenticeshipRequest>())) .ReturnsAsync(deleteDraftApprenticeshipViewModel); AuthorizationServiceMock = new Mock <IAuthorizationService>(); Sut = new DraftApprenticeshipController( ModelMapperMock.Object, CommitmentApiClient.Object, AuthorizationServiceMock.Object); Sut.TempData = new Mock <ITempDataDictionary>().Object; }
private async Task <IActionResult> RedirectToCohortDetailsOrCohortsPage(DeleteDraftApprenticeshipViewModel model) { if (await CohortExists(model.CohortId)) { return(RedirectToAction("Details", "Cohort", new { model.AccountHashedId, model.CohortReference })); } return(RedirectToAction("Review", "Cohort", new { model.AccountHashedId })); }
public void ThenConfirmDeleteIsValidated(bool?confirmDeleteValue, bool expectedValid) { var model = new DeleteDraftApprenticeshipViewModel() { ConfirmDelete = confirmDeleteValue }; AssertValidationResult(x => x.ConfirmDelete, model, expectedValid); }
public async Task <IActionResult> DeleteDraftApprenticeship(DeleteDraftApprenticeshipViewModel model) { if (model.ConfirmDelete.Value) { var request = await _modelMapper.Map <DeleteDraftApprenticeshipRequest>(model); await _commitmentsApiClient.DeleteDraftApprenticeship(model.CohortId.Value, model.DraftApprenticeshipId.Value, request); TempData.AddFlashMessage(ApprenticeDeletedMessage, ITempDataDictionaryExtensions.FlashMessageLevel.Success); return(await RedirectToCohortDetailsOrCohortsPage(model)); } return(RedirectToOriginForDelete(model.Origin, model.AccountHashedId, model.CohortReference, model.DraftApprenticeshipHashedId)); }
private void AssertValidationResult <T>(Expression <Func <DeleteDraftApprenticeshipViewModel, T> > property, DeleteDraftApprenticeshipViewModel instance, bool expectedValid) { var validator = new DeleteDraftApprenticeshipViewModelValidator(); if (expectedValid) { validator.ShouldNotHaveValidationErrorFor(property, instance); } else { validator.ShouldHaveValidationErrorFor(property, instance); } }