示例#1
0
        public void ShouldReturnBadRequestWhenThereAreModelStateErrros(Dictionary <string, string> errors)
        {
            // Arrange
            var context = FilterContextProvider.GetActionExecutingContext("POST");

            foreach (var e in errors)
            {
                context.ModelState.AddModelError(e.Key, e.Value);
            }

            var filter = new ModelStateFilter();

            // Act
            filter.OnActionExecuting(context);

            // Assert
            var result = context.Result.ShouldBeOfType <BadRequestObjectResult>();
            var error  = result.Value.ShouldBeOfType <Error>();

            var expectedErrorMessages = errors
                                        .Select(e => e.Value)
                                        .ToArray();

            error.Messages.ShouldAllBe(e => expectedErrorMessages.Contains(e));
        }
示例#2
0
        public void ShouldDoNothingWhenThereAreNoModelStateErrors()
        {
            // Arrange
            var context = FilterContextProvider.GetActionExecutingContext("POST");

            // Purposefully not adding any errors
            var filter = new ModelStateFilter();

            // Act
            filter.OnActionExecuting(context);

            // Assert
            context.Result.ShouldNotBeOfType <BadRequestObjectResult>();
        }