public async Task GetOutcome_returns_applications_view_when_oversight_status_is_successful_or_unsuccessful(OversightReviewStatus status) { _oversightOrchestrator.Setup(x => x.GetOversightDetailsViewModel(_applicationDetailsApplicationId, null)).Throws <InvalidStateException>(); var request = new OutcomeRequest { ApplicationId = _applicationDetailsApplicationId }; var result = await _controller.Outcome(request) as RedirectToActionResult; Assert.That(result, Is.Not.Null); Assert.That(result.ActionName, Is.EqualTo("Applications")); }
public async Task <IActionResult> Outcome(OutcomeRequest request) { try { var vm = await _oversightOrchestrator.GetOversightDetailsViewModel(request.ApplicationId, request.OutcomeKey); return(View(vm)); } catch (InvalidStateException) { return(RedirectToAction("Applications")); } }
public async Task GetOutcome_returns_view_with_expected_viewModel() { var viewModel = new OutcomeDetailsViewModel { ApplicationSummary = new ApplicationSummaryViewModel { ApplicationId = _applicationDetailsApplicationId } }; _oversightOrchestrator.Setup(x => x.GetOversightDetailsViewModel(_applicationDetailsApplicationId, null)).ReturnsAsync(viewModel); var request = new OutcomeRequest { ApplicationId = _applicationDetailsApplicationId }; var result = await _controller.Outcome(request) as ViewResult; var actualViewModel = result?.Model as OutcomeDetailsViewModel; Assert.That(result, Is.Not.Null); Assert.That(actualViewModel, Is.Not.Null); Assert.That(actualViewModel, Is.SameAs(viewModel)); Assert.AreEqual(_applicationDetailsApplicationId, actualViewModel.ApplicationSummary.ApplicationId); }