use of org.kie.server.services.taskassigning.core.model.TaskAssigningSolution in project droolsjbpm-integration by kiegroup.
the class SolutionChangesBuilderTest method addRemoveReservedOrInProgressOrSuspendedTaskChangeWhenActualOwnerNotPresent.
private void addRemoveReservedOrInProgressOrSuspendedTaskChangeWhenActualOwnerNotPresent(Status status) {
TaskData taskData = mockTaskData(TASK_ID, NAME, status, null);
Task task = fromTaskData(taskData);
TaskAssigningSolution solution = mockSolution(Collections.singletonList(task), Collections.emptyList());
List<ProblemFactChange<TaskAssigningSolution>> result = SolutionChangesBuilder.create().withSolution(solution).withTasks(mockTaskDataList(taskData)).withUserSystem(userSystemService).withContext(context).build();
assertChangeIsTheChangeSetId(result, 0);
assertChange(result, 1, new RemoveTaskProblemFactChange(task));
assertTaskChangeRegistered(taskData.getTaskId(), taskData.getLastModificationDate());
}
use of org.kie.server.services.taskassigning.core.model.TaskAssigningSolution in project droolsjbpm-integration by kiegroup.
the class SolutionChangesBuilderTest method addPinReservedOrInProgressOrSuspendedTaskWhenPublishedAndNotYetPinned.
private void addPinReservedOrInProgressOrSuspendedTaskWhenPublishedAndNotYetPinned(Status status, boolean addActualOwnerToSolution) {
TaskData taskData = mockTaskData(TASK_ID, NAME, status, ACTUAL_OWNER_ENTITY_ID);
PlanningTask planningTask = mockPlanningTask(taskData.getTaskId(), true);
planningTask.setIndex(0);
taskData.setPlanningTask(planningTask);
Task task = fromTaskData(taskData);
task.setPinned(false);
User actualOwner = mockUser(ACTUAL_OWNER_ENTITY_ID);
task.setUser(actualOwner);
List<User> userList = new ArrayList<>();
if (addActualOwnerToSolution) {
userList.add(actualOwner);
}
TaskAssigningSolution solution = mockSolution(Collections.singletonList(task), userList);
List<ProblemFactChange<TaskAssigningSolution>> result = SolutionChangesBuilder.create().withSolution(solution).withTasks(mockTaskDataList(taskData)).withUserSystem(userSystemService).withContext(context).build();
assertChangeIsTheChangeSetId(result, 0);
assertChange(result, 1, new AssignTaskProblemFactChange(task, mockUser(ACTUAL_OWNER_ENTITY_ID), true));
assertTaskChangeRegistered(taskData.getTaskId(), taskData.getLastModificationDate());
}
use of org.kie.server.services.taskassigning.core.model.TaskAssigningSolution in project droolsjbpm-integration by kiegroup.
the class SolutionChangesBuilderTest method addNewReservedOrInProgressOrSuspendedTaskChangeWithActualOwnerInExternalSystem.
private void addNewReservedOrInProgressOrSuspendedTaskChangeWithActualOwnerInExternalSystem(Status status) {
TaskData taskData = mockTaskData(TASK_ID, NAME, status, USER_ENTITY_ID);
org.kie.server.services.taskassigning.user.system.api.User externalUser = mockExternalUser(USER_ENTITY_ID);
when(userSystemService.findUser(USER_ENTITY_ID)).thenReturn(externalUser);
TaskAssigningSolution solution = mockSolution(Collections.emptyList(), Collections.emptyList());
addNewReservedOrInProgressOrSuspendedTaskChangeWithActualOwner(solution, taskData);
verify(userSystemService).findUser(USER_ENTITY_ID);
}
use of org.kie.server.services.taskassigning.core.model.TaskAssigningSolution in project droolsjbpm-integration by kiegroup.
the class SolutionChangesBuilderTest method addUserPropertyChange.
private void addUserPropertyChange(User currentUser, org.kie.server.services.taskassigning.user.system.api.User externalUser, boolean shouldHaveChanged) {
List<User> userList = mockUserList(currentUser, mockUser("anotherUser"), mockUser("anotherUser1"));
org.kie.server.services.taskassigning.user.system.api.User externalUserRepeated1 = mockExternalUser(externalUser.getId());
org.kie.server.services.taskassigning.user.system.api.User newExternalUserRepeated2 = mockExternalUser(externalUser.getId());
List<org.kie.server.services.taskassigning.user.system.api.User> externalUserList = mockExternalUserList(externalUser, externalUserRepeated1, newExternalUserRepeated2);
TaskAssigningSolution solution = mockSolution(Collections.emptyList(), userList);
List<ProblemFactChange<TaskAssigningSolution>> result = SolutionChangesBuilder.create().withSolution(solution).withTasks(Collections.emptyList()).withUserSystem(userSystemService).withUsersUpdate(externalUserList).withContext(context).build();
User fromExternalUser = fromExternalUser(externalUser);
UserPropertyChangeProblemFactChange expected = new UserPropertyChangeProblemFactChange(currentUser, fromExternalUser.isEnabled(), fromExternalUser.getAttributes(), fromExternalUser.getAllLabelValues(), fromExternalUser.getGroups());
if (shouldHaveChanged) {
assertChangeIsTheChangeSetId(result, 0);
assertOneChange(result, 1, expected);
UserPropertyChangeProblemFactChange createdChange = (UserPropertyChangeProblemFactChange) result.get(1);
assertEquals(expected.getUser().getEntityId(), createdChange.getUser().getEntityId());
assertEquals(expected.isEnabled(), createdChange.isEnabled());
assertEquals(expected.getAttributes(), createdChange.getAttributes());
assertEquals(expected.getGroups(), createdChange.getGroups());
assertEquals(expected.getLabelValues(), createdChange.getLabelValues());
} else {
assertNoChange(result, UserPropertyChangeProblemFactChange.class);
}
}
use of org.kie.server.services.taskassigning.core.model.TaskAssigningSolution in project droolsjbpm-integration by kiegroup.
the class SolutionChangesBuilderTest method addNewReservedOrInProgressOrSuspendedTaskChangeWithActualOwnerInSolution.
private void addNewReservedOrInProgressOrSuspendedTaskChangeWithActualOwnerInSolution(Status status) {
TaskData taskData = mockTaskData(TASK_ID, NAME, status, USER_ENTITY_ID);
TaskAssigningSolution solution = mockSolution(Collections.emptyList(), Collections.singletonList(mockUser(USER_ENTITY_ID)));
addNewReservedOrInProgressOrSuspendedTaskChangeWithActualOwner(solution, taskData);
}
Aggregations