public void string7() { //init variables string modelname = "1.xml"; changed = false; RuleEngine.Evidence.Fact f = new RuleEngine.Evidence.Fact("f1", 1, "Joe", typeof(string)); f.Changed += Changed; f.ModelLookup += ModelLookup; f.EvidenceLookup += EvidenceLookup; f.IsEvaluatable = true; //init model XmlDocument doc = new XmlDocument(); doc.Load(AppDomain.CurrentDomain.BaseDirectory + @"\..\..\Fact\" + modelname); model1 = doc.DocumentElement; f.Evaluate(); //clone RuleEngine.Evidence.Fact a = (RuleEngine.Evidence.Fact)f.Clone(); a.Changed += Changed; a.ModelLookup += ModelLookup; a.EvidenceLookup += EvidenceLookup; a.IsEvaluatable = true; a.Value = "Bob"; a.Evaluate(); f.Evaluate(); Assert.IsTrue((string)f.Value == "Joe"); Assert.IsTrue((string)a.Value == "Bob"); Assert.IsTrue(changed == true); }
public void string6() { string modelname = "1.xml"; changed = false; RuleEngine.Evidence.Fact f = new RuleEngine.Evidence.Fact("f1", 1, "/root/person/firstname/text()", typeof(string), modelname); f.Changed += Changed; f.ModelLookup += ModelLookup; f.EvidenceLookup += EvidenceLookup; f.IsEvaluatable = true; //init model XmlDocument doc = new XmlDocument(); doc.Load(AppDomain.CurrentDomain.BaseDirectory + @"\..\..\Fact\" + modelname); model1 = doc.DocumentElement; f.Evaluate(); //clone RuleEngine.Evidence.Fact a = (RuleEngine.Evidence.Fact)f.Clone(); a.Changed += Changed; a.ModelLookup += ModelLookup; a.EvidenceLookup += EvidenceLookup; a.IsEvaluatable = true; model1["person"]["firstname"].InnerText = "Bob"; a.Evaluate(); Assert.True((string)f.Value == "Joe"); Assert.True((string)a.Value == "Bob"); Assert.True(changed == true); }
public void string7() { //init variables string modelname = "1.xml"; changed = false; RuleEngine.Evidence.Fact f = new RuleEngine.Evidence.Fact("f1", 1, "Joe", typeof(string)); f.Changed += Changed; f.ModelLookup += ModelLookup; f.EvidenceLookup += EvidenceLookup; f.IsEvaluatable = true; //init model XmlDocument doc = new XmlDocument(); doc.Load(AppDomain.CurrentDomain.BaseDirectory + @"\..\..\Fact\" + modelname); model1 = doc.DocumentElement; f.Evaluate(); //clone RuleEngine.Evidence.Fact a = (RuleEngine.Evidence.Fact)f.Clone(); a.Changed += Changed; a.ModelLookup += ModelLookup; a.EvidenceLookup += EvidenceLookup; a.IsEvaluatable = true; a.Value = "Bob"; a.Evaluate(); f.Evaluate(); Assert.IsTrue((string)f.Value == "Joe"); Assert.IsTrue((string)a.Value == "Bob"); Assert.IsTrue(changed == true); }