public void CanDeserializeSerializedInstanceWithValuesSet() { DateTime lowerBound = new DateTime(2006, 1, 1); DateTime upperBound = new DateTime(2006, 1, 10); MockValidationSettings rwSettings = new MockValidationSettings(); DateTimeRangeValidatorData rwValidatorData = new DateTimeRangeValidatorData("validator1"); rwSettings.Validators.Add(rwValidatorData); rwValidatorData.LowerBound = lowerBound; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = upperBound; 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(DateTimeRangeValidator), roSettings.Validators.Get(0).Type); Assert.AreEqual(lowerBound, ((DateTimeRangeValidatorData)roSettings.Validators.Get(0)).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((DateTimeRangeValidatorData)roSettings.Validators.Get(0)).LowerBoundType); Assert.AreEqual(upperBound, ((DateTimeRangeValidatorData)roSettings.Validators.Get(0)).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((DateTimeRangeValidatorData)roSettings.Validators.Get(0)).UpperBoundType); } }
public void CanDeserializeSerializedInstanceWithValuesSet() { DateTime lowerBound = new DateTime(2006, 1, 1); DateTime upperBound = new DateTime(2006, 1, 10); MockValidationSettings rwSettings = new MockValidationSettings(); DateTimeRangeValidatorData rwValidatorData = new DateTimeRangeValidatorData("validator1"); rwSettings.Validators.Add(rwValidatorData); rwValidatorData.LowerBound = lowerBound; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = upperBound; 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(DateTimeRangeValidator), roSettings.Validators.Get(0).Type); Assert.AreEqual(lowerBound, ((DateTimeRangeValidatorData)roSettings.Validators.Get(0)).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((DateTimeRangeValidatorData)roSettings.Validators.Get(0)).LowerBoundType); Assert.AreEqual(upperBound, ((DateTimeRangeValidatorData)roSettings.Validators.Get(0)).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((DateTimeRangeValidatorData)roSettings.Validators.Get(0)).UpperBoundType); } }
public void NodeCreatesValidatorDataWithValues() { DateTime lowerBound = new DateTime(2006, 1, 1); DateTime upperBound = new DateTime(2006, 1, 10); DateRangeValidatorNode node = new DateRangeValidatorNode(); node.Name = "validator"; node.Negated = true; node.LowerBound = lowerBound; node.LowerBoundType = RangeBoundaryType.Exclusive; node.UpperBound = upperBound; node.UpperBoundType = RangeBoundaryType.Ignore; node.MessageTemplate = "message template"; DateTimeRangeValidatorData validatorData = node.CreateValidatorData() as DateTimeRangeValidatorData; Assert.IsNotNull(validatorData); Assert.AreEqual("validator", validatorData.Name); Assert.AreEqual(true, validatorData.Negated); Assert.AreEqual(lowerBound, validatorData.LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, validatorData.LowerBoundType); Assert.AreEqual(upperBound, validatorData.UpperBound); Assert.AreEqual(RangeBoundaryType.Ignore, validatorData.UpperBoundType); Assert.AreEqual("message template", validatorData.MessageTemplate); }
/// <summary> /// Returns the runtime configuration data that is represented by this node. /// </summary> /// <returns>An instance of <see cref="DateTimeRangeValidatorData"/> that can be persisted to a configuration file.</returns> public override ValidatorData CreateValidatorData() { DateTimeRangeValidatorData validatorData = new DateTimeRangeValidatorData(Name); SetRangeValidatorBaseProperties(validatorData); SetValueValidatorBaseProperties(validatorData); return(validatorData); }
public void CreatedNodeHasAppropriateDefaultValues() { DateRangeValidatorNode node = new DateRangeValidatorNode(); DateTimeRangeValidatorData validatorData = node.CreateValidatorData() as DateTimeRangeValidatorData; Assert.IsNotNull(validatorData); Assert.AreEqual(Resources.DateRangeValidatorNodeName, validatorData.Name); Assert.AreEqual(false, validatorData.Negated); Assert.AreEqual(DateTime.MinValue, validatorData.LowerBound); Assert.AreEqual(RangeBoundaryType.Ignore, validatorData.LowerBoundType); Assert.AreEqual(DateTime.MinValue, validatorData.UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, validatorData.UpperBoundType); Assert.AreEqual(Resources.DateRangeValidatorNodeName, node.Name); Assert.AreEqual(false, node.Negated); Assert.AreEqual(DateTime.MinValue, node.LowerBound); Assert.AreEqual(RangeBoundaryType.Ignore, node.LowerBoundType); Assert.AreEqual(DateTime.MinValue, node.UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, node.UpperBoundType); }
public void CanCreateValidatorFromConfigurationObject() { DateTime lowerBound = new DateTime(2006, 1, 1); DateTime upperBound = new DateTime(2006, 1, 10); DateTimeRangeValidatorData rwValidatorData = new DateTimeRangeValidatorData("validator1"); rwValidatorData.LowerBound = lowerBound; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = upperBound; rwValidatorData.UpperBoundType = RangeBoundaryType.Inclusive; Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(null, null, null); Assert.IsNotNull(validator); Assert.AreSame(typeof(DateTimeRangeValidator), validator.GetType()); Assert.AreEqual(lowerBound, ((DateTimeRangeValidator)validator).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((DateTimeRangeValidator)validator).LowerBoundType); Assert.AreEqual(upperBound, ((DateTimeRangeValidator)validator).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((DateTimeRangeValidator)validator).UpperBoundType); Assert.AreEqual(Resources.RangeValidatorNonNegatedDefaultMessageTemplate, ((DateTimeRangeValidator)validator).MessageTemplate); }
public void CreatedNodeWithValidatorDataHasAppropriateValuesFromData() { DateTime lowerBound = new DateTime(2006, 1, 1); DateTime upperBound = new DateTime(2006, 1, 10); DateTimeRangeValidatorData validatorData = new DateTimeRangeValidatorData("name"); validatorData.Negated = true; validatorData.LowerBound = lowerBound; validatorData.LowerBoundType = RangeBoundaryType.Exclusive; validatorData.UpperBound = upperBound; validatorData.UpperBoundType = RangeBoundaryType.Ignore; validatorData.MessageTemplate = "message template"; DateRangeValidatorNode node = new DateRangeValidatorNode(validatorData); Assert.AreEqual("name", node.Name); Assert.AreEqual(true, node.Negated); Assert.AreEqual(lowerBound, node.LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, node.LowerBoundType); Assert.AreEqual(upperBound, node.UpperBound); Assert.AreEqual(RangeBoundaryType.Ignore, node.UpperBoundType); Assert.AreEqual("message template", node.MessageTemplate); }
public void CanCreateValidatorFromConfigurationObject() { DateTime lowerBound = new DateTime(2006, 1, 1); DateTime upperBound = new DateTime(2006, 1, 10); DateTimeRangeValidatorData rwValidatorData = new DateTimeRangeValidatorData("validator1"); rwValidatorData.LowerBound = lowerBound; rwValidatorData.LowerBoundType = RangeBoundaryType.Exclusive; rwValidatorData.UpperBound = upperBound; rwValidatorData.UpperBoundType = RangeBoundaryType.Inclusive; Validator validator = ((IValidatorDescriptor)rwValidatorData).CreateValidator(null, null, null, null); Assert.IsNotNull(validator); Assert.AreSame(typeof(DateTimeRangeValidator), validator.GetType()); Assert.AreEqual(lowerBound, ((DateTimeRangeValidator)validator).LowerBound); Assert.AreEqual(RangeBoundaryType.Exclusive, ((DateTimeRangeValidator)validator).LowerBoundType); Assert.AreEqual(upperBound, ((DateTimeRangeValidator)validator).UpperBound); Assert.AreEqual(RangeBoundaryType.Inclusive, ((DateTimeRangeValidator)validator).UpperBoundType); Assert.AreEqual(Resources.RangeValidatorNonNegatedDefaultMessageTemplate, ((DateTimeRangeValidator)validator).MessageTemplate); }
/// <summary> /// Creates an instance of <see cref="DateRangeValidatorNode"/> based on runtime configuration data. /// </summary> /// <param name="validatorData">The corresponding runtime configuration data.</param> public DateRangeValidatorNode(DateTimeRangeValidatorData validatorData) : base(validatorData) { }