private String getFirstTaskForm(long processInstanceId) { List<TaskSummary> tasks = taskClient.findTasksByStatusByProcessInstanceId(processInstanceId, null, 0, 10); assertNotNull(tasks); assertEquals(1, tasks.size()); Long taskId = tasks.get(0).getId(); return uiServicesClient.getTaskForm(CONTAINER_ID, taskId, "en"); } }
@Test public void testFindTaskWithTaskIdEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.TASKID, task.getId() ), task.getId() ); }
private void assertAndAcceptClaimOffer(String insured) throws Exception { changeUser(insured); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner(insured, 0, 10); assertNotNull(tasks); assertEquals(1, tasks.size()); assertTask(tasks.get(0), insured, "Present calculated claim", Status.Reserved.toString()); changeUser(TestConfig.getUsername()); // let's accept the calculated claim Map<String, Object> params = new HashMap<>(); params.put("accepted", true); taskClient.completeAutoProgress(CONTAINER_ID, tasks.get(0).getId(), insured, params); }
protected void runGetTaskFormTest(long processInstanceId) throws Exception { assertThat(processInstanceId).isGreaterThan(0); try { changeUser(USER_JOHN); List<TaskSummary> tasks = taskClient.findTasksByStatusByProcessInstanceId(processInstanceId, null, 0, 10); assertThat(tasks).isNotNull().hasSize(1); Long taskId = tasks.get(0).getId(); String result = uiServicesClient.getTaskForm(CONTAINER_ID, taskId, "en"); logger.debug("Form content is '{}'", result); assertThat(result).isNotNull().isNotEmpty(); } finally { changeUser(USER_YODA); processClient.abortProcessInstance(CONTAINER_ID, processInstanceId); } }
@Test public void testFindTaskWithCreatedByEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.CREATEDBY, USER_YODA ), task.getId() ); }
@Test public void testFindTaskWithDeploymentIdEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.DEPLOYMENTID, CONTAINER_ID ), task.getId() ); }
@Test public void testFindTaskWithProcessIdEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.PROCESSID, PROCESS_ID_USERTASK ), task.getId() ); }
@Test public void testFindTaskWithActualOwnerEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.ACTUALOWNER, USER_YODA ), task.getId() ); }
@Test public void testFindTaskWithPriorityGreaterThanFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterGreaterThan( TaskField.PRIORITY, -1 ), task.getId() ); }
@Test public void testFindTaskWithProcessInstanceIdEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.PROCESSINSTANCEID, processInstanceId ), task.getId() ); }
@Test public void testFindTaskWithNameEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.NAME, FIRST_TASK_NAME ), task.getId() ); }
@Test public void testFindTaskWithParentIdGreaterThanAndEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterGreaterThanAndEqualsTo( TaskField.PARENTID, -2, -1 ), task.getId() ); }
@Test public void testGetTaskRawFormViaUIClient() throws Exception { long processInstanceId = processClient.startProcess(CONTAINER_ID, HIRING_2_PROCESS_ID); assertThat(processInstanceId).isGreaterThan(0); try { List<TaskSummary> tasks = taskClient.findTasksByStatusByProcessInstanceId(processInstanceId, null, 0, 10); assertThat(tasks).isNotNull().hasSize(1); Long taskId = tasks.get(0).getId(); changeUser(USER_JOHN); String result = uiServicesClient.getTaskRawForm(CONTAINER_ID, taskId); logger.debug("Form content is '{}'", result); assertThat(result).isNotNull().isNotEmpty(); } finally { changeUser(USER_YODA); processClient.abortProcessInstance(CONTAINER_ID, processInstanceId); } }
@Test public void testFindTaskWithStatusEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.STATUS, task.getStatus() ), task.getId() ); }
@Test public void testFindTaskWithDescriptionEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterEqualsTo( TaskField.DESCRIPTION, task.getDescription() ), task.getId() ); }
@Test public void testFindTaskWithActivationTimeGreaterThanEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterGreaterThanOrEqualsTo( TaskField.ACTIVATIONTIME, subtractOneMinuteFromDate( task.getActivationTime() ) ), task.getId() ); }
private long assertTasksForBothRoles(String taskName, String insured, String insuranceRep, String status) throws Exception { changeUser(insured); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner(insured, 0, 10); assertNotNull(tasks); assertEquals(1, tasks.size()); assertTask(tasks.get(0), null, taskName, status); changeUser(insuranceRep); // the same task can be claimed by insuranceRepresentative in case claim is reported over phone tasks = taskClient.findTasksAssignedAsPotentialOwner(insuranceRep, 0, 10); assertNotNull(tasks); assertEquals(1, tasks.size()); assertTask(tasks.get(0), null, taskName, status); changeUser(TestConfig.getUsername()); return tasks.get(0).getId(); }
@Test public void testFindTaskWithCreatedOnGreaterThanOrEqualsToFilter() throws Exception { Long processInstanceId = processClient.startProcess( CONTAINER_ID, PROCESS_ID_USERTASK ); Assertions.assertThat( processInstanceId ).isNotNull(); List<TaskSummary> tasks = taskClient.findTasksAssignedAsPotentialOwner( USER_YODA, 0, 10 ); Assertions.assertThat( tasks ).isNotEmpty(); TaskSummary task = tasks.get( 0 ); testFindTaskInstanceWithSearchService( createQueryFilterGreaterThanOrEqualsTo( TaskField.CREATEDON, subtractOneMinuteFromDate( task.getCreatedOn() ) ) , task.getId() ); }
@Test public void testRemovePotentialOwnersWithBadContainerAlias() throws Exception { changeUser(USER_ADMINISTRATOR); Map<String, Object> parameters = new HashMap<>(); Long processInstanceId = null; try { processInstanceId = processClient.startProcess(CONTAINER_ID_V2, PROCESS_ID_EVALUATION, parameters); List<TaskSummary> tasks = taskClient.findTasksAssignedAsBusinessAdministrator(USER_ADMINISTRATOR, 0, 10); TaskSummary task = tasks.get(0); assertExceptionContainsCorrectMessage(() -> userTaskAdminClient.removePotentialOwnerUsers(CONTAINER_ID_ALIAS, task.getId(), USER_YODA), "Container '" + CONTAINER_ID_V2 + "' is not associated with alias '" + CONTAINER_ID_ALIAS + "'", "Container '" + CONTAINER_ID_V2 + "' is not associated with alias '" + CONTAINER_ID_ALIAS + "'"); } finally { if (processInstanceId != null) { processClient.abortProcessInstance(CONTAINER_ID_V2, processInstanceId); } } }
@Test public void testReassignNotStartedWithBadTimeFormat() throws Exception { changeUser(USER_ADMINISTRATOR); Map<String, Object> parameters = new HashMap<>(); Long processInstanceId = null; try { processInstanceId = processClient.startProcess(CONTAINER_ID, PROCESS_ID_EVALUATION, parameters); List<TaskSummary> tasks = taskClient.findTasksAssignedAsBusinessAdministrator(USER_ADMINISTRATOR, 0, 10); TaskSummary task = tasks.get(0); OrgEntities reassign = OrgEntities.builder().users(Arrays.asList(USER_JOHN)).build(); assertExceptionContainsCorrectMessage(() -> userTaskAdminClient.reassignWhenNotStarted(CONTAINER_ID, task.getId(), "2ssss", reassign), "Error code: 400", "Error parsing time string:"); } finally { if (processInstanceId != null) { processClient.abortProcessInstance(CONTAINER_ID, processInstanceId); } } }