Beispiel #1
0
        public void EmailAddressFieldValidator_WithLavaAllowedAndMultipleAddressesDisallowedAndLavaContainsComma_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                LavaIsAllowed = true, MultipleAddressesAreAllowed = false
            };

            var result = validator.Validate("{{ Person.Email | Remove:',' }}");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #2
0
        public void EmailAddressFieldValidator_WithLavaAllowedAndMultipleAddressesDisallowedAndContainsLavaBlock_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                LavaIsAllowed = true, MultipleAddressesAreAllowed = false
            };

            var result = validator.Validate("{% if CurrentPerson.Email contains 'fakeinbox.com' %}fake_{{ CurrentPerson.Email }}{% else %}[email protected]{% endif %}");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #3
0
        public void EmailAddressFieldValidator_WithLavaAllowedAndMultipleAddressesDisallowedAndContainsTwoAddresses_IsInvalid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                LavaIsAllowed = true, MultipleAddressesAreAllowed = false
            };

            var result = validator.Validate(" [email protected], {{ Person.Email | Remove:',' }}, [email protected] ");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.InvalidMultipleAddressesNotAllowed, result);
        }
Beispiel #4
0
        public void EmailAddressFieldValidator_WithLavaAllowedAndHasNoLavaContent_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                LavaIsAllowed = true, MultipleAddressesAreAllowed = false
            };

            var result = validator.Validate("*****@*****.**");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #5
0
        public void EmailAddressFieldValidator_WithLavaAllowedAndMixedContent_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                LavaIsAllowed = true, MultipleAddressesAreAllowed = true
            };

            var result = validator.Validate("[email protected], {{CurrentPerson.Email}}, [email protected], {% if CurrentPerson.Email contains '@rocksolid.church' %}{{ CurrentPerson.Email }}{% endif %}, [email protected], {[ myemailshortcode ]}");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #6
0
        public void EmailAddressFieldValidator_WithLavaAllowedAndHasLavaContent_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                LavaIsAllowed = true, MultipleAddressesAreAllowed = false
            };

            var result = validator.Validate("{% if CurrentPerson.Email contains 'rocksolid.org' %}{{ CurrentPerson.Email }}{% endif %}");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #7
0
        public void EmailAddressFieldValidator_WithSingleAddressContainingHyphen_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                LavaIsAllowed = true, MultipleAddressesAreAllowed = false
            };

            var result = validator.Validate("*****@*****.**");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #8
0
        public void EmailAddressFieldValidator_WithSingleAddressHavingExternalWhitespace_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                MultipleAddressesAreAllowed = false
            };

            var result = validator.Validate("  [email protected]   ");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #9
0
        public void EmailAddressFieldValidator_WithMultipleAddressesAllowedAndContainsTwoAddresses_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                MultipleAddressesAreAllowed = true
            };

            var result = validator.Validate("[email protected], [email protected]");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #10
0
        public void EmailAddressFieldValidator_WithLavaAllowedAndContainsShortcode_IsValid()
        {
            var validator = new EmailAddressFieldValidator()
            {
                LavaIsAllowed = true, MultipleAddressesAreAllowed = false
            };

            var result = validator.Validate("{[ mycustomemailshortcode ]}");

            Assert.AreEqual(EmailFieldValidationResultSpecifier.Valid, result);
        }
Beispiel #11
0
        /// <summary>
        /// Tests the value to ensure that it is a valid value.  If not, message will indicate why
        /// </summary>
        /// <param name="value"></param>
        /// <param name="required"></param>
        /// <param name="message"></param>
        /// <returns></returns>
        public override bool IsValid(string value, bool required, out string message)
        {
            if (!string.IsNullOrWhiteSpace(value))
            {
                var result = EmailAddressFieldValidator.Validate(value, allowMultipleAddresses: false, allowLava: false);

                if (result == EmailFieldValidationResultSpecifier.Valid)
                {
                    message = "The email address provided is valid.";
                    return(true);
                }
            }

            return(base.IsValid(value, required, out message));
        }