use of org.kie.kogito.taskassigning.core.model.TaskAssigningSolution in project kogito-apps by kiegroup.
the class RemoveTaskExecutableProblemFactChangeTest method removeTaskProblemFactChangeRandomSet.
private void removeTaskProblemFactChangeRandomSet(String solutionResource) {
TaskAssigningSolution solution = readTaskAssigningSolution(solutionResource);
int taskCount = solution.getTaskAssignmentList().size();
int randomChanges = taskCount / 2 + random.nextInt(taskCount / 2);
List<String> taskIds = new ArrayList<>();
for (int i = 0; i < randomChanges; i++) {
taskIds.add(Long.toString(taskCount++));
}
removeTaskProblemFactChange(solution, taskIds);
}
use of org.kie.kogito.taskassigning.core.model.TaskAssigningSolution in project kogito-apps by kiegroup.
the class SolutionChangesBuilderTest method addNewReservedTaskChangeWithActualOwnerNotInExternalSystem.
@Test
void addNewReservedTaskChangeWithActualOwnerNotInExternalSystem() {
TaskData taskData = mockTaskData(TASK_1_ID, TaskState.RESERVED.value(), USER_1, TASK_1_LAST_UPDATE);
TaskAssigningSolution solution = mockSolution(Collections.emptyList(), Collections.emptyList());
addNewReservedTaskChangeWithActualOwner(solution, taskData);
verify(userServiceConnector).findUser(USER_1);
assertThatUserProcessorsWereNotApplied();
}
use of org.kie.kogito.taskassigning.core.model.TaskAssigningSolution in project kogito-apps by kiegroup.
the class SolutionChangesBuilderTest method addReservedTaskChangeForSameUserButNotPinned.
@Test
void addReservedTaskChangeForSameUserButNotPinned() {
TaskAssignment user1Assignment = new TaskAssignment(mockTask(TASK_1_ID));
User user1 = TestUtil.mockUser(USER_1, Collections.singletonList(user1Assignment));
user1Assignment.setPinned(false);
TaskAssigningSolution solution = mockSolution(Collections.singletonList(user1), Collections.singletonList(user1Assignment));
TaskData taskData = mockTaskData(TASK_1_ID, RESERVED.value(), USER_1, TASK_1_LAST_UPDATE);
addReservedTaskChangeForAnotherUser(solution, taskData, user1);
assertThatTaskProcessorsWhereNotApplied();
assertThatUserProcessorsWereNotApplied();
}
use of org.kie.kogito.taskassigning.core.model.TaskAssigningSolution in project kogito-apps by kiegroup.
the class SolutionChangesBuilderTest method addNewReadyTaskChange.
@Test
void addNewReadyTaskChange() {
TaskData taskData = mockTaskData(TASK_1_ID, READY.value(), TASK_1_LAST_UPDATE);
List<TaskData> taskDataList = mockTaskDataList(taskData);
TaskAssigningSolution solution = mockSolution(Collections.emptyList(), Collections.emptyList());
List<ProblemFactChange<TaskAssigningSolution>> result = SolutionChangesBuilder.create().withContext(context).withUserServiceConnector(userServiceConnector).withProcessors(processorRegistry).fromTasksData(taskDataList).forSolution(solution).build();
AddTaskProblemFactChange expected = new AddTaskProblemFactChange(new TaskAssignment(fromTaskData(taskData)));
assertChangeIsTheChangeSetId(result, 0);
assertChange(result, 1, expected);
assertTaskPublishStatus(taskData.getId(), false);
assertThatTaskProcessorsWereApplied(TASK_1_ID);
assertThatUserProcessorsWereNotApplied();
}
use of org.kie.kogito.taskassigning.core.model.TaskAssigningSolution in project kogito-apps by kiegroup.
the class SolutionChangesBuilderTest method addReservedTaskChangeForAnotherUserInExternalSystem.
@Test
void addReservedTaskChangeForAnotherUserInExternalSystem() {
TaskAssignment user1Assignment = new TaskAssignment(mockTask(TASK_1_ID));
User user1 = TestUtil.mockUser(USER_1, Collections.singletonList(user1Assignment));
org.kie.kogito.taskassigning.user.service.User user2 = mockExternalUser(USER_2);
doReturn(user2).when(userServiceConnector).findUser(USER_2);
TaskAssigningSolution solution = mockSolution(Collections.singletonList(user1), Collections.singletonList(user1Assignment));
TaskData taskData = mockTaskData(TASK_1_ID, RESERVED.value(), USER_2, TASK_1_LAST_UPDATE);
addReservedTaskChangeForAnotherUser(solution, taskData, mockUser(USER_2));
verify(userServiceConnector).findUser(USER_2);
assertThatUserProcessorsWereApplied(user2);
}
Aggregations