public void ValidateCorrectly()
        {
            //--Arrange
            var model = new ModelWithRangeFieldWithoutCustomErrorMessage
            {
                MultipleWordedField = 1
            };
            var validationContext = new ValidationContext(model, null, null);
            var result            = new List <ValidationResult>();

            //--Act
            var valid = Validator.TryValidateObject(model, validationContext, result, true);

            //--Assert
            valid.ShouldBeTrue();
            result.Count.ShouldBe(0);
        }
        public void UseSnakeCaseInDefaultErrorMessageWhenSet()
        {
            //--Arrange
            var model = new ModelWithRangeFieldWithoutCustomErrorMessage
            {
                MultipleWordedField = 0
            };
            var validationContext = new ValidationContext(model, null, null);
            var result            = new List <ValidationResult>();

            FormatResponseMessage.SetSnakeCaseSetting(true);

            //--Act
            var valid = Validator.TryValidateObject(model, validationContext, result, true);

            //--Assert
            valid.ShouldBeFalse();
            result.Count.ShouldBe(1);
            const string defaultErrorMsg = "The value of the 'multiple_worded_field' field must be between '1' and '4'.";

            result[0].ErrorMessage
            .ShouldBe(ModelStateCustomErrorMessage.Create(1, defaultErrorMsg));
        }