public void ReturnsBadRequestOnInvalidModelStateWithOtherThanGetRequest() { // Arrange var filter = new ValidatorActionFilter(); var filterContext = ActionExecutingContextProvider.GetActionExecutingContext("POST"); filterContext.ModelState.AddModelError("Error", "An error has occured!"); // Act filter.OnActionExecuting(filterContext); // Assert filterContext.HttpContext.Response.StatusCode.ShouldBe((int)HttpStatusCode.BadRequest); }
public void ReturnsBadRequestOnInvalidModelStateWithGetRequest() { // Arrange var filter = new ValidatorActionFilter(); var filterContext = ActionExecutingContextProvider.GetActionExecutingContext("GET"); filterContext.ModelState.AddModelError("Error", "An error has occured!"); // Act filter.OnActionExecuting(filterContext); // Assert filterContext.Result.ShouldBeOfType <BadRequestResult>(); }
public void ResultContainsErrorMessagesInModelState() { // Arrange var filter = new ValidatorActionFilter(); var filterContext = ActionExecutingContextProvider.GetActionExecutingContext("POST"); Dictionary <string, CustomModelStateEntry> errorsToExpect = ArrangeExpectedErrors(filterContext); // Act filter.OnActionExecuting(filterContext); // Assert var contentResult = filterContext.Result as ContentResult; contentResult.ShouldNotBeNull(); contentResult.ContentType.ShouldBe("application/json"); AssertThatReturnedErrorsMatchExpected(errorsToExpect, contentResult); }