public LoadRule ( string propTypeName, string ruleXml ) : IPropRule | ||
propTypeName | string | |
ruleXml | string | The xml string containing the rule |
return | IPropRule |
public void TestPropRuleDecimal_MaxValue_ActualValueLT() { XmlRuleLoader loader = new XmlRuleLoader(new DtdLoader(), GetDefClassFactory()); IPropRule rule = loader.LoadRule(typeof(Decimal).Name, @"<rule name=""TestDecimal"" > <add key=""min"" value=""12.22"" /> <add key=""max"" value=""15.51"" /> </rule> "); //-----------------Assert Preconditions --------------------------- Assert.AreEqual(12.22d, ((PropRuleDecimal)rule).MinValue); Assert.AreEqual(15.51d, ((PropRuleDecimal)rule).MaxValue); //---------------Execute ------------------------------------------ string errorMessage = ""; bool isValid = rule.IsPropValueValid("Propname", 13.1d, ref errorMessage); //--------------Verify Result ------------------------------------- Assert.IsTrue(isValid); Assert.IsTrue(string.IsNullOrEmpty(errorMessage)); }
public void Test_LoadRule_WhenMaxYesterday_ShouldUseStringMaxValueExpression() { //---------------Set up test pack------------------- XmlRuleLoader loader = new XmlRuleLoader(new DtdLoader(), GetDefClassFactory()); //---------------Assert Precondition---------------- //---------------Execute Test ---------------------- PropRuleDate rule = (PropRuleDate)loader.LoadRule(typeof(DateTime).Name, @"<rule name=""TestDate"" > <add key=""min"" value=""yesterday"" /> <add key=""max"" value=""yesterday"" /> </rule> "); //---------------Test Result ----------------------- Assert.AreEqual("yesterday", rule.Parameters["max"]); Assert.AreEqual("yesterday", rule.Parameters["min"]); }
public void TestPropRuleDate_MaxValue_Today() { XmlRuleLoader loader = new XmlRuleLoader(new DtdLoader(), GetDefClassFactory()); IPropRule rule = loader.LoadRule(typeof(DateTime).Name, @"<rule name=""TestDate"" > <add key=""min"" value=""01 Feb 2004"" /> <add key=""max"" value=""Today"" /> </rule> "); //-----------------Assert Preconditions --------------------------- Assert.AreEqual(new DateTime(2004, 02, 01), ((PropRuleDate)rule).MinValue); Assert.AreEqual(DateTime.Today.AddDays(1).AddMilliseconds(-1), ((PropRuleDate)rule).MaxValue); //---------------Execute ------------------------------------------ string errorMessage = ""; bool isValid = rule.IsPropValueValid("Propname", DateTime.Today.AddDays(-1), ref errorMessage); //--------------Verify Result ------------------------------------- Assert.IsTrue( isValid); Assert.IsTrue(string.IsNullOrEmpty(errorMessage)); }
public void Test_MaxAndMinValue_WhenTomorrow_ShouldRetTomorrow() { //---------------Set up test pack------------------- XmlRuleLoader loader = new XmlRuleLoader(new DtdLoader(), GetDefClassFactory()); PropRuleDate rule = (PropRuleDate) loader.LoadRule(typeof(DateTime).Name, @"<rule name=""TestDate"" > <add key=""min"" value=""tomorrow"" /> <add key=""max"" value=""tomorrow"" /> </rule> "); //---------------Assert Precondition---------------- //---------------Execute Test ---------------------- DateTime maxDateTime = rule.MaxValue; DateTime minDateTime = rule.MinValue; //---------------Test Result ----------------------- Assert.AreEqual(DateTimeToday.Value.AddDays(2).AddMilliseconds(-1), maxDateTime); Assert.AreEqual(DateTimeToday.Value.AddDays(1), minDateTime); }