public void CanDeserializeSerializedInstanceWithValuesSet() { MockValidationSettings rwSettings = new MockValidationSettings(); DomainValidatorData rwValidatorData = new DomainValidatorData("validator1"); rwSettings.Validators.Add(rwValidatorData); rwValidatorData.Negated = true; rwValidatorData.Domain.Add(new DomainConfigurationElement("1")); rwValidatorData.Domain.Add(new DomainConfigurationElement("2")); rwValidatorData.Domain.Add(new DomainConfigurationElement("3")); 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(DomainValidator <object>), roSettings.Validators.Get(0).Type); Assert.AreEqual(true, ((DomainValidatorData)roSettings.Validators.Get(0)).Negated); Assert.AreEqual(3, ((DomainValidatorData)roSettings.Validators.Get(0)).Domain.Count); } }
/// <summary> /// Creates an instance of <see cref="DomainValidatorNode"/> based on runtime configuration data. /// </summary> /// <param name="validatorData">The corresponding runtime configuration data.</param> public DomainValidatorNode(DomainValidatorData validatorData) : base(validatorData) { foreach (DomainConfigurationElement domainConfigurationElement in validatorData.Domain) { domain.Add(new DomainValue(domainConfigurationElement.Name)); } }
/// <summary> /// Returns the runtime configuration data that is represented by this node. /// </summary> /// <returns>An instance of <see cref="DomainValidatorData"/> that can be persisted to a configuration file.</returns> public override ValidatorData CreateValidatorData() { DomainValidatorData validatorData = new DomainValidatorData(Name); SetValidatorBaseProperties(validatorData); SetValueValidatorBaseProperties(validatorData); foreach (DomainValue domainValue in Domain) { validatorData.Domain.Add(new DomainConfigurationElement(domainValue.Value)); } return(validatorData); }
public void CreatedNodeWithValidatorDataHasAppropriateValuesFromData() { DomainValidatorData validatorData = new DomainValidatorData("name"); validatorData.Negated = true; validatorData.Domain.Add(new DomainConfigurationElement("1")); validatorData.Domain.Add(new DomainConfigurationElement("2")); validatorData.Domain.Add(new DomainConfigurationElement("3")); DomainValidatorNode node = new DomainValidatorNode(validatorData); Assert.AreEqual("name", node.Name); Assert.AreEqual(true, node.Negated); Assert.AreEqual(3, node.Domain.Count); }
public void CreatedNodeHasAppropriateDefaultValues() { DomainValidatorNode node = new DomainValidatorNode(); DomainValidatorData validatorData = node.CreateValidatorData() as DomainValidatorData; Assert.IsNotNull(validatorData); Assert.AreEqual(Resources.DomainValidatorNodeName, validatorData.Name); Assert.AreEqual(false, validatorData.Negated); Assert.AreEqual(0, validatorData.Domain.Count); Assert.AreEqual(Resources.DomainValidatorNodeName, node.Name); Assert.AreEqual(false, node.Negated); Assert.AreEqual(0, node.Domain.Count); }
public void NodeCreatesValidatorDataWithValues() { DomainValidatorNode node = new DomainValidatorNode(); node.Name = "validator"; node.Negated = true; node.Domain.Add(new DomainValue("1")); node.Domain.Add(new DomainValue("2")); node.Domain.Add(new DomainValue("3")); DomainValidatorData validatorData = node.CreateValidatorData() as DomainValidatorData; Assert.IsNotNull(validatorData); Assert.AreEqual("validator", validatorData.Name); Assert.AreEqual(true, validatorData.Negated); Assert.AreEqual(3, validatorData.Domain.Count); }
public void CanCreateValidatorFromConfigurationObject() { DomainValidatorData rwValidatorData = new DomainValidatorData("validator1"); rwValidatorData.Negated = true; rwValidatorData.Domain.Add(new DomainConfigurationElement("1")); rwValidatorData.Domain.Add(new DomainConfigurationElement("2")); rwValidatorData.Domain.Add(new DomainConfigurationElement("3")); Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(null, null, null); Assert.IsNotNull(validator); Assert.AreSame(typeof(DomainValidator <object>), validator.GetType()); Assert.AreEqual(Resources.DomainNegatedDefaultMessageTemplate, validator.MessageTemplate); Assert.AreEqual(true, ((DomainValidator <object>)validator).Negated); Assert.AreEqual(3, ((DomainValidator <object>)validator).Domain.Count); Assert.IsTrue(typeof(string).Equals(((DomainValidator <object>)validator).Domain[0].GetType())); }
/// <summary> /// Returns the runtime configuration data that is represented by this node. /// </summary> /// <returns>An instance of <see cref="DomainValidatorData"/> that can be persisted to a configuration file.</returns> public override ValidatorData CreateValidatorData() { DomainValidatorData validatorData = new DomainValidatorData(Name); SetValidatorBaseProperties(validatorData); SetValueValidatorBaseProperties(validatorData); foreach (DomainValue domainValue in Domain) { validatorData.Domain.Add(new DomainConfigurationElement(domainValue.Value)); } return validatorData; }