public void CanQueryForOwnTasks() { var db = _mux.GetDatabase(); db.ScriptEvaluate("print(\"CanSubmitAndRunAWorkflow\")"); db.ScriptEvaluate("redis.call(\"flushdb\")"); var th = new BlockingTaskHandler(); var complete = new ManualResetEvent(false); var events = new List <string>(); var wh = new WorkflowHandler(); wh.WorkflowComplete += (s, w) => { events.Add("complete"); complete.Set(); }; using (var wm = new WorkflowManagement(_mux, th, wh, new WorkflowManagementId("test"), null, new Lua())) { var workflow = new Workflow(new WorkflowName("TestWorkflow")); workflow.AddTask(new TaskName("TestNode1"), new Payload("Node1"), NoType, SimplePriority, EmptyTaskList, EmptyTaskList); wm.PushWorkflow(workflow); var taskWasStarted = th.Gate.WaitOne(2000); Assert.IsTrue(taskWasStarted); var myTasks = wm.FindTasks(); Assert.AreEqual(1, myTasks.Length); Assert.AreEqual("1", myTasks[0]); } db.ScriptEvaluate("redis.call(\"flushdb\")"); }
public void CanQueryForOwnTasks() { var db = _mux.GetDatabase(); db.ScriptEvaluate("print(\"CanSubmitAndRunAWorkflow\")"); db.ScriptEvaluate("redis.call(\"flushdb\")"); var th = new BlockingTaskHandler(); var complete = new ManualResetEvent(false); var events = new List<string>(); var wh = new WorkflowHandler(); wh.WorkflowComplete += (s, w) => { events.Add("complete"); complete.Set(); }; using (var wm = new WorkflowManagement(_mux, th, wh, new WorkflowManagementId("test"), null, new Lua())) { var workflow = new Workflow(new WorkflowName("TestWorkflow")); workflow.AddTask(new TaskName("TestNode1"), new Payload("Node1"), NoType, SimplePriority, EmptyTaskList, EmptyTaskList); wm.PushWorkflow(workflow); var taskWasStarted = th.Gate.WaitOne(2000); Assert.IsTrue(taskWasStarted); var myTasks = wm.FindTasks(); Assert.AreEqual(1, myTasks.Length); Assert.AreEqual("1", myTasks[0]); } db.ScriptEvaluate("redis.call(\"flushdb\")"); }
public void CanQueryForOwnTasks() { var db = _mux.GetDatabase(); db.ScriptEvaluate("print(\"CanSubmitAndRunAWorkflow\")"); db.ScriptEvaluate("redis.call(\"flushdb\")"); var th = new BlockingTaskHandler(); var complete = new ManualResetEvent(false); var events = new List<string>(); var wh = new WorkflowHandler(); wh.WorkflowComplete += (s, w) => { events.Add("complete"); complete.Set(); }; using (var wm = new WorkflowManagement(_mux, th, wh, "test", null, new Lua())) { var workflowName = "TestWorkflow"; var tasks = new List<Task>(); tasks.Add(new Task { Type = "", Name = "TestNode1", Payload = "Node1", Parents = new string[] { }, Children = new string[] { "TestNode2" }, Workflow = workflowName }); var workflow = new Workflow { Name = workflowName, Tasks = tasks }; wm.PushWorkflow(workflow); var taskWasStarted = th.Gate.WaitOne(2000); Assert.IsTrue(taskWasStarted); var myTasks = wm.FindTasks(); Assert.AreEqual(1, myTasks.Length); Assert.AreEqual("1", myTasks[0]); } db.ScriptEvaluate("redis.call(\"flushdb\")"); }