public void Validation_Message_Is_Correct()
        {
            //Act
            var message = new NameValidationAttribute().FormatErrorMessage("PuppyDog");

            //Assert
            Assert.AreEqual("The first letter of each word must be capitalized for field PuppyDog", message);
        }
        public void IsValid_Checks_For_Capitalization(string toValidate, bool validated)
        {
            //Arrange
            var validator = new NameValidationAttribute();

            //Act
            var valid = validator.IsValid(toValidate);

            //Assert
            Assert.AreEqual(validated, valid);
        }
        public void GetClientValidationRules_Returns_Correct_Entry()
        {
            //Act
            var rules = new NameValidationAttribute().GetClientValidationRules(null, null);

            //Assert
            Assert.AreEqual(1, rules.Count());
            var rule = rules.SingleOrDefault();
            Assert.IsInstanceOfType<ModelClientNameValidationRule>(rule);
            Assert.AreEqual("The first letter of each word must be capitalized for this field", rule.ErrorMessage);
            Assert.AreEqual(1, rule.ValidationParameters.Count);
            Assert.AreEqual(NameValidationAttribute.CapsRegex, rule.ValidationParameters.SingleOrDefault().Value);
        }