public void CanDeserializeSerializedInstanceWithValuesSet() { MockValidationSettings rwSettings = new MockValidationSettings(); RangeValidatorData rwValidatorData = new RangeValidatorData("validator1"); rwSettings.Validators.Add(rwValidatorData); rwValidatorData.Negated = true; rwValidatorData.Culture = CultureInfo.GetCultureInfo("nl-NL"); rwValidatorData.LowerBound = "12"; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = "24"; rwValidatorData.UpperBoundType = RangeBoundaryType.Inclusive; 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(RangeValidator), roSettings.Validators.Get(0).Type); Assert.AreEqual(true, ((RangeValidatorData)roSettings.Validators.Get(0)).Negated); Assert.AreEqual("12", ((RangeValidatorData)roSettings.Validators.Get(0)).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((RangeValidatorData)roSettings.Validators.Get(0)).LowerBoundType); Assert.AreEqual("24", ((RangeValidatorData)roSettings.Validators.Get(0)).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((RangeValidatorData)roSettings.Validators.Get(0)).UpperBoundType); Assert.AreEqual(CultureInfo.GetCultureInfo("nl-NL"), rwValidatorData.Culture); } }
public void CanDeserializeSerializedInstanceWithValuesSet() { MockValidationSettings rwSettings = new MockValidationSettings(); RangeValidatorData rwValidatorData = new RangeValidatorData("validator1"); rwSettings.Validators.Add(rwValidatorData); rwValidatorData.Negated = true; rwValidatorData.Culture = CultureInfo.GetCultureInfo("nl-NL"); rwValidatorData.LowerBound = "12"; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = "24"; rwValidatorData.UpperBoundType = RangeBoundaryType.Inclusive; 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(RangeValidator), roSettings.Validators.Get(0).Type); Assert.AreEqual(true, ((RangeValidatorData)roSettings.Validators.Get(0)).Negated); Assert.AreEqual("12", ((RangeValidatorData)roSettings.Validators.Get(0)).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((RangeValidatorData)roSettings.Validators.Get(0)).LowerBoundType); Assert.AreEqual("24", ((RangeValidatorData)roSettings.Validators.Get(0)).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((RangeValidatorData)roSettings.Validators.Get(0)).UpperBoundType); Assert.AreEqual(CultureInfo.GetCultureInfo("nl-NL"), rwValidatorData.Culture); } }
/// <summary> /// Creates an instance of <see cref="RangeValidatorNodeBase{T}"/> based on runtime configuration data. /// </summary> /// <param name="validatorData">The corresponding runtime configuration data.</param> protected RangeValidatorNodeBase(RangeValidatorData <T> validatorData) : base(validatorData) { lowerBound = validatorData.LowerBound; lowerBoundType = validatorData.LowerBoundType; upperBound = validatorData.UpperBound; upperBoundType = validatorData.UpperBoundType; }
/// <summary> /// Returns the runtime configuration data that is represented by this node. /// </summary> /// <returns>An instance of <see cref="RangeValidatorData"/> that can be persisted to a configuration file.</returns> public override ValidatorData CreateValidatorData() { RangeValidatorData validatorData = new RangeValidatorData(Name); SetRangeValidatorBaseProperties(validatorData); SetValueValidatorBaseProperties(validatorData); return(validatorData); }
/// <summary> /// Copies properties declared on this node to a runtime configuration data. /// </summary> /// <param name="rangeValidatorData">The runtime configuration data which should be updated with settings in this node.</param> protected void SetRangeValidatorBaseProperties(RangeValidatorData <T> rangeValidatorData) { base.SetValidatorBaseProperties(rangeValidatorData); rangeValidatorData.LowerBound = lowerBound; rangeValidatorData.LowerBoundType = lowerBoundType; rangeValidatorData.UpperBound = upperBound; rangeValidatorData.UpperBoundType = upperBoundType; }
public void CanDeserializeSerializedInstanceWithNameOnly() { MockValidationSettings rwSettings = new MockValidationSettings(); RangeValidatorData rwValidatorData = new RangeValidatorData("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(RangeValidator), roSettings.Validators.Get(0).Type); } }
public void CanCreateValidatorFromConfigurationObject() { RangeValidatorData rwValidatorData = new RangeValidatorData("validator1"); rwValidatorData.Negated = true; rwValidatorData.LowerBound = "12"; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = "24"; rwValidatorData.UpperBoundType = RangeBoundaryType.Inclusive; Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(typeof(int), null, null, null); Assert.IsNotNull(validator); Assert.AreSame(typeof(RangeValidator), validator.GetType()); Assert.AreEqual(Resources.RangeValidatorNegatedDefaultMessageTemplate, validator.MessageTemplate); Assert.AreEqual(true, ((RangeValidator)validator).Negated); Assert.AreEqual(12, ((RangeValidator)validator).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((RangeValidator)validator).LowerBoundType); Assert.AreEqual(24, ((RangeValidator)validator).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((RangeValidator)validator).UpperBoundType); }
public void CreatedNodeHasAppropriateDefaultValues() { RangeValidatorNode node = new RangeValidatorNode(); RangeValidatorData validatorData = node.CreateValidatorData() as RangeValidatorData; Assert.IsNotNull(validatorData); Assert.AreEqual(Resources.RangeValidatorNodeName, validatorData.Name); Assert.AreEqual(false, validatorData.Negated); Assert.AreEqual(string.Empty, validatorData.LowerBound); Assert.AreEqual(RangeBoundaryType.Ignore, validatorData.LowerBoundType); Assert.AreEqual(string.Empty, validatorData.UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, validatorData.UpperBoundType); Assert.AreEqual(Resources.RangeValidatorNodeName, node.Name); Assert.AreEqual(false, node.Negated); Assert.AreEqual(string.Empty, node.LowerBound); Assert.AreEqual(RangeBoundaryType.Ignore, node.LowerBoundType); Assert.AreEqual(string.Empty, node.UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, node.UpperBoundType); }
public void CanCreateValidatorFromConfigurationObjectWithMessageTemplateOverride() { RangeValidatorData rwValidatorData = new RangeValidatorData("validator1"); rwValidatorData.MessageTemplate = "message template override"; rwValidatorData.Negated = true; rwValidatorData.LowerBound = "12"; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = "24"; rwValidatorData.UpperBoundType = RangeBoundaryType.Inclusive; Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(typeof(string), null, null, null); Assert.IsNotNull(validator); Assert.AreSame(typeof(RangeValidator), validator.GetType()); Assert.AreEqual("message template override", validator.MessageTemplate); Assert.AreEqual(true, ((RangeValidator)validator).Negated); Assert.AreEqual("12", ((RangeValidator)validator).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((RangeValidator)validator).LowerBoundType); Assert.AreEqual("24", ((RangeValidator)validator).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((RangeValidator)validator).UpperBoundType); }
public void CreatedNodeWithValidatorDataHasAppropriateValuesFromData() { RangeValidatorData validatorData = new RangeValidatorData("name"); validatorData.Negated = true; validatorData.LowerBound = "2"; validatorData.LowerBoundType = RangeBoundaryType.Exclusive; validatorData.UpperBound = "3"; validatorData.UpperBoundType = RangeBoundaryType.Ignore; validatorData.MessageTemplate = "message template"; RangeValidatorNode node = new RangeValidatorNode(validatorData); Assert.AreEqual("name", node.Name); Assert.AreEqual(true, node.Negated); Assert.AreEqual("2", node.LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, node.LowerBoundType); Assert.AreEqual("3", node.UpperBound); Assert.AreEqual(RangeBoundaryType.Ignore, node.UpperBoundType); Assert.AreEqual("message template", node.MessageTemplate); }
public void CanDeserializeSerializedInstanceWithNameOnly() { MockValidationSettings rwSettings = new MockValidationSettings(); RangeValidatorData rwValidatorData = new RangeValidatorData("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(RangeValidator), roSettings.Validators.Get(0).Type); } }
public void NodeCreatesValidatorDataWithValues() { RangeValidatorNode node = new RangeValidatorNode(); node.Name = "validator"; node.Negated = true; node.LowerBound = "2"; node.LowerBoundType = RangeBoundaryType.Exclusive; node.UpperBound = "3"; node.UpperBoundType = RangeBoundaryType.Ignore; node.MessageTemplate = "message template"; RangeValidatorData validatorData = node.CreateValidatorData() as RangeValidatorData; Assert.IsNotNull(validatorData); Assert.AreEqual("validator", validatorData.Name); Assert.AreEqual(true, validatorData.Negated); Assert.AreEqual("2", validatorData.LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, validatorData.LowerBoundType); Assert.AreEqual("3", validatorData.UpperBound); Assert.AreEqual(RangeBoundaryType.Ignore, validatorData.UpperBoundType); Assert.AreEqual("message template", validatorData.MessageTemplate); }
public void CanCreateValidatorFromConfigurationObjectWithMessageTemplateOverride() { RangeValidatorData rwValidatorData = new RangeValidatorData("validator1"); rwValidatorData.MessageTemplate = "message template override"; rwValidatorData.Negated = true; rwValidatorData.LowerBound = "12"; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = "24"; rwValidatorData.UpperBoundType = RangeBoundaryType.Inclusive; Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(typeof(string), null, null, null); Assert.IsNotNull(validator); Assert.AreSame(typeof(RangeValidator), validator.GetType()); Assert.AreEqual("message template override", validator.MessageTemplate); Assert.AreEqual(true, ((RangeValidator)validator).Negated); Assert.AreEqual("12", ((RangeValidator)validator).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((RangeValidator)validator).LowerBoundType); Assert.AreEqual("24", ((RangeValidator)validator).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((RangeValidator)validator).UpperBoundType); }
public void CanCreateValidatorFromConfigurationObject() { RangeValidatorData rwValidatorData = new RangeValidatorData("validator1"); rwValidatorData.Negated = true; rwValidatorData.LowerBound = "12"; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = "24"; rwValidatorData.UpperBoundType = RangeBoundaryType.Inclusive; Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(typeof(int), null, null, null); Assert.IsNotNull(validator); Assert.AreSame(typeof(RangeValidator), validator.GetType()); Assert.AreEqual(Resources.RangeValidatorNegatedDefaultMessageTemplate, validator.MessageTemplate); Assert.AreEqual(true, ((RangeValidator)validator).Negated); Assert.AreEqual(12, ((RangeValidator)validator).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((RangeValidator)validator).LowerBoundType); Assert.AreEqual(24, ((RangeValidator)validator).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((RangeValidator)validator).UpperBoundType); }
/// <summary> /// Creates an instance of <see cref="RangeValidatorNode"/> based on runtime configuration data. /// </summary> /// <param name="validatorData">The corresponding runtime configuration data.</param> public RangeValidatorNode(RangeValidatorData validatorData) : base(validatorData) { }