Exemplo n.º 1
0
        public void DispatchCancelNoBranchProcessTaskTest()
        {
            IWfProcessDescriptor processDesp = WfProcessTestCommon.CreateSimpleProcessDescriptor();

            IWfProcess process = WfProcessTestCommon.StartupProcess(processDesp);

            MoveToExecutor(process);

            SysTaskAdapter.Instance.ClearAll();

            DispatchCancelProcessTask cancelTask = DispatchCancelProcessTask.SendTask(string.Empty, process.ID, true);

            //直接发布一个作废的任务流程
            SysTaskCommon.ExecuteAndAssertTask(cancelTask);

            int executedTaskCount = SysTaskCommon.ExecuteAllTasks();

            WfRuntime.ClearCache();
            process = WfRuntime.GetProcessByProcessID(process.ID);
            AssertProcessAndAllBranchesStatus(WfProcessStatus.Aborted, process);
        }
        protected override void OnSaveApplicationData(WfExecutorDataContext dataContext)
        {
            DispatchCancelProcessTask cancelTask = DispatchCancelProcessTask.SendTask(string.Empty, this.Process.ID, true);

            base.OnSaveApplicationData(dataContext);
        }