public void WhenErrorSummaryInvoked_TheViewModelIsUpdated(string key, string value) { var values = new Dictionary <string, string>() { { key, value } }; var component = new ErrorSummary(); component.ViewComponentContext = ViewComponentTestHelper.GetViewComponentContext(); ViewViewComponentResult result = component.Invoke(values) as ViewViewComponentResult; ErrorSummaryModel resultModel = (ErrorSummaryModel)result.ViewData.Model; //Assert value.Should().Be(ViewComponentTestHelper.GetPropertyValue(resultModel, key)); }
public virtual ActionResult Error(ErrorHandlingModel error) { Response.TrySkipIisCustomErrors = true; var model = new ErrorSummaryModel(); switch (error.HttpCode) { case HttpStatusCode.Forbidden: Response.StatusCode = model.ErrorNum = 403; model.Heading = Resources.Error_Error_403; model.Message = Resources.Error_Error_403Description; break; case HttpStatusCode.NotFound: Response.StatusCode = model.ErrorNum = 404; model.Heading = Resources.Error_Error_404; model.Message = Resources.Error_Error_404Description; if (!string.IsNullOrEmpty(error.ErrorMessage) && !error.ErrorMessage.Contains(@"System.Web.HttpException")) { model.ErrorMessage = error.ErrorMessage; } break; default: Response.StatusCode = model.ErrorNum = 500; model.Heading = Resources.Error_Error_500; model.Message = Resources.Error_Error_500Description; break; } if (error.IsAjaxRequest) { return(Json(model, JsonRequestBehavior.AllowGet)); } return(View(Views.Error, model)); }