public IActionResult Save(AssessmentSaveRequestViewModel viewModel) { if (viewModel == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(View(viewModel)); } if (viewModel.AssessmentReturnTypeId == AssessmentReturnType.Email) { return(RedirectTo("assessment/email")); } else if (viewModel.AssessmentReturnTypeId == AssessmentReturnType.Reference) { return(RedirectTo("assessment/reference")); } else { return(View()); } }
public void NullViewModelReturnsBadRequest() { AssessmentSaveRequestViewModel viewModel = null; var actionResponse = AssessmentController.Save(viewModel); Assert.IsType <BadRequestResult>(actionResponse); }
public void WhenReturnOptionsIsEmailRedirectsToCorrectReturnType(AssessmentReturnType assessmentReturnType, string expectedRedirectAddress) { var viewModel = new AssessmentSaveRequestViewModel() { AssessmentReturnTypeId = assessmentReturnType }; var actionResponse = AssessmentController.Save(viewModel); Assert.IsType <RedirectResult>(actionResponse); var redirectResult = actionResponse as RedirectResult; Assert.Equal($"~/{RouteName.Prefix}/{expectedRedirectAddress}", redirectResult.Url); }