public virtual void testProcessDefinitionStatisticsQueryForMultipleVersionsWithIncidentType() { org.camunda.bpm.engine.repository.Deployment deployment = repositoryService.createDeployment().addClasspathResource("org/camunda/bpm/engine/test/api/mgmt/StatisticsTest.testStatisticsQueryWithFailedJobs.bpmn20.xml").deploy(); IList <ProcessDefinition> definitions = repositoryService.createProcessDefinitionQuery().processDefinitionKey("ExampleProcess").list(); foreach (ProcessDefinition definition in definitions) { runtimeService.startProcessInstanceById(definition.Id); } executeAvailableJobs(); IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeFailedJobs().includeIncidentsForType("failedJob").list(); Assert.assertEquals(2, statistics.Count); ProcessDefinitionStatistics definitionResult = statistics[0]; Assert.assertEquals(1, definitionResult.Instances); Assert.assertEquals(0, definitionResult.FailedJobs); assertTrue(definitionResult.IncidentStatistics.Count == 0); definitionResult = statistics[1]; Assert.assertEquals(1, definitionResult.Instances); Assert.assertEquals(0, definitionResult.FailedJobs); assertTrue(definitionResult.IncidentStatistics.Count == 0); repositoryService.deleteDeployment(deployment.Id, true); }
// including incidents and failed jobs /////////////////////////////////////////////////////////////// public virtual void testQueryIncludingIncidentsAndFailedJobsWithoutProcessInstanceAuthorizations() { // given startProcessInstanceByKey(ONE_TASK_PROCESS_KEY); startProcessInstanceByKey(ONE_TASK_PROCESS_KEY); startProcessAndExecuteJob(ONE_INCIDENT_PROCESS_KEY); startProcessAndExecuteJob(ONE_INCIDENT_PROCESS_KEY); startProcessAndExecuteJob(ONE_INCIDENT_PROCESS_KEY); createGrantAuthorization(PROCESS_DEFINITION, ANY, userId, READ); // when IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeIncidents().includeFailedJobs().list(); // then assertEquals(2, statistics.Count); ProcessDefinitionStatistics oneTaskProcessStatistics = getStatisticsByKey(statistics, ONE_TASK_PROCESS_KEY); verifyStatisticsResult(oneTaskProcessStatistics, 2, 0, 0); ProcessDefinitionStatistics oneIncidentProcessStatistics = getStatisticsByKey(statistics, ONE_INCIDENT_PROCESS_KEY); verifyStatisticsResult(oneIncidentProcessStatistics, 3, 3, 3); }
public virtual void testProcessDefinitionStatisticsQueryWithIncidentType() { runtimeService.startProcessInstanceByKey("ExampleProcess"); IDictionary <string, object> parameters = new Dictionary <string, object>(); parameters["fail"] = true; runtimeService.startProcessInstanceByKey("ExampleProcess", parameters); executeAvailableJobs(); IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeIncidentsForType("failedJob").list(); Assert.assertEquals(1, statistics.Count); ProcessDefinitionStatistics definitionResult = statistics[0]; Assert.assertEquals(2, definitionResult.Instances); assertFalse(definitionResult.IncidentStatistics.Count == 0); assertEquals(1, definitionResult.IncidentStatistics.Count); IncidentStatistics incidentStatistics = definitionResult.IncidentStatistics[0]; Assert.assertEquals(org.camunda.bpm.engine.runtime.Incident_Fields.FAILED_JOB_HANDLER_TYPE, incidentStatistics.IncidentType); Assert.assertEquals(1, incidentStatistics.IncidentCount); }
public virtual void testQueryByFailedJobsAndIncidentsWithFailedTimerStartEvent() { executeAvailableJobs(); IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeFailedJobs().includeIncidents().list(); assertEquals(1, statistics.Count); ProcessDefinitionStatistics result = statistics[0]; // there is no running instance assertEquals(0, result.Instances); // but there is one failed timer job assertEquals(1, result.FailedJobs); IList <IncidentStatistics> incidentStatistics = result.IncidentStatistics; // and there is one incident for the failed timer job assertEquals(1, incidentStatistics.Count); IncidentStatistics incidentStatistic = incidentStatistics[0]; assertEquals(1, incidentStatistic.IncidentCount); assertEquals(org.camunda.bpm.engine.runtime.Incident_Fields.FAILED_JOB_HANDLER_TYPE, incidentStatistic.IncidentType); }
public virtual void testProcessDefinitionStatisticsQueryWithIncidentsWithoutFailedJobs() { runtimeService.startProcessInstanceByKey("callExampleSubProcess"); executeAvailableJobs(); IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeIncidents().includeFailedJobs().list(); Assert.assertEquals(2, statistics.Count); ProcessDefinitionStatistics callExampleSubProcessStaticstics = null; ProcessDefinitionStatistics exampleSubProcessStaticstics = null; foreach (ProcessDefinitionStatistics current in statistics) { if (current.Key.Equals("callExampleSubProcess")) { callExampleSubProcessStaticstics = current; } else if (current.Key.Equals("ExampleProcess")) { exampleSubProcessStaticstics = current; } else { fail(current.Key + " was not expected."); } } assertNotNull(callExampleSubProcessStaticstics); assertNotNull(exampleSubProcessStaticstics); // "super" process definition assertEquals(1, callExampleSubProcessStaticstics.Instances); assertEquals(0, callExampleSubProcessStaticstics.FailedJobs); assertFalse(callExampleSubProcessStaticstics.IncidentStatistics.Count == 0); assertEquals(1, callExampleSubProcessStaticstics.IncidentStatistics.Count); IncidentStatistics incidentStatistics = callExampleSubProcessStaticstics.IncidentStatistics[0]; assertEquals(org.camunda.bpm.engine.runtime.Incident_Fields.FAILED_JOB_HANDLER_TYPE, incidentStatistics.IncidentType); assertEquals(1, incidentStatistics.IncidentCount); // "called" process definition assertEquals(1, exampleSubProcessStaticstics.Instances); assertEquals(1, exampleSubProcessStaticstics.FailedJobs); assertFalse(exampleSubProcessStaticstics.IncidentStatistics.Count == 0); assertEquals(1, exampleSubProcessStaticstics.IncidentStatistics.Count); incidentStatistics = exampleSubProcessStaticstics.IncidentStatistics[0]; assertEquals(org.camunda.bpm.engine.runtime.Incident_Fields.FAILED_JOB_HANDLER_TYPE, incidentStatistics.IncidentType); assertEquals(1, incidentStatistics.IncidentCount); }
public virtual void testSubprocessProcessDefinitionStatisticsQuery() { runtimeService.startProcessInstanceByKey("ExampleProcess"); IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().list(); Assert.assertEquals(1, statistics.Count); ProcessDefinitionStatistics result = statistics[0]; Assert.assertEquals(1, result.Instances); }
public virtual void testProcessDefinitionStatisticsQueryForMultipleVersionsWithFailedJobsAndIncidents() { org.camunda.bpm.engine.repository.Deployment deployment = repositoryService.createDeployment().addClasspathResource("org/camunda/bpm/engine/test/api/mgmt/StatisticsTest.testStatisticsQueryWithFailedJobs.bpmn20.xml").deploy(); IList <ProcessDefinition> definitions = repositoryService.createProcessDefinitionQuery().processDefinitionKey("ExampleProcess").list(); IDictionary <string, object> parameters = new Dictionary <string, object>(); parameters["fail"] = true; foreach (ProcessDefinition definition in definitions) { runtimeService.startProcessInstanceById(definition.Id, parameters); } executeAvailableJobs(); IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeFailedJobs().includeIncidents().list(); Assert.assertEquals(2, statistics.Count); ProcessDefinitionStatistics definitionResult = statistics[0]; Assert.assertEquals(1, definitionResult.Instances); Assert.assertEquals(1, definitionResult.FailedJobs); IList <IncidentStatistics> incidentStatistics = definitionResult.IncidentStatistics; assertFalse(incidentStatistics.Count == 0); assertEquals(1, incidentStatistics.Count); IncidentStatistics incident = incidentStatistics[0]; assertEquals(org.camunda.bpm.engine.runtime.Incident_Fields.FAILED_JOB_HANDLER_TYPE, incident.IncidentType); assertEquals(1, incident.IncidentCount); definitionResult = statistics[1]; Assert.assertEquals(1, definitionResult.Instances); Assert.assertEquals(1, definitionResult.FailedJobs); incidentStatistics = definitionResult.IncidentStatistics; assertFalse(incidentStatistics.Count == 0); assertEquals(1, incidentStatistics.Count); incident = incidentStatistics[0]; assertEquals(org.camunda.bpm.engine.runtime.Incident_Fields.FAILED_JOB_HANDLER_TYPE, incident.IncidentType); assertEquals(1, incident.IncidentCount); repositoryService.deleteDeployment(deployment.Id, true); }
public virtual void testQueryByFailedJobsWithFailedTimerStartEvent() { executeAvailableJobs(); IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeFailedJobs().list(); assertEquals(1, statistics.Count); ProcessDefinitionStatistics result = statistics[0]; // there is no running instance assertEquals(0, result.Instances); // but there is one failed timer job assertEquals(1, result.FailedJobs); }
public virtual void testProcessDefinitionStatisticsQueryWithoutRunningInstances() { IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeFailedJobs().includeIncidents().list(); Assert.assertEquals(1, statistics.Count); ProcessDefinitionStatistics definitionResult = statistics[0]; Assert.assertEquals(0, definitionResult.Instances); Assert.assertEquals(0, definitionResult.FailedJobs); statistics = managementService.createProcessDefinitionStatisticsQuery().includeIncidents().list(); assertTrue(definitionResult.IncidentStatistics.Count == 0); }
protected internal virtual void verifyStatisticsResult(ProcessDefinitionStatistics statistics, int instances, int failedJobs, int incidents) { assertEquals("Instances", instances, statistics.Instances); assertEquals("Failed Jobs", failedJobs, statistics.FailedJobs); IList <IncidentStatistics> incidentStatistics = statistics.IncidentStatistics; if (incidents == 0) { assertTrue("Incidents supposed to be empty", incidentStatistics.Count == 0); } else { // the test does have only one type of incidents assertEquals("Incidents", incidents, incidentStatistics[0].IncidentCount); } }
public virtual void testQueryWithReadPermissionOnOneTaskProcess() { // given createGrantAuthorization(PROCESS_DEFINITION, ONE_TASK_PROCESS_KEY, userId, READ); // when ProcessDefinitionStatisticsQuery query = managementService.createProcessDefinitionStatisticsQuery(); // then verifyQueryResults(query, 1); ProcessDefinitionStatistics statistics = query.singleResult(); assertEquals(ONE_TASK_PROCESS_KEY, statistics.Key); assertEquals(0, statistics.Instances); assertEquals(0, statistics.FailedJobs); assertTrue(statistics.IncidentStatistics.Count == 0); }
public virtual void testProcessDefinitionStatisticsQueryWithFailedJobs() { runtimeService.startProcessInstanceByKey("ExampleProcess"); IDictionary <string, object> parameters = new Dictionary <string, object>(); parameters["fail"] = true; runtimeService.startProcessInstanceByKey("ExampleProcess", parameters); executeAvailableJobs(); IList <ProcessDefinitionStatistics> statistics = managementService.createProcessDefinitionStatisticsQuery().includeFailedJobs().list(); Assert.assertEquals(1, statistics.Count); ProcessDefinitionStatistics definitionResult = statistics[0]; Assert.assertEquals(2, definitionResult.Instances); Assert.assertEquals(1, definitionResult.FailedJobs); }
public virtual void testProcessDefinitionStatisticsProperties() { string resourceName = "org/camunda/bpm/engine/test/api/mgmt/ProcessDefinitionStatisticsQueryTest.testProcessDefinitionStatisticsProperties.bpmn20.xml"; string deploymentId = deploymentForTenant("tenant1", resourceName); ProcessDefinitionStatistics processDefinitionStatistics = managementService.createProcessDefinitionStatisticsQuery().singleResult(); assertEquals("testProcess", processDefinitionStatistics.Key); assertEquals("process name", processDefinitionStatistics.Name); assertEquals("Examples", processDefinitionStatistics.Category); assertEquals(null, processDefinitionStatistics.Description); // it is not parsed for the statistics query assertEquals("tenant1", processDefinitionStatistics.TenantId); assertEquals("v0.1.0", processDefinitionStatistics.VersionTag); assertEquals(deploymentId, processDefinitionStatistics.DeploymentId); assertEquals(resourceName, processDefinitionStatistics.ResourceName); assertEquals(null, processDefinitionStatistics.DiagramResourceName); assertEquals(1, processDefinitionStatistics.Version); assertEquals(0, processDefinitionStatistics.Instances); assertEquals(0, processDefinitionStatistics.FailedJobs); assertTrue(processDefinitionStatistics.IncidentStatistics.Count == 0); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void instancesFailedJobsAndIncidentsCountWithAuthenticatedTenant() public virtual void instancesFailedJobsAndIncidentsCountWithAuthenticatedTenant() { testRule.deploy(failingProcess); startProcessInstances(FAILED_JOBS_PROCESS_DEFINITION_KEY); testRule.executeAvailableJobs(); identityService.setAuthentication("user", null, Arrays.asList(TENANT_ONE)); IList <ProcessDefinitionStatistics> processDefinitionsStatistics = managementService.createProcessDefinitionStatisticsQuery().includeFailedJobs().includeIncidents().list(); // then assertEquals(1, processDefinitionsStatistics.Count); ProcessDefinitionStatistics processDefinitionStatistics = processDefinitionsStatistics[0]; assertEquals(2, processDefinitionStatistics.Instances); assertEquals(2, processDefinitionStatistics.FailedJobs); IList <IncidentStatistics> incidentStatistics = processDefinitionStatistics.IncidentStatistics; assertEquals(1, incidentStatistics.Count); assertEquals(2, incidentStatistics[0].IncidentCount); }
public static ProcessDefinitionStatisticsResultDto fromProcessDefinitionStatistics(ProcessDefinitionStatistics statistics) { ProcessDefinitionStatisticsResultDto dto = new ProcessDefinitionStatisticsResultDto(); dto.definition = ProcessDefinitionDto.fromProcessDefinition(statistics); dto.id = statistics.Id; dto.instances = statistics.Instances; dto.failedJobs = statistics.FailedJobs; dto.incidents = new List <IncidentStatisticsResultDto>(); foreach (IncidentStatistics incident in statistics.IncidentStatistics) { IncidentStatisticsResultDto incidentDto = IncidentStatisticsResultDto.fromIncidentStatistics(incident); dto.incidents.Add(incidentDto); } return(dto); }