@Test public void shouldResolveIdentityLink_AddCandidateUser() { // given testRule.deploy(CALLING_PROCESS); testRule.deploy(CALLED_PROCESS); ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(CALLING_PROCESS_KEY); // when taskService.addCandidateUser(taskService.createTaskQuery().singleResult().getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); // then assertThat(historicIdentityLinkLog.getRootProcessInstanceId(), is(processInstance.getProcessInstanceId())); }
@Test public void shouldResolveIdentityLink_AddCandidateUser() { // given ClockUtil.setCurrentTime(START_DATE); testRule.deploy(CALLING_PROCESS); testRule.deploy(CALLED_PROCESS); ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(CALLING_PROCESS_KEY); // when taskService.addCandidateUser(taskService.createTaskQuery().singleResult().getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); Date removalTime = addDays(START_DATE, 5); // then assertThat(historicIdentityLinkLog.getRemovalTime(), is(removalTime)); }
@Test public void shouldResolveIdentityLink_AddCandidateUser() { // given testRule.deploy(CALLING_PROCESS); testRule.deploy(CALLED_PROCESS); ClockUtil.setCurrentTime(START_DATE); runtimeService.startProcessInstanceByKey(CALLING_PROCESS_KEY); String taskId = taskService.createTaskQuery().singleResult().getId(); taskService.addCandidateUser(taskId, "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog.getRemovalTime(), nullValue()); ClockUtil.setCurrentTime(END_DATE); // when taskService.complete(taskId); historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); Date removalTime = addDays(END_DATE, 5); // then assertThat(historicIdentityLinkLog.getRemovalTime(), is(removalTime)); }
@Test public void shouldNotResolveIdentityLink_AddCandidateUser() { // given Task aTask = taskService.newTask(); taskService.saveTask(aTask); // when taskService.addCandidateUser(aTask.getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); // then assertThat(historicIdentityLinkLog.getRootProcessInstanceId(), nullValue()); // cleanup taskService.complete(aTask.getId()); clearHistoricTaskInst(aTask.getId()); }
/** * See https://app.camunda.com/jira/browse/CAM-9505 */ @Test public void shouldResolveIdentityLinkWithTimePreserved() { // given testRule.deploy(CALLING_PROCESS); testRule.deploy(CALLED_PROCESS); ClockUtil.setCurrentTime(START_DATE); runtimeService.startProcessInstanceByKey(CALLING_PROCESS_KEY); String taskId = taskService.createTaskQuery().singleResult().getId(); taskService.addCandidateUser(taskId, "aUserId"); // when taskService.complete(taskId); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // then assertThat(historicIdentityLinkLog.getTime(), is(START_DATE)); }
@Test public void shouldNotResolveIdentityLink_AddCandidateUser() { // given ClockUtil.setCurrentTime(START_DATE); Task aTask = taskService.newTask(); taskService.saveTask(aTask); // when taskService.addCandidateUser(aTask.getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); // then assertThat(historicIdentityLinkLog.getRemovalTime(), nullValue()); // cleanup taskService.complete(aTask.getId()); clearHistoricTaskInst(aTask.getId()); }
@Test public void addandDeleteHistoricIdentityLinkForSingleTenant() { startProcessInstanceForTenant(TENANT_1); HistoricIdentityLinkLog historicIdentityLink = historyService .createHistoricIdentityLinkLogQuery() .singleResult(); taskService.deleteCandidateUser(historicIdentityLink.getTaskId(), A_USER_ID); HistoricIdentityLinkLogQuery query = historyService.createHistoricIdentityLinkLogQuery(); assertEquals(query.tenantIdIn(TENANT_1).count(), 2); }
@Test public void shouldNotResolveIdentityLink_AddCandidateUser() { // given ClockUtil.setCurrentTime(END_DATE); Task aTask = taskService.newTask(); taskService.saveTask(aTask); // when taskService.addCandidateUser(aTask.getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); // then assertThat(historicIdentityLinkLog.getRemovalTime(), nullValue()); // cleanup taskService.complete(aTask.getId()); clearHistoricTaskInst(aTask.getId()); }
@Test public void historicIdentityLinkForMultipleTenant() { startProcessInstanceForTenant(TENANT_1); // Query test HistoricIdentityLinkLog historicIdentityLink = historyService .createHistoricIdentityLinkLogQuery() .singleResult(); assertEquals(historicIdentityLink.getTenantId(), TENANT_1); // start process instance for another tenant startProcessInstanceForTenant(TENANT_2); // Query test List<HistoricIdentityLinkLog> historicIdentityLinks = historyService .createHistoricIdentityLinkLogQuery() .list(); assertEquals(historicIdentityLinks.size(), 2); HistoricIdentityLinkLogQuery query = historyService.createHistoricIdentityLinkLogQuery(); assertEquals(query.tenantIdIn(TENANT_1).count(), 1); query = historyService.createHistoricIdentityLinkLogQuery(); assertEquals(query.tenantIdIn(TENANT_2).count(), 1); }
@Deployment(resources = { "org/camunda/bpm/engine/test/api/runtime/oneTaskProcess.bpmn20.xml" }) public void testGroupQueryTaskCandidateForAddAndDeleteIdentityLink() { List<HistoricIdentityLinkLog> historicIdentityLinks = historyService.createHistoricIdentityLinkLogQuery().list(); assertEquals(historicIdentityLinks.size(), 0); // given ProcessInstance processInstance = startProcessInstance(PROCESS_DEFINITION_KEY); String taskId = taskService.createTaskQuery().singleResult().getId(); // if identityService.setAuthenticatedUserId(A_ASSIGNER_ID); taskService.addCandidateGroup(taskId, A_GROUP_ID); // Query test HistoricIdentityLinkLog historicIdentityLink = historyService.createHistoricIdentityLinkLogQuery().singleResult(); assertEquals(historicIdentityLink.getUserId(), null); assertEquals(historicIdentityLink.getTaskId(), taskId); assertEquals(historicIdentityLink.getType(), IdentityLinkType.CANDIDATE); assertEquals(historicIdentityLink.getAssignerId(), A_ASSIGNER_ID); assertEquals(historicIdentityLink.getGroupId(), A_GROUP_ID); assertEquals(historicIdentityLink.getOperationType(), IDENTITY_LINK_ADD); assertEquals(historicIdentityLink.getProcessDefinitionId(), processInstance.getProcessDefinitionId()); assertEquals(historicIdentityLink.getProcessDefinitionKey(), PROCESS_DEFINITION_KEY); }
@Deployment(resources = { "org/camunda/bpm/engine/test/api/runtime/oneTaskProcess.bpmn20.xml" }) public void testQueryAddTaskCandidateforAddIdentityLink() { List<HistoricIdentityLinkLog> historicIdentityLinks = historyService.createHistoricIdentityLinkLogQuery().list(); assertEquals(historicIdentityLinks.size(), 0); // given ProcessInstance processInstance = startProcessInstance(PROCESS_DEFINITION_KEY); String taskId = taskService.createTaskQuery().singleResult().getId(); // if identityService.setAuthenticatedUserId(A_ASSIGNER_ID); taskService.addCandidateUser(taskId, A_USER_ID); // Query test HistoricIdentityLinkLog historicIdentityLink = historyService.createHistoricIdentityLinkLogQuery().singleResult(); assertEquals(historicIdentityLink.getUserId(), A_USER_ID); assertEquals(historicIdentityLink.getTaskId(), taskId); assertEquals(historicIdentityLink.getType(), IdentityLinkType.CANDIDATE); assertEquals(historicIdentityLink.getAssignerId(), A_ASSIGNER_ID); assertEquals(historicIdentityLink.getGroupId(), null); assertEquals(historicIdentityLink.getOperationType(), IDENTITY_LINK_ADD); assertEquals(historicIdentityLink.getProcessDefinitionId(), processInstance.getProcessDefinitionId()); assertEquals(historicIdentityLink.getProcessDefinitionKey(), PROCESS_DEFINITION_KEY); }
@Test public void shouldResolveIdentityLink_AddCandidateUser() { // given testRule.deploy(CALLING_PROCESS); testRule.deploy(CALLED_PROCESS); ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(CALLING_PROCESS_KEY); // when taskService.addCandidateUser(taskService.createTaskQuery().singleResult().getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); // then assertThat(historicIdentityLinkLog.getRootProcessInstanceId(), is(processInstance.getProcessInstanceId())); }
@Test public void shouldResolveIdentityLink_AddCandidateUser() { // given ClockUtil.setCurrentTime(START_DATE); testRule.deploy(CALLING_PROCESS); testRule.deploy(CALLED_PROCESS); ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(CALLING_PROCESS_KEY); // when taskService.addCandidateUser(taskService.createTaskQuery().singleResult().getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); Date removalTime = addDays(START_DATE, 5); // then assertThat(historicIdentityLinkLog.getRemovalTime(), is(removalTime)); }
@Test public void shouldResolveIdentityLink_AddCandidateUser() { // given testRule.deploy(CALLING_PROCESS); testRule.deploy(CALLED_PROCESS); ClockUtil.setCurrentTime(START_DATE); runtimeService.startProcessInstanceByKey(CALLING_PROCESS_KEY); String taskId = taskService.createTaskQuery().singleResult().getId(); taskService.addCandidateUser(taskId, "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog.getRemovalTime(), nullValue()); ClockUtil.setCurrentTime(END_DATE); // when taskService.complete(taskId); historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); Date removalTime = addDays(END_DATE, 5); // then assertThat(historicIdentityLinkLog.getRemovalTime(), is(removalTime)); }
/** * See https://app.camunda.com/jira/browse/CAM-9505 */ @Test public void shouldResolveIdentityLinkWithTimePreserved() { // given testRule.deploy(CALLING_PROCESS); testRule.deploy(CALLED_PROCESS); ClockUtil.setCurrentTime(START_DATE); runtimeService.startProcessInstanceByKey(CALLING_PROCESS_KEY); String taskId = taskService.createTaskQuery().singleResult().getId(); taskService.addCandidateUser(taskId, "aUserId"); // when taskService.complete(taskId); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // then assertThat(historicIdentityLinkLog.getTime(), is(START_DATE)); }
@Test public void shouldNotResolveIdentityLink_AddCandidateUser() { // given Task aTask = taskService.newTask(); taskService.saveTask(aTask); // when taskService.addCandidateUser(aTask.getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); // then assertThat(historicIdentityLinkLog.getRootProcessInstanceId(), nullValue()); // cleanup taskService.complete(aTask.getId()); clearHistoricTaskInst(aTask.getId()); }
@Test public void shouldNotResolveIdentityLink_AddCandidateUser() { // given ClockUtil.setCurrentTime(START_DATE); Task aTask = taskService.newTask(); taskService.saveTask(aTask); // when taskService.addCandidateUser(aTask.getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); // then assertThat(historicIdentityLinkLog.getRemovalTime(), nullValue()); // cleanup taskService.complete(aTask.getId()); clearHistoricTaskInst(aTask.getId()); }
@Test public void shouldNotResolveIdentityLink_AddCandidateUser() { // given ClockUtil.setCurrentTime(END_DATE); Task aTask = taskService.newTask(); taskService.saveTask(aTask); // when taskService.addCandidateUser(aTask.getId(), "aUserId"); HistoricIdentityLinkLog historicIdentityLinkLog = historyService.createHistoricIdentityLinkLogQuery().singleResult(); // assume assertThat(historicIdentityLinkLog, notNullValue()); // then assertThat(historicIdentityLinkLog.getRemovalTime(), nullValue()); // cleanup taskService.complete(aTask.getId()); clearHistoricTaskInst(aTask.getId()); }
@Test public void addandDeleteHistoricIdentityLinkForSingleTenant() { startProcessInstanceForTenant(TENANT_1); HistoricIdentityLinkLog historicIdentityLink = historyService .createHistoricIdentityLinkLogQuery() .singleResult(); taskService.deleteCandidateUser(historicIdentityLink.getTaskId(), A_USER_ID); HistoricIdentityLinkLogQuery query = historyService.createHistoricIdentityLinkLogQuery(); assertEquals(query.tenantIdIn(TENANT_1).count(), 2); }
@Test public void historicIdentityLinkForMultipleTenant() { startProcessInstanceForTenant(TENANT_1); // Query test HistoricIdentityLinkLog historicIdentityLink = historyService .createHistoricIdentityLinkLogQuery() .singleResult(); assertEquals(historicIdentityLink.getTenantId(), TENANT_1); // start process instance for another tenant startProcessInstanceForTenant(TENANT_2); // Query test List<HistoricIdentityLinkLog> historicIdentityLinks = historyService .createHistoricIdentityLinkLogQuery() .list(); assertEquals(historicIdentityLinks.size(), 2); HistoricIdentityLinkLogQuery query = historyService.createHistoricIdentityLinkLogQuery(); assertEquals(query.tenantIdIn(TENANT_1).count(), 1); query = historyService.createHistoricIdentityLinkLogQuery(); assertEquals(query.tenantIdIn(TENANT_2).count(), 1); }