public virtual void testQueryByFinished() { string processDefinitionId = ProcessDefinitionId; startProcesses(5); HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeFinished().orderByActivityId().asc(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(2, query.count()); assertEquals(2, statistics.Count); // start HistoricActivityStatistics start = statistics[0]; assertEquals("start", start.Id); assertEquals(0, start.Instances); assertEquals(5, start.Finished); // task HistoricActivityStatistics task = statistics[1]; assertEquals("task", task.Id); assertEquals(5, task.Instances); assertEquals(0, task.Finished); }
public virtual void testDifferentProcessesWithSameActivityId() { string processDefinitionId = ProcessDefinitionId; string anotherProcessDefinitionId = getProcessDefinitionIdByKey("anotherProcess"); startProcesses(5); startProcessesByKey(10, "anotherProcess"); // first processDefinition HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(1, query.count()); assertEquals(1, statistics.Count); HistoricActivityStatistics task = statistics[0]; assertEquals(5, task.Instances); // second processDefinition query = historyService.createHistoricActivityStatisticsQuery(anotherProcessDefinitionId); statistics = query.list(); assertEquals(1, query.count()); assertEquals(1, statistics.Count); task = statistics[0]; assertEquals(10, task.Instances); }
protected internal virtual void assertActivityStatistics(HistoricActivityStatistics activity, string activityName, long instances, long canceled, long finished) { assertEquals(activityName, activity.Id); assertEquals(instances, activity.Instances); assertEquals(canceled, activity.Canceled); assertEquals(finished, activity.Finished); }
public virtual void testQueryByCanceledAfterCancelingSomeInstances() { string processDefinitionId = ProcessDefinitionId; startProcesses(3); // cancel running process instances IList <ProcessInstance> processInstances = runtimeService.createProcessInstanceQuery().list(); foreach (ProcessInstance processInstance in processInstances) { runtimeService.deleteProcessInstance(processInstance.Id, "test"); } startProcesses(2); HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeCanceled(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(1, query.count()); assertEquals(1, statistics.Count); // task HistoricActivityStatistics task = statistics[0]; assertEquals("task", task.Id); assertEquals(2, task.Instances); assertEquals(3, task.Canceled); completeProcessInstances(); }
protected internal virtual void verifyStatisticsResult(HistoricActivityStatistics statistics, int instances, int finished, int canceled, int completeScope) { assertEquals("Instances", instances, statistics.Instances); assertEquals("Finished", finished, statistics.Finished); assertEquals("Canceled", canceled, statistics.Canceled); assertEquals("Complete Scope", completeScope, statistics.CompleteScope); }
public virtual void testQueryIncludingCompleteScopeWithReadHistoryPermissionOnAnyProcessDefinition() { // given string processDefinitionId = selectProcessDefinitionByKey(PROCESS_KEY).Id; startProcessInstanceByKey(PROCESS_KEY); startProcessInstanceByKey(PROCESS_KEY); startProcessInstanceByKey(PROCESS_KEY); string taskId = selectAnyTask().Id; disableAuthorization(); taskService.complete(taskId); enableAuthorization(); createGrantAuthorization(PROCESS_DEFINITION, ANY, userId, READ_HISTORY); // when HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeCompleteScope(); // then verifyQueryResults(query, 2); IList <HistoricActivityStatistics> statistics = query.list(); HistoricActivityStatistics task = getStatisticsByKey(statistics, "theTask"); verifyStatisticsResult(task, 2, 0, 0, 0); HistoricActivityStatistics end = getStatisticsByKey(statistics, "theEnd"); verifyStatisticsResult(end, 0, 0, 0, 1); }
public virtual void testQueryIncludingCanceledWithReadHistoryPermissionOnProcessDefinition() { // given string processDefinitionId = selectProcessDefinitionByKey(PROCESS_KEY).Id; startProcessInstanceByKey(PROCESS_KEY); startProcessInstanceByKey(PROCESS_KEY); string processInstanceId = startProcessInstanceByKey(PROCESS_KEY).Id; disableAuthorization(); runtimeService.deleteProcessInstance(processInstanceId, null); enableAuthorization(); createGrantAuthorization(PROCESS_DEFINITION, PROCESS_KEY, userId, READ_HISTORY); // when HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeCanceled(); // then verifyQueryResults(query, 1); IList <HistoricActivityStatistics> statistics = query.list(); HistoricActivityStatistics task = getStatisticsByKey(statistics, "theTask"); verifyStatisticsResult(task, 2, 0, 1, 0); }
public virtual void testQueryByFinishedAndCompleteScopeAndCanceled() { string processDefinitionId = ProcessDefinitionId; startProcesses(2); // cancel running process instances IList <ProcessInstance> processInstances = runtimeService.createProcessInstanceQuery().list(); foreach (ProcessInstance processInstance in processInstances) { runtimeService.deleteProcessInstance(processInstance.Id, "test"); } startProcesses(2); // complete running tasks IList <Task> tasks = taskService.createTaskQuery().list(); foreach (Task task in tasks) { taskService.complete(task.Id); } startProcesses(2); HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeFinished().includeCompleteScope().includeCanceled().orderByActivityId().asc(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(3, query.count()); assertEquals(3, statistics.Count); // end HistoricActivityStatistics end = statistics[0]; assertEquals("end", end.Id); assertEquals(0, end.Instances); assertEquals(0, end.Canceled); assertEquals(2, end.Finished); assertEquals(2, end.CompleteScope); // start HistoricActivityStatistics start = statistics[1]; assertEquals("start", start.Id); assertEquals(0, start.Instances); assertEquals(0, start.Canceled); assertEquals(6, start.Finished); assertEquals(0, start.CompleteScope); // task HistoricActivityStatistics task = statistics[2]; assertEquals("task", task.Id); assertEquals(2, task.Instances); assertEquals(2, task.Canceled); assertEquals(4, task.Finished); assertEquals(0, task.CompleteScope); }
public virtual void testQueryByCompleteScopeMultipleRunningTasks() { string processDefinitionId = ProcessDefinitionId; startProcesses(5); IList <Task> tasks = taskService.createTaskQuery().taskDefinitionKey("innerTask").list(); foreach (Task task in tasks) { taskService.complete(task.Id); } HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeCompleteScope().orderByActivityId().asc(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(4, query.count()); assertEquals(4, statistics.Count); // end1 HistoricActivityStatistics end1 = statistics[0]; assertEquals("end1", end1.Id); assertEquals(0, end1.Instances); assertEquals(5, end1.CompleteScope); // innerEnd HistoricActivityStatistics innerEnd = statistics[1]; assertEquals("innerEnd", innerEnd.Id); assertEquals(0, innerEnd.Instances); assertEquals(25, innerEnd.CompleteScope); // subprocess (completes the multi-instances body scope, see BPMN spec) HistoricActivityStatistics subprocess = statistics[2]; assertEquals("subprocess", subprocess.Id); assertEquals(0, subprocess.Instances); assertEquals(25, subprocess.CompleteScope); // task HistoricActivityStatistics task = statistics[3]; assertEquals("task", task.Id); assertEquals(5, task.Instances); assertEquals(0, task.CompleteScope); completeProcessInstances(); }
public virtual void testQueryByFinishedAfterFinishingSomeInstances() { string processDefinitionId = ProcessDefinitionId; // start five instances startProcesses(5); // complete two task, so that two process instances are finished IList <Task> tasks = taskService.createTaskQuery().list(); for (int i = 0; i < 2; i++) { taskService.complete(tasks[i].Id); } HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeFinished().orderByActivityId().asc(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(3, query.count()); assertEquals(3, statistics.Count); // end HistoricActivityStatistics end = statistics[0]; assertEquals("end", end.Id); assertEquals(0, end.Instances); assertEquals(2, end.Finished); // start HistoricActivityStatistics start = statistics[1]; assertEquals("start", start.Id); assertEquals(0, start.Instances); assertEquals(5, start.Finished); // task HistoricActivityStatistics task = statistics[2]; assertEquals("task", task.Id); assertEquals(3, task.Instances); assertEquals(2, task.Finished); completeProcessInstances(); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Deployment public void testSingleTask() public virtual void testSingleTask() { string processDefinitionId = ProcessDefinitionId; startProcesses(5); HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(1, query.count()); assertEquals(1, statistics.Count); HistoricActivityStatistics statistic = statistics[0]; assertEquals("task", statistic.Id); assertEquals(5, statistic.Instances); completeProcessInstances(); }
public virtual void testMultipleProcessDefinitions() { string processId = ProcessDefinitionId; string calledProcessId = getProcessDefinitionIdByKey("calledProcess"); startProcesses(5); startProcessesByKey(10, "calledProcess"); HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processId).orderByActivityId().asc(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(1, query.count()); assertEquals(1, statistics.Count); // callActivity HistoricActivityStatistics calledActivity = statistics[0]; assertEquals("callActivity", calledActivity.Id); assertEquals(5, calledActivity.Instances); query = historyService.createHistoricActivityStatisticsQuery(calledProcessId).orderByActivityId().asc(); statistics = query.list(); assertEquals(2, query.count()); assertEquals(2, statistics.Count); // task1 HistoricActivityStatistics task1 = statistics[0]; assertEquals("task1", task1.Id); assertEquals(15, task1.Instances); // task2 HistoricActivityStatistics task2 = statistics[1]; assertEquals("task2", task2.Id); assertEquals(15, task2.Instances); completeProcessInstances(); }
public virtual void testQueryByCompleteScope() { string processDefinitionId = ProcessDefinitionId; startProcesses(5); completeProcessInstances(); HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeCompleteScope(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(1, query.count()); assertEquals(1, statistics.Count); // end HistoricActivityStatistics end = statistics[0]; assertEquals("end", end.Id); assertEquals(0, end.Instances); assertEquals(5, end.CompleteScope); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Deployment public void testMultipleRunningTasks() public virtual void testMultipleRunningTasks() { string processDefinitionId = ProcessDefinitionId; startProcesses(5); HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).orderByActivityId().asc(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(4, query.count()); assertEquals(4, statistics.Count); // innerTask HistoricActivityStatistics innerTask = statistics[0]; assertEquals("innerTask", innerTask.Id); assertEquals(25, innerTask.Instances); // subprocess HistoricActivityStatistics subProcess = statistics[1]; assertEquals("subprocess", subProcess.Id); assertEquals(25, subProcess.Instances); // subprocess multi instance body HistoricActivityStatistics subProcessMiBody = statistics[2]; assertEquals("subprocess#multiInstanceBody", subProcessMiBody.Id); assertEquals(5, subProcessMiBody.Instances); // task HistoricActivityStatistics task = statistics[3]; assertEquals("task", task.Id); assertEquals(5, task.Instances); completeProcessInstances(); }
public virtual void testQueryByCanceled() { string processDefinitionId = ProcessDefinitionId; startProcesses(5); cancelProcessInstances(); HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeCanceled(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(1, query.count()); assertEquals(1, statistics.Count); // task HistoricActivityStatistics task = statistics[0]; assertEquals("task", task.Id); assertEquals(0, task.Instances); assertEquals(5, task.Canceled); }
public virtual void testQueryByFinishedMultipleRunningTasks() { string processDefinitionId = ProcessDefinitionId; startProcesses(5); IList <Task> tasks = taskService.createTaskQuery().taskDefinitionKey("innerTask").list(); foreach (Task task in tasks) { taskService.complete(task.Id); } HistoricActivityStatisticsQuery query = historyService.createHistoricActivityStatisticsQuery(processDefinitionId).includeFinished().orderByActivityId().asc(); IList <HistoricActivityStatistics> statistics = query.list(); assertEquals(9, query.count()); assertEquals(9, statistics.Count); // end1 HistoricActivityStatistics end1 = statistics[0]; assertEquals("end1", end1.Id); assertEquals(0, end1.Instances); assertEquals(5, end1.Finished); // gtw HistoricActivityStatistics gtw = statistics[1]; assertEquals("gtw", gtw.Id); assertEquals(0, gtw.Instances); assertEquals(5, gtw.Finished); // innerEnd HistoricActivityStatistics innerEnd = statistics[2]; assertEquals("innerEnd", innerEnd.Id); assertEquals(0, innerEnd.Instances); assertEquals(25, innerEnd.Finished); // innerStart HistoricActivityStatistics innerStart = statistics[3]; assertEquals("innerStart", innerStart.Id); assertEquals(0, innerStart.Instances); assertEquals(25, innerStart.Finished); // innerTask HistoricActivityStatistics innerTask = statistics[4]; assertEquals("innerTask", innerTask.Id); assertEquals(0, innerTask.Instances); assertEquals(25, innerTask.Finished); // innerStart HistoricActivityStatistics start = statistics[5]; assertEquals("start", start.Id); assertEquals(0, start.Instances); assertEquals(5, start.Finished); // subprocess HistoricActivityStatistics subProcess = statistics[6]; assertEquals("subprocess", subProcess.Id); assertEquals(0, subProcess.Instances); assertEquals(25, subProcess.Finished); // subprocess - multi-instance body HistoricActivityStatistics subProcessMiBody = statistics[7]; assertEquals("subprocess#multiInstanceBody", subProcessMiBody.Id); assertEquals(0, subProcessMiBody.Instances); assertEquals(5, subProcessMiBody.Finished); // task HistoricActivityStatistics task = statistics[8]; assertEquals("task", task.Id); assertEquals(5, task.Instances); assertEquals(0, task.Finished); completeProcessInstances(); }