public void BasicObjectBindingTest1() { long ts = DateTime.Now.Ticks; int fired = 0; int activations = 0; Basic basic = new Basic("one", 1); using (TextWriter writer = Console.Out) { Rete engine = new Rete(); engine.Watch = WatchType.WATCH_ALL; engine.addPrintWriter("Console", writer); engine.declareObject(typeof(Basic), "Basic"); engine.loadRuleset(getRule3()); foreach (Defrule rule in engine.CurrentFocus.AllRules) { Console.WriteLine(rule.toPPString()); } engine.assertObject(basic, "Basic", false, false); activations = engine.CurrentFocus.ActivationCount; fired = engine.fire(); engine.printWorkingMemory(true, false); double endTime = DateTime.Now.Ticks - ts; Console.WriteLine(String.Format("BasicObjectBindingTest1 completed in {0} seconds.", (endTime / 10000000).ToString("0.000000"))); writer.Flush(); writer.Close(); engine.close(); } Assert.IsTrue(fired == 1); Assert.IsTrue(activations == 1); //AppDomain.Unload(AppDomain.CurrentDomain); }
public void ObjectBindingTest1() { long ts = DateTime.Now.Ticks; int fired = 0; int activations = 0; using (TextWriter writer = Console.Out) { Rete engine = new Rete(); engine.Watch = WatchType.WATCH_ALL; engine.addPrintWriter("Console", writer); engine.declareObject(typeof(Account), "Account"); engine.loadRuleset(getRule1()); engine.assertObject(GetAcct0(), "Account", false, false); activations = engine.CurrentFocus.ActivationCount; fired = engine.fire(); engine.printWorkingMemory(true, false); double endTime = DateTime.Now.Ticks - ts; Console.WriteLine(String.Format("ObjectBindingTest1 completed in {0} seconds.", (endTime / 10000000).ToString("0.000000"))); writer.Flush(); writer.Close(); engine.close(); } Assert.IsTrue(fired == 1); Assert.IsTrue(activations == 1); //AppDomain.Unload(AppDomain.CurrentDomain); }
public void testLoadTest() { Rete engine = new Rete(); engine.loadRuleset(getRoot("test.clp")); ICollection <object> rules = engine.CurrentFocus.AllRules; int count = rules.Count; IEnumerator itr = rules.GetEnumerator(); while (itr.MoveNext()) { Defrule r = (Defrule)itr.Current; Console.WriteLine(r.toPPString()); } Assert.AreEqual(5, count); engine.close(); }
public static double manners64() { long ts = DateTime.Now.Ticks; long totTime = 0; using (TextWriter writer = System.Console.Out) { Rete engine = new Rete(); //engine.CurrentFocus.Lazy = true; engine.addPrintWriter("Console", writer); engine.loadRuleset(getRoot("manners64guests.clp")); engine.printWorkingMemory(false, false); totTime = DateTime.Now.Ticks - ts; writer.Flush(); writer.Close(); engine.close(); } return(totTime); }
private void RunRules(string dir, string clpFile) { var outFile = Path.Combine(dir, String.Concat(Path.GetFileNameWithoutExtension(clpFile), ".out")); var refFile = Path.Combine(dir, String.Concat(Path.GetFileNameWithoutExtension(clpFile), ".ref")); using (TextWriter writer = new StreamWriter(outFile)) { Rete engine = new Rete(); engine.addPrintWriter("File", writer); engine.loadRuleset(clpFile); engine.printWorkingMemory(false, false); engine.close(); writer.Flush(); writer.Close(); } var outTxt = File.ReadAllText(outFile); var refTxt = File.ReadAllText(refFile); }
public void manners64() { long ts = DateTime.Now.Ticks; using (TextWriter writer = Console.Out) { Rete engine = new Rete(); engine.addPrintWriter("Console", writer); engine.loadRuleset(getRoot("manners64guests.clp")); engine.printWorkingMemory(false, false); writer.Flush(); writer.Close(); //engine.MessageRouter.ShutDown(); engine.close(); } double endTime = DateTime.Now.Ticks - ts; Console.WriteLine(String.Format("Manners 64 completed in {0} seconds.", (endTime / 10000000).ToString("0.000000"))); //AppDomain.Unload(AppDomain.CurrentDomain); }