public void LiteralMathLoadFromFile() { // rule DTO var car = new CarDTO { Make = "Ford", Year = 2010, Model = "Expedition", AskingPrice = 10000.0000m, SellingPrice = 9000.0000m, AverageSellingPrice = 9500.000m, FixedComission = 100 }; var math = new SimpleMathEngine(); var xd = new XmlDocument(); xd.Load(@"C:\development\RuleEngine\TinyTuleEngineUnitTest\SimpleMath\SimpleMath.xml"); math.LoadRulesFromElementList<CarDTO>(xd, "/mathexps/mathexp"); Func<CarDTO, double> check = math.GetRule<CarDTO>("literal").Compile(); var result = check(car); }
public void ResonantFrequencyOfATankCircuit() { // circuitDTO var circuit = new CircuitDTO { InductanceInHenries = .1000m, // 100 millihenries CapacitanceInFarads = .00001m // 10 micro farads }; var s = new DataContractSerializer(typeof(CircuitDTO)); var m = new MemoryStream(); s.WriteObject(m,circuit); m.Position = 0; var sr = new StreamReader(m); var resulta = sr.ReadToEnd(); var math = new SimpleMathEngine(); var xd = new XmlDocument(); xd.Load(@"C:\development\RuleEngine\TinyTuleEngineUnitTest\SimpleMath\SimpleMath.xml"); math.LoadRulesFromElementList<CircuitDTO>(xd, "/mathexps/mathexp"); Func<CircuitDTO, double> resonantFrequencyOfATankCircuit = math.GetRule<CircuitDTO>("ResonantFrequencyOfATankCircuit").Compile(); var result = resonantFrequencyOfATankCircuit(circuit); Assert.AreEqual(159.0,result); }