public void Filter_does_not_redirect_for_other_exception_types() { var exceptionContext = new ExceptionContext(_actionContext, new List <IFilterMetadata>()) { Exception = new NotImplementedException("Exception that we are not trappig"), Result = new Mock <IActionResult>().Object }; var filter = new ExternalApiExceptionFilter(); filter.OnException(exceptionContext); var redirectToActionResult = exceptionContext.Result as RedirectToActionResult; redirectToActionResult.Should().BeNull(); }
public void Filter_redirects_to_shutter_page_for_api_exceptions() { var exceptionContext = new ExceptionContext(_actionContext, new List <IFilterMetadata>()) { Exception = new ExternalApiException("Error calling API"), Result = new Mock <IActionResult>().Object }; var filter = new ExternalApiExceptionFilter(); filter.OnException(exceptionContext); var redirectToActionResult = exceptionContext.Result as RedirectToActionResult; redirectToActionResult.Should().NotBeNull(); redirectToActionResult.ActionName.Should().Be("ExternalApisUnavailable"); redirectToActionResult.ControllerName.Should().Be("RoatpShutterPage"); }