⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 castletestcase.cs

📁 基于DotNet的工作流引擎实现
💻 CS
字号:
using System.Collections;
using DotNetTools.Workflow.Spi;
using NUnit.Framework;

namespace DotNetTools.Workflow.Util
{
	[TestFixture]
	public class CastleTestCase : TestCaseBase
	{
		public CastleTestCase()
		{
			
		}
		[Test]
		public void Test()
		{
			
			CastleContainer context=new CastleContainer();
			
			IWorkflow workflow=(IWorkflow)context["workflow"];
		
		
			
			long workflowId = workflow.Initialize("castle", 1, null);
			IList currentSteps = workflow.GetCurrentSteps(workflowId);
			//校验只有一个当前步骤
			Assert.AreEqual( 1, currentSteps.Count,"Unexpected number of current steps");
			//校验这个步骤是1
			IStep currentStep = (IStep)currentSteps[0];
			Assert.AreEqual(1, currentStep.StepId,"Unexpected current step");

			int[] availableActions = workflow.GetAvailableActions(workflowId);
			//校验只有一个可执行的动作

			Assert.AreEqual( 1, availableActions.Length,"Unexpected number of available actions");
			//校验这个动作是2
			Assert.AreEqual(2, availableActions[0],"Unexpected available action");
			workflow.DoAction(workflowId, 2, null);
			availableActions = workflow.GetAvailableActions(workflowId);
			Assert.AreEqual(1,availableActions.Length);

			Assert.AreEqual(3,availableActions[0]);
			workflow.DoAction(workflowId,3,null);
			availableActions = workflow.GetAvailableActions(workflowId);
			Assert.AreEqual(0,availableActions.Length);

			
			
			
			
		}


		
	}

	
}

⌨️ 快捷键说明

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