statetests.cs

来自「drools 一个开放源码的规则引擎」· CS 代码 · 共 40 行

CS
40
字号
using System;
using System.IO;
using NUnit.Framework;
using org.drools.@event;

namespace org.drools.dotnet.examples.state
{
	[TestFixture]
	public class StateTests
	{
		[Test]
		public void TestStateExample()
		{
			RuleBase ruleBase = RuleBaseLoader.LoadFromUri(new Uri(
				"./drls/state.csharp.drl.xml", UriKind.Relative));

			WorkingMemory workingMemory = ruleBase.newWorkingMemory();
			workingMemory.addEventListener(new DebugWorkingMemoryEventListener());
			State a = new State("A");
			State b = new State("B");
			State c = new State("C");
			State d = new State("D");

			bool dynamic = true;

			workingMemory.assertObject(a, dynamic);
			workingMemory.assertObject(b, dynamic);
			workingMemory.assertObject(c, dynamic);
			workingMemory.assertObject(d, dynamic);

			workingMemory.fireAllRules();

			Assert.AreEqual(Status.Finished, a.Status);
			Assert.AreEqual(Status.Finished, b.Status);
			Assert.AreEqual(Status.Finished, c.Status);
			Assert.AreEqual(Status.Finished, d.Status);
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?