@Override protected void applyFilters(HistoricCaseActivityInstanceQuery query) { if (caseActivityInstanceId != null) { query.caseActivityInstanceId(caseActivityInstanceId); query.caseActivityInstanceIdIn(caseActivityInstanceIds.toArray(new String[caseActivityInstanceIds.size()])); query.caseInstanceId(caseInstanceId); query.caseDefinitionId(caseDefinitionId); query.caseExecutionId(caseExecutionId); query.caseActivityId(caseActivityId); query.caseActivityIdIn(caseActivityIds.toArray(new String[caseActivityIds.size()])); query.caseActivityName(caseActivityName); query.caseActivityType(caseActivityType); query.createdBefore(createdBefore); query.createdAfter(createdAfter); query.endedBefore(endedBefore); query.endedAfter(endedAfter); query.required();
protected HistoricCaseActivityInstance getHistoricCaseActivityInstance() { return historyService.createHistoricCaseActivityInstanceQuery().caseActivityId(ACTIVITY_ID).singleResult(); }
public void testQueryAuthenticatedTenant() { identityService.setAuthentication("user", null, Arrays.asList(TENANT_ONE)); HistoricCaseActivityInstanceQuery query = historyService.createHistoricCaseActivityInstanceQuery(); assertThat(query.count(), is(1L)); assertThat(query.tenantIdIn(TENANT_ONE).count(), is(1L)); assertThat(query.tenantIdIn(TENANT_TWO).count(), is(0L)); assertThat(query.tenantIdIn(TENANT_ONE, TENANT_TWO).count(), is(1L)); }
public HistoricCaseActivityInstanceDto getHistoricCaseActivityInstance() { HistoryService historyService = engine.getHistoryService(); HistoricCaseActivityInstance instance = historyService.createHistoricCaseActivityInstanceQuery() .caseActivityInstanceId(caseActivityInstanceId).singleResult(); if (instance == null) { throw new InvalidRequestException(Status.NOT_FOUND, "Historic case activity instance with id '" + caseActivityInstanceId + "' does not exist"); } return HistoricCaseActivityInstanceDto.fromHistoricCaseActivityInstance(instance); }
protected void verifyStringParameterQueryInvocations() { Map<String, String> stringQueryParameters = getCompleteStringQueryParameters(); verify(mockedQuery).caseActivityInstanceId(stringQueryParameters.get("caseActivityInstanceId")); verify(mockedQuery).caseInstanceId(stringQueryParameters.get("caseInstanceId")); verify(mockedQuery).caseDefinitionId(stringQueryParameters.get("caseDefinitionId")); verify(mockedQuery).caseExecutionId(stringQueryParameters.get("caseExecutionId")); verify(mockedQuery).caseActivityId(stringQueryParameters.get("caseActivityId")); verify(mockedQuery).caseActivityName(stringQueryParameters.get("caseActivityName")); verify(mockedQuery).caseActivityType(stringQueryParameters.get("caseActivityType")); verify(mockedQuery).list(); }
assertQuerySorting("id", historicQuery().orderByHistoricCaseActivityInstanceId(), task1.getId(), task2.getId(), task3.getId()); assertQuerySorting("caseInstanceId", historicQuery().orderByCaseInstanceId(), oneTaskCaseId, twoTaskCaseId, twoTaskCaseId); assertQuerySorting("caseExecutionId", historicQuery().orderByCaseExecutionId(), task1.getId(), task2.getId(), task3.getId()); assertQuerySorting("caseActivityId", historicQuery().orderByCaseActivityId(), taskId1, taskId1, taskId2); assertQuerySorting("caseActivityName", historicQuery().orderByCaseActivityName(), "A HumanTask", "A HumanTask", "Another HumanTask"); assertQuerySorting("caseDefinitionId", historicQuery().orderByCaseDefinitionId(), task1.getCaseDefinitionId(), task2.getCaseDefinitionId(), task3.getCaseDefinitionId()); HistoricCaseActivityInstance historicTask1 = query.caseInstanceId(oneTaskCaseId).caseActivityId(taskId1).singleResult(); HistoricCaseActivityInstance historicTask2 = query.caseInstanceId(twoTaskCaseId).caseActivityId(taskId1).singleResult(); HistoricCaseActivityInstance historicTask3 = query.caseInstanceId(twoTaskCaseId).caseActivityId(taskId2).singleResult(); assertQuerySorting("createTime", historicQuery().orderByHistoricCaseActivityInstanceCreateTime(), historicTask1.getCreateTime(), historicTask2.getCreateTime(), historicTask3.getCreateTime()); assertQuerySorting("endTime", historicQuery().orderByHistoricCaseActivityInstanceEndTime(), historicTask1.getEndTime(), historicTask2.getEndTime(), historicTask3.getEndTime()); assertQuerySorting("durationInMillis", historicQuery().orderByHistoricCaseActivityInstanceDuration(),
verify(mockedQuery).required(); verify(mockedQuery).ended(); verify(mockedQuery).notEnded(); verify(mockedQuery).available(); verify(mockedQuery).enabled(); verify(mockedQuery).disabled(); verify(mockedQuery).active(); verify(mockedQuery).completed(); verify(mockedQuery).terminated(); verify(mockedQuery).list();
@Deployment(resources = "org/camunda/bpm/engine/test/cmmn/required/RequiredRuleTest.testVariableBasedRule.cmmn") public void testQueryByRequired() { caseService.createCaseInstanceByKey("case", Collections.<String, Object>singletonMap("required", true)); HistoricCaseActivityInstanceQuery query = historyService .createHistoricCaseActivityInstanceQuery() .required(); assertEquals(1, query.count()); assertEquals(1, query.list().size()); HistoricCaseActivityInstance activityInstance = query.singleResult(); assertNotNull(activityInstance); assertTrue(activityInstance.isRequired()); }
@Deployment(resources = {"org/camunda/bpm/engine/test/cmmn/repetition/RepetitionRuleTest.testAutoCompleteStage.cmmn"}) public void testAutoCompleteStage() { // given createCaseInstance(); String humanTask1 = queryCaseExecutionByActivityId("PI_HumanTask_1").getId(); // when complete(humanTask1); // then HistoricCaseActivityInstanceQuery query = historicQuery().caseActivityId("PI_Stage_1"); assertEquals(1, query.count()); query = historicQuery().caseActivityId("PI_HumanTask_1"); assertEquals(1, query.count()); query = historicQuery().caseActivityId("PI_HumanTask_2"); assertEquals(2, query.count()); }
protected void verifyEndedParameterQueryInvocations() { Map<String, Date> finishedDateParameters = getCompleteEndedDateQueryParameters(); verify(mockedQuery).endedAfter(finishedDateParameters.get("endedAfter")); verify(mockedQuery).endedBefore(finishedDateParameters.get("endedBefore")); verify(mockedQuery).list(); }
protected void verifyCreateParameterQueryInvocations() { Map<String, Date> startDateParameters = getCompleteCreateDateQueryParameters(); verify(mockedQuery).createdAfter(startDateParameters.get("createdAfter")); verify(mockedQuery).createdBefore(startDateParameters.get("createdBefore")); verify(mockedQuery).list(); }
/** * Retrieve HistoricCaseActivityInstance for object under test from history database **/ protected HistoricCaseActivityInstance getHistoric() { Assertions.assertThat(actual).isNotNull(); HistoricCaseActivityInstance historicCaseActivityInstance = historicCaseActivityInstanceQuery().caseExecutionId(actual.getId()) .singleResult(); String message = "Please make sure you have set the history service of the engine to " + "at least level 'activity' or a higher level before making use of this assertion!"; Assertions.assertThat(historicCaseActivityInstance).overridingErrorMessage(message).isNotNull(); return historicCaseActivityInstance; }
public CountResultDto queryHistoricCaseActivityInstancesCount(HistoricCaseActivityInstanceQueryDto queryDto) { HistoricCaseActivityInstanceQuery query = queryDto.toQuery(processEngine); long count = query.count(); return new CountResultDto(count); } }
public void testInvalidSorting() { try { historicQuery().asc(); fail("Exception expected"); } catch (ProcessEngineException e) { // expected } try { historicQuery().desc(); fail("Exception expected"); } catch (ProcessEngineException e) { // expected } try { historicQuery().orderByHistoricCaseActivityInstanceId().count(); fail("Exception expected"); } catch (ProcessEngineException e) { // expected } }
public void testQuerySortingAsc() { List<HistoricCaseActivityInstance> historicCaseActivityInstances = historyService.createHistoricCaseActivityInstanceQuery() .orderByTenantId() .asc() .list(); assertThat(historicCaseActivityInstances.size(), is(2)); assertThat(historicCaseActivityInstances.get(0).getTenantId(), is(TENANT_ONE)); assertThat(historicCaseActivityInstances.get(1).getTenantId(), is(TENANT_TWO)); }
public void testQuerySortingDesc() { List<HistoricCaseActivityInstance> historicCaseActivityInstances = historyService.createHistoricCaseActivityInstanceQuery() .orderByTenantId() .desc() .list(); assertThat(historicCaseActivityInstances.size(), is(2)); assertThat(historicCaseActivityInstances.get(0).getTenantId(), is(TENANT_TWO)); assertThat(historicCaseActivityInstances.get(1).getTenantId(), is(TENANT_ONE)); }
public static void printCaseStatusAndTasklist(ProcessEngine processEngine) { System.out.println("Case Status:"); CaseService caseService = processEngine.getCaseService(); List<CaseExecution> caseExecutions = caseService.createCaseExecutionQuery().list(); for (CaseExecution caseExecution : caseExecutions) { if (caseExecution.isActive()) { System.out.println(" active: " + caseExecution.getActivityName() + " (" + caseExecution.getActivityType() + ")"); } else if (caseExecution.isEnabled()) { System.out.println(" enabled: " + caseExecution.getActivityName() + " (" + caseExecution.getActivityType() + ")"); } } HistoricCaseActivityInstanceQuery historicCaseActivityInstanceQuery = processEngine.getHistoryService().createHistoricCaseActivityInstanceQuery().ended(); System.out.println("Case History (" + historicCaseActivityInstanceQuery.count() + "):"); List<HistoricCaseActivityInstance> completedCaseActivities = historicCaseActivityInstanceQuery.list(); for (HistoricCaseActivityInstance completedCaseActivity : completedCaseActivities) { System.out.println(" ended: " + completedCaseActivity.getCaseActivityName() + " (" + completedCaseActivity.getCaseActivityType() + ")"); } TaskQuery taskQuery = processEngine.getTaskService().createTaskQuery(); System.out.println("Task List (" + taskQuery.count() + "):"); List<Task> tasklist = taskQuery.list(); for (Task task : tasklist) { System.out.println(" " + (task.getAssignee() == null ? "unassigned" : task.getAssignee()) + ": " + task.getName()); } System.out.println(); }
protected HistoricCaseActivityInstanceQuery setUpMockHistoricCaseActivityInstanceQuery(List<HistoricCaseActivityInstance> mockedHistoricCaseActivityInstances) { HistoricCaseActivityInstanceQuery mockedHistoricCaseActivityInstanceQuery = mock(HistoricCaseActivityInstanceQuery.class); when(mockedHistoricCaseActivityInstanceQuery.list()).thenReturn(mockedHistoricCaseActivityInstances); when(mockedHistoricCaseActivityInstanceQuery.count()).thenReturn((long) mockedHistoricCaseActivityInstances.size()); when(processEngine.getHistoryService().createHistoricCaseActivityInstanceQuery()).thenReturn(mockedHistoricCaseActivityInstanceQuery); return mockedHistoricCaseActivityInstanceQuery; }
@Deployment(resources = { "org/camunda/bpm/engine/test/cmmn/stage/AutoCompleteTest.testProcessTasksOnStage.cmmn", "org/camunda/bpm/engine/test/cmmn/stage/AutoCompleteTest.testProcessTasksOnStage.bpmn" }) @RequiredHistoryLevel(ProcessEngineConfiguration.HISTORY_FULL) public void testProcessTasksOnStage() { // given // when createCaseInstanceByKey(CASE_DEFINITION_KEY); List<HistoricCaseActivityInstance> historicCaseActivityInstances = historyService.createHistoricCaseActivityInstanceQuery() .caseActivityType("processTask") .list(); // then assertThat(historicCaseActivityInstances.size(), is(2)); }
public List<HistoricCaseActivityInstanceDto> queryHistoricCaseActivityInstances(HistoricCaseActivityInstanceQueryDto queryDto, Integer firstResult, Integer maxResults) { HistoricCaseActivityInstanceQuery query = queryDto.toQuery(processEngine); List<HistoricCaseActivityInstance> matchingHistoricCaseActivityInstances; if (firstResult != null || maxResults != null) { matchingHistoricCaseActivityInstances = executePaginatedQuery(query, firstResult, maxResults); } else { matchingHistoricCaseActivityInstances = query.list(); } List<HistoricCaseActivityInstanceDto> historicCaseActivityInstanceResults = new ArrayList<HistoricCaseActivityInstanceDto>(); for (HistoricCaseActivityInstance historicCaseActivityInstance : matchingHistoricCaseActivityInstances) { HistoricCaseActivityInstanceDto resultHistoricCaseActivityInstance = HistoricCaseActivityInstanceDto.fromHistoricCaseActivityInstance(historicCaseActivityInstance); historicCaseActivityInstanceResults.add(resultHistoricCaseActivityInstance); } return historicCaseActivityInstanceResults; }