@Override protected void applySortBy(UserOperationLogQuery query, String sortBy, Map<String, Object> parameters, ProcessEngine engine) { if (TIMESTAMP.equals(sortBy)) { query.orderByTimestamp(); } }
@Override protected void applySortBy(UserOperationLogQuery query, String sortBy, Map<String, Object> parameters, ProcessEngine engine) { if (TIMESTAMP.equals(sortBy)) { query.orderByTimestamp(); } }
@Test public void testEmptyQuery() { expect().statusCode(Status.OK.getStatusCode()) .when().get(USER_OPERATION_LOG_RESOURCE_URL); verify(queryMock, never()).deploymentId(anyString()); verify(queryMock, never()).processDefinitionId(anyString()); verify(queryMock, never()).processDefinitionKey(anyString()); verify(queryMock, never()).processInstanceId(anyString()); verify(queryMock, never()).executionId(anyString()); verify(queryMock, never()).caseDefinitionId(anyString()); verify(queryMock, never()).caseInstanceId(anyString()); verify(queryMock, never()).caseExecutionId(anyString()); verify(queryMock, never()).taskId(anyString()); verify(queryMock, never()).jobId(anyString()); verify(queryMock, never()).jobDefinitionId(anyString()); verify(queryMock, never()).batchId(anyString()); verify(queryMock, never()).userId(anyString()); verify(queryMock, never()).operationId(anyString()); verify(queryMock, never()).operationType(anyString()); verify(queryMock, never()).entityType(anyString()); verify(queryMock, never()).property(anyString()); verify(queryMock, never()).afterTimestamp(any(Date.class)); verify(queryMock, never()).beforeTimestamp(any(Date.class)); verify(queryMock, never()).orderByTimestamp(); verify(queryMock, never()).asc(); verify(queryMock, never()).desc(); verify(queryMock).list(); }
@Test public void testSortByTimestampDescending() { given() .queryParam("sortBy", "timestamp") .queryParam("sortOrder", "desc") .expect().statusCode(Status.OK.getStatusCode()) .when().get(USER_OPERATION_LOG_RESOURCE_URL); verify(queryMock).orderByTimestamp(); verify(queryMock).desc(); verify(queryMock, never()).asc(); }
@Test public void testSortByTimestampAscending() { given() .queryParam("sortBy", "timestamp") .queryParam("sortOrder", "asc") .expect().statusCode(Status.OK.getStatusCode()) .when().get(USER_OPERATION_LOG_RESOURCE_URL); verify(queryMock).orderByTimestamp(); verify(queryMock).asc(); verify(queryMock, never()).desc(); }
@Override protected void applySortBy(UserOperationLogQuery query, String sortBy, Map<String, Object> parameters, ProcessEngine engine) { if (TIMESTAMP.equals(sortBy)) { query.orderByTimestamp(); } }
@Deployment(resources = {"org/camunda/bpm/engine/test/history/asyncTaskProcess.bpmn20.xml"}) public void testOverwriteOverridingPriority() { // given a job definition JobDefinition jobDefinition = managementService.createJobDefinitionQuery().singleResult(); // with an overriding priority ClockUtil.setCurrentTime(new Date(System.currentTimeMillis())); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 42); // when I overwrite that priority ClockUtil.setCurrentTime(new Date(System.currentTimeMillis() + 10000)); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 43); // then this is accessible via the op log UserOperationLogEntry userOperationLogEntry = historyService.createUserOperationLogQuery() .orderByTimestamp().desc().listPage(0, 1).get(0); assertNotNull(userOperationLogEntry); assertEquals(EntityTypes.JOB_DEFINITION, userOperationLogEntry.getEntityType()); assertEquals(jobDefinition.getId(), userOperationLogEntry.getJobDefinitionId()); assertEquals(UserOperationLogEntry.OPERATION_TYPE_SET_PRIORITY, userOperationLogEntry.getOperationType()); assertEquals("overridingPriority", userOperationLogEntry.getProperty()); assertEquals("43", userOperationLogEntry.getNewValue()); assertEquals("42", userOperationLogEntry.getOrgValue()); }
@Deployment(resources = {"org/camunda/bpm/engine/test/history/oneTaskProcess.bpmn20.xml"}) public void testSetPriority() { startTestProcess(); // then: set the priority of the task to 10 taskService.setPriority(task.getId(), 10); // expect: one entry for the priority update UserOperationLogQuery query = queryOperationDetails(OPERATION_TYPE_SET_PRIORITY); assertEquals(1, query.count()); // assert: correct priority set UserOperationLogEntry userOperationLogEntry = query.singleResult(); assertEquals(PRIORITY, userOperationLogEntry.getProperty()); // note: 50 is the default task priority assertEquals(50, Integer.parseInt(userOperationLogEntry.getOrgValue())); assertEquals(10, Integer.parseInt(userOperationLogEntry.getNewValue())); // move clock by 5 minutes Date date = DateTimeUtil.now().plusMinutes(5).toDate(); ClockUtil.setCurrentTime(date); // then: set priority again taskService.setPriority(task.getId(), 75); // expect: one entry for the priority update query = queryOperationDetails(OPERATION_TYPE_SET_PRIORITY); assertEquals(2, query.count()); // assert: correct priority set userOperationLogEntry = query.orderByTimestamp().asc().list().get(1); assertEquals(PRIORITY, userOperationLogEntry.getProperty()); assertEquals(10, Integer.parseInt(userOperationLogEntry.getOrgValue())); assertEquals(75, Integer.parseInt(userOperationLogEntry.getNewValue())); }
@Deployment(resources = {"org/camunda/bpm/engine/test/history/asyncTaskProcess.bpmn20.xml"}) public void testClearOverridingPriority() { // given a job definition JobDefinition jobDefinition = managementService.createJobDefinitionQuery().singleResult(); // with an overriding priority ClockUtil.setCurrentTime(new Date(System.currentTimeMillis())); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 42); // when I clear that priority ClockUtil.setCurrentTime(new Date(System.currentTimeMillis() + 10000)); managementService.clearOverridingJobPriorityForJobDefinition(jobDefinition.getId()); // then this is accessible via the op log UserOperationLogEntry userOperationLogEntry = historyService.createUserOperationLogQuery() .orderByTimestamp().desc().listPage(0, 1).get(0); assertNotNull(userOperationLogEntry); assertEquals(EntityTypes.JOB_DEFINITION, userOperationLogEntry.getEntityType()); assertEquals(jobDefinition.getId(), userOperationLogEntry.getJobDefinitionId()); assertEquals(UserOperationLogEntry.OPERATION_TYPE_SET_PRIORITY, userOperationLogEntry.getOperationType()); assertEquals("overridingPriority", userOperationLogEntry.getProperty()); assertNull(userOperationLogEntry.getNewValue()); assertEquals("42", userOperationLogEntry.getOrgValue()); assertEquals(USER_ID, userOperationLogEntry.getUserId()); assertEquals(jobDefinition.getProcessDefinitionId(), userOperationLogEntry.getProcessDefinitionId()); assertEquals(jobDefinition.getProcessDefinitionKey(), userOperationLogEntry.getProcessDefinitionKey()); assertEquals(deploymentId, userOperationLogEntry.getDeploymentId()); }
List<UserOperationLogEntry> ascLog = query().orderByTimestamp().asc().list(); for (int i = 0; i < 4; i++) { assertTrue(yesterday.getTime()<=ascLog.get(i).getTimestamp().getTime()); List<UserOperationLogEntry> descLog = query().orderByTimestamp().desc().list(); for (int i = 0; i < 4; i++) { assertTrue(tomorrow.getTime()<=descLog.get(i).getTimestamp().getTime());
@Deployment(resources = {"org/camunda/bpm/engine/test/history/asyncTaskProcess.bpmn20.xml"}) public void testOverwriteOverridingPriority() { // given a job definition JobDefinition jobDefinition = managementService.createJobDefinitionQuery().singleResult(); // with an overriding priority ClockUtil.setCurrentTime(new Date(System.currentTimeMillis())); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 42); // when I overwrite that priority ClockUtil.setCurrentTime(new Date(System.currentTimeMillis() + 10000)); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 43); // then this is accessible via the op log UserOperationLogEntry userOperationLogEntry = historyService.createUserOperationLogQuery() .orderByTimestamp().desc().listPage(0, 1).get(0); assertNotNull(userOperationLogEntry); assertEquals(EntityTypes.JOB_DEFINITION, userOperationLogEntry.getEntityType()); assertEquals(jobDefinition.getId(), userOperationLogEntry.getJobDefinitionId()); assertEquals(UserOperationLogEntry.OPERATION_TYPE_SET_PRIORITY, userOperationLogEntry.getOperationType()); assertEquals("overridingPriority", userOperationLogEntry.getProperty()); assertEquals("43", userOperationLogEntry.getNewValue()); assertEquals("42", userOperationLogEntry.getOrgValue()); }
@Deployment(resources = {"org/camunda/bpm/engine/test/history/oneTaskProcess.bpmn20.xml"}) public void testSetPriority() { startTestProcess(); // then: set the priority of the task to 10 taskService.setPriority(task.getId(), 10); // expect: one entry for the priority update UserOperationLogQuery query = queryOperationDetails(OPERATION_TYPE_SET_PRIORITY); assertEquals(1, query.count()); // assert: correct priority set UserOperationLogEntry userOperationLogEntry = query.singleResult(); assertEquals(PRIORITY, userOperationLogEntry.getProperty()); // note: 50 is the default task priority assertEquals(50, Integer.parseInt(userOperationLogEntry.getOrgValue())); assertEquals(10, Integer.parseInt(userOperationLogEntry.getNewValue())); // move clock by 5 minutes Date date = DateTimeUtil.now().plusMinutes(5).toDate(); ClockUtil.setCurrentTime(date); // then: set priority again taskService.setPriority(task.getId(), 75); // expect: one entry for the priority update query = queryOperationDetails(OPERATION_TYPE_SET_PRIORITY); assertEquals(2, query.count()); // assert: correct priority set userOperationLogEntry = query.orderByTimestamp().asc().list().get(1); assertEquals(PRIORITY, userOperationLogEntry.getProperty()); assertEquals(10, Integer.parseInt(userOperationLogEntry.getOrgValue())); assertEquals(75, Integer.parseInt(userOperationLogEntry.getNewValue())); }
@Deployment(resources = {"org/camunda/bpm/engine/test/history/asyncTaskProcess.bpmn20.xml"}) public void testClearOverridingPriority() { // given a job definition JobDefinition jobDefinition = managementService.createJobDefinitionQuery().singleResult(); // with an overriding priority ClockUtil.setCurrentTime(new Date(System.currentTimeMillis())); managementService.setOverridingJobPriorityForJobDefinition(jobDefinition.getId(), 42); // when I clear that priority ClockUtil.setCurrentTime(new Date(System.currentTimeMillis() + 10000)); managementService.clearOverridingJobPriorityForJobDefinition(jobDefinition.getId()); // then this is accessible via the op log UserOperationLogEntry userOperationLogEntry = historyService.createUserOperationLogQuery() .orderByTimestamp().desc().listPage(0, 1).get(0); assertNotNull(userOperationLogEntry); assertEquals(EntityTypes.JOB_DEFINITION, userOperationLogEntry.getEntityType()); assertEquals(jobDefinition.getId(), userOperationLogEntry.getJobDefinitionId()); assertEquals(UserOperationLogEntry.OPERATION_TYPE_SET_PRIORITY, userOperationLogEntry.getOperationType()); assertEquals("overridingPriority", userOperationLogEntry.getProperty()); assertNull(userOperationLogEntry.getNewValue()); assertEquals("42", userOperationLogEntry.getOrgValue()); assertEquals(USER_ID, userOperationLogEntry.getUserId()); assertEquals(jobDefinition.getProcessDefinitionId(), userOperationLogEntry.getProcessDefinitionId()); assertEquals(jobDefinition.getProcessDefinitionKey(), userOperationLogEntry.getProcessDefinitionKey()); assertEquals(deploymentId, userOperationLogEntry.getDeploymentId()); }
List<UserOperationLogEntry> ascLog = query().orderByTimestamp().asc().list(); for (int i = 0; i < 4; i++) { assertTrue(yesterday.getTime()<=ascLog.get(i).getTimestamp().getTime()); List<UserOperationLogEntry> descLog = query().orderByTimestamp().desc().list(); for (int i = 0; i < 4; i++) { assertTrue(tomorrow.getTime()<=descLog.get(i).getTimestamp().getTime());