@Override public void release(long taskId, String userId) { synchronized (ksession) { taskService.release(taskId, userId); } }
@Test public void testAssignmentAfterRelease() { String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { } ), "; str += "peopleAssignments = (with ( new PeopleAssignments() ) { potentialOwners = [new User('Bobba Fet'), new User('Darth Vader'), new User('Luke Cage') ],businessAdministrators = [ new User('Administrator') ],}),"; str += "name = 'This is my task name' })"; createAndAssertTask(str, "Bobba Fet", 3, "Bobba Fet", "Darth Vader", "Luke Cage"); // another task createAndAssertTask(str, "Darth Vader", 3, "Bobba Fet", "Darth Vader", "Luke Cage"); // now Darth Vader completes his task List<TaskSummary> tasks = taskService.getTasksOwned("Darth Vader", "en-UK"); assertEquals(1, tasks.size()); long taskId = tasks.get(0).getId(); // Luke should not have any tasks tasks = taskService.getTasksOwned("Luke Cage", "en-UK"); assertEquals(0, tasks.size()); // Darth Vader releases the task so Luke should get it taskService.release(taskId, "Darth Vader"); tasks = taskService.getTasksOwned("Luke Cage", "en-UK"); assertEquals(1, tasks.size()); }
@Test public void testReleaseTask() { final String taskString = createTaskString(MULTI_ACTOR_ASSIGNMENTS, "MultiActorRoundRobinTask"); long taskId = createAndAssertTask(taskString, BOBBA_FET, 3, BOBBA_FET, DARTH_VADER, LUKE_CAGE); taskService.release(taskId, BOBBA_FET); Task task = taskService.getTaskById(taskId); assertActualOwner(task, DARTH_VADER); createAndAssertTask(taskString, LUKE_CAGE, 3, BOBBA_FET, DARTH_VADER, LUKE_CAGE); }
assertBAMTask(taskId, "Reserved"); taskService.release(taskId, "Darth Vader");
@Test public void testReleaseTask() { final String taskString = createTaskString(MULTI_ACTOR_ASSIGNMENTS, "MultiActorLoadBalancingTask"); long bobbasTaskId = createAndAssertTask(taskString, BOBBA_FET, 3, BOBBA_FET, DARTH_VADER, LUKE_CAGE); long vaderTaskId = createAndAssertTask(taskString, DARTH_VADER, 3, BOBBA_FET); taskService.release(bobbasTaskId, BOBBA_FET); Task bobbasTask = taskService.getTaskById(bobbasTaskId); Task vaderTask = taskService.getTaskById(vaderTaskId); assertActualOwner(bobbasTask, LUKE_CAGE); assertActualOwner(vaderTask, DARTH_VADER); }
taskService.release(taskId, "Bobba Fet");
assertBAMTask(taskId, "Reserved"); taskService.release(taskId, "Darth Vader");
assertBAMTask(taskId, "Reserved"); taskService.release(taskId, "Darth Vader");
assertBAMTask(taskId, "Reserved"); taskService.release(taskId, "Darth Vader");
public void testReleaseFromReserved() { // One potential owner, should go straight to state Reserved String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { } ), "; str += "peopleAssignments = (with ( new PeopleAssignments() ) { potentialOwners = [new User('Bobba Fet'), new User('Darth Vader') ],businessAdministrators = [ new User('Administrator') ], }),"; str += "name = 'This is my task name'})"; Task task = TaskFactory.evalTask(new StringReader(str)); taskService.addTask(task, new HashMap<String, Object>()); long taskId = task.getId(); // Go straight from Ready to Inprogress taskService.claim(taskId, "Darth Vader"); Task task1 = taskService.getTaskById(taskId); assertEquals(Status.Reserved, task1.getTaskData().getStatus()); assertEquals("Darth Vader", task1.getTaskData().getActualOwner().getId()); // Check is Released taskService.release(taskId, "Darth Vader"); Task task2 = taskService.getTaskById(taskId); assertEquals(Status.Ready, task2.getTaskData().getStatus()); assertNull(task2.getTaskData().getActualOwner()); }
@Test public void testReleaseFromInprogress() throws Exception { // One potential owner, should go straight to state Reserved String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { } ), "; str += "peopleAssignments = (with ( new PeopleAssignments() ) { potentialOwners = [new User('Bobba Fet'), new User('Darth Vader') ],businessAdministrators = [ new User('Administrator') ], }),"; str += "name = 'This is my task name' })"; Task task = TaskFactory.evalTask(new StringReader(str)); taskService.addTask(task, new HashMap<String, Object>()); long taskId = task.getId(); // Go straight from Ready to Inprogress taskService.start(taskId, "Darth Vader"); taskService.getTaskById(taskId); Task task1 = taskService.getTaskById(taskId); assertEquals(Status.InProgress, task1.getTaskData().getStatus()); assertEquals("Darth Vader", task1.getTaskData().getActualOwner().getId()); // Check is Released taskService.release(taskId, "Darth Vader"); Task task2 = taskService.getTaskById(taskId); assertEquals(Status.Ready, task2.getTaskData().getStatus()); assertNull(task2.getTaskData().getActualOwner()); }
assertTrue(allGroupAuditTasks.get(0).getStatusId().equals("Reserved")); taskService.release(taskId, "Darth Vader");
@Test public void testReleaseWithIncorrectUser() { // One potential owner, should go straight to state Reserved String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { } ), "; str += "peopleAssignments = (with ( new PeopleAssignments() ) { potentialOwners = [new User('Bobba Fet'), new User('Darth Vader') ],businessAdministrators = [ new User('Administrator') ], }),"; str += "name = 'This is my task name' })"; Task task = TaskFactory.evalTask(new StringReader(str)); taskService.addTask(task, new HashMap<String, Object>()); long taskId = task.getId(); // Go straight from Ready to Inprogress taskService.claim(taskId, "Darth Vader"); Task task1 = taskService.getTaskById(taskId); assertEquals(Status.Reserved, task1.getTaskData().getStatus()); assertEquals("Darth Vader", task1.getTaskData().getActualOwner().getId()); // Check is not changed PermissionDeniedException denied = null; try { taskService.release(taskId, "Bobba Fet"); } catch (PermissionDeniedException e) { denied = e; } assertNotNull("Should get permissed denied exception", denied); Task task2 = taskService.getTaskById(taskId); assertEquals(Status.Reserved, task2.getTaskData().getStatus()); assertEquals("Darth Vader", task2.getTaskData().getActualOwner().getId()); }
@Override public void release(long taskId, String userId) { synchronized (ksession) { taskService.release(taskId, userId); } }
assertBAMTask(taskId, "Reserved"); taskService.release(taskId, "Darth Vader");
assertBAMTask(taskId, "Reserved"); taskService.release(taskId, "Darth Vader");
assertBAMTask(taskId, "Reserved"); taskService.release(taskId, "Darth Vader");
assertBAMTask(taskId, "Reserved"); taskService.release(taskId, "Darth Vader");
assertTrue(allGroupAuditTasks.get(0).getStatusId().equals("Reserved")); taskService.release(taskId, "Darth Vader");