コード例 #1
0
        private static IConfigurationSource GetNotNullValidationConfig()
        {
            var validatorData = new NotNullValidatorData()
            {
                Name            = "Not Null",
                MessageTemplate = "City cannot be null"
            };

            var fieldRef = new ValidatedFieldReference()
            {
                Name = "City"
            };

            fieldRef.Validators.Add(validatorData);

            var rulesetData = new ValidationRulesetData("default");

            rulesetData.Fields.Add(fieldRef);

            var typeData = new ValidatedTypeReference(typeof(TargetAddress));

            typeData.Rulesets.Add(rulesetData);
            typeData.DefaultRuleset = rulesetData.Name;

            var section = new ValidationSettings();

            section.Types.Add(typeData);

            var configSource = new DictionaryConfigurationSource();

            configSource.Add(BlockSectionNames.Validation, section);
            return(configSource);
        }
コード例 #2
0
        /// <summary>
        /// Returns the runtime configuration data that is represented by this node.
        /// </summary>
        /// <returns>An instance of <see cref="NotNullValidatorData"/> that can be persisted to a configuration file.</returns>
        public override ValidatorData CreateValidatorData()
        {
            NotNullValidatorData validatorData = new NotNullValidatorData(Name);
            SetValidatorBaseProperties(validatorData);
            SetValueValidatorBaseProperties(validatorData);

            return validatorData;
        }
コード例 #3
0
        /// <summary>
        /// Returns the runtime configuration data that is represented by this node.
        /// </summary>
        /// <returns>An instance of <see cref="NotNullValidatorData"/> that can be persisted to a configuration file.</returns>
        public override ValidatorData CreateValidatorData()
        {
            NotNullValidatorData validatorData = new NotNullValidatorData(Name);

            SetValidatorBaseProperties(validatorData);
            SetValueValidatorBaseProperties(validatorData);

            return(validatorData);
        }
コード例 #4
0
        public void CanCreateValidatorFromConfigurationObject()
        {
            NotNullValidatorData rwValidatorData = new NotNullValidatorData("validator1");

            Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(null, null, null, null);

            Assert.IsNotNull(validator);
            Assert.AreSame(typeof(NotNullValidator), validator.GetType());
            Assert.AreEqual(Resources.NonNullNonNegatedValidatorDefaultMessageTemplate, ((NotNullValidator)validator).MessageTemplate);
            Assert.AreEqual(false, ((NotNullValidator)validator).Negated);
        }
コード例 #5
0
        public void CreatedNodeWithValidatorDataHasAppropriateValuesFromData()
        {
            NotNullValidatorData validatorData = new NotNullValidatorData("name");

            validatorData.Negated = true;

            NotNullValidatorNode node = new NotNullValidatorNode(validatorData);

            Assert.AreEqual("name", node.Name);
            Assert.AreEqual(true, node.Negated);
        }
コード例 #6
0
        public void CanCreateValidatorFromConfigurationObjectWithMessageTemplateOverride()
        {
            NotNullValidatorData rwValidatorData = new NotNullValidatorData("validator1");

            rwValidatorData.MessageTemplate = "message template override";

            Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(null, null, null, null);

            Assert.IsNotNull(validator);
            Assert.AreSame(typeof(NotNullValidator), validator.GetType());
            Assert.AreEqual("message template override", ((NotNullValidator)validator).MessageTemplate);
        }
コード例 #7
0
        public void NodeCreatesValidatorDataWithValues()
        {
            NotNullValidatorNode node = new NotNullValidatorNode();

            node.Name    = "validator";
            node.Negated = true;

            NotNullValidatorData validatorData = node.CreateValidatorData() as NotNullValidatorData;

            Assert.IsNotNull(validatorData);
            Assert.AreEqual("validator", validatorData.Name);
            Assert.AreEqual(true, validatorData.Negated);
        }
コード例 #8
0
        public void CreatedNodeHasAppropriateDefaultValues()
        {
            NotNullValidatorNode node = new NotNullValidatorNode();

            NotNullValidatorData validatorData = node.CreateValidatorData() as NotNullValidatorData;

            Assert.IsNotNull(validatorData);
            Assert.AreEqual(Resources.NotNullValidatorNodeName, validatorData.Name);
            Assert.AreEqual(false, validatorData.Negated);

            Assert.AreEqual(Resources.NotNullValidatorNodeName, node.Name);
            Assert.AreEqual(false, node.Negated);
        }
コード例 #9
0
        public void CanDeserializeSerializedInstance()
        {
            MockValidationSettings rwSettings      = new MockValidationSettings();
            ValidatorData          rwValidatorData = new NotNullValidatorData("validator1");

            rwSettings.Validators.Add(rwValidatorData);

            IDictionary <string, ConfigurationSection> sections = new Dictionary <string, ConfigurationSection>();

            sections[ValidationSettings.SectionName] = rwSettings;

            using (ConfigurationFileHelper configurationFileHelper = new ConfigurationFileHelper(sections))
            {
                IConfigurationSource configurationSource = configurationFileHelper.ConfigurationSource;

                MockValidationSettings roSettings = configurationSource.GetSection(ValidationSettings.SectionName) as MockValidationSettings;

                Assert.IsNotNull(roSettings);
                Assert.AreEqual(1, roSettings.Validators.Count);
                Assert.AreEqual("validator1", roSettings.Validators.Get(0).Name);
                Assert.AreSame(typeof(NotNullValidator), roSettings.Validators.Get(0).Type);
            }
        }
コード例 #10
0
 /// <summary>
 /// Creates an instance of <see cref="NotNullValidatorNode"/> based on runtime configuration data.
 /// </summary>
 /// <param name="validatorData">The corresponding runtime configuration data.</param>
 public NotNullValidatorNode(NotNullValidatorData validatorData)
     : base(validatorData)
 {
 }
コード例 #11
0
 /// <summary>
 /// Creates an instance of <see cref="NotNullValidatorNode"/> based on runtime configuration data.
 /// </summary>
 /// <param name="validatorData">The corresponding runtime configuration data.</param>
 public NotNullValidatorNode(NotNullValidatorData validatorData)
     : base(validatorData)
 {
 }