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