From 3bbd7446e219441912cd3c8753e2e58c52c63fef Mon Sep 17 00:00:00 2001 From: ryzheboka <25465835+ryzheboka@users.noreply.github.com> Date: Fri, 27 May 2022 17:07:44 +0200 Subject: [PATCH] TSK-1894: set manual priority to default in rest --- .../taskana/task/api/models/TaskSummary.java | 2 ++ .../task/internal/models/TaskSummaryImpl.java | 2 -- .../TaskSummaryRepresentationModel.java | 4 ++- .../task/rest/TaskControllerIntTest.java | 26 +++++++++++++++++++ 4 files changed, 31 insertions(+), 3 deletions(-) diff --git a/lib/taskana-core/src/main/java/pro/taskana/task/api/models/TaskSummary.java b/lib/taskana-core/src/main/java/pro/taskana/task/api/models/TaskSummary.java index 5fd6af102..15446bf58 100644 --- a/lib/taskana-core/src/main/java/pro/taskana/task/api/models/TaskSummary.java +++ b/lib/taskana-core/src/main/java/pro/taskana/task/api/models/TaskSummary.java @@ -15,6 +15,8 @@ import pro.taskana.workbasket.api.models.WorkbasketSummary; */ public interface TaskSummary { + public static int DEFAULT_MANUAL_PRIORITY = -1; + /** * Returns the id of the {@linkplain Task}. * diff --git a/lib/taskana-core/src/main/java/pro/taskana/task/internal/models/TaskSummaryImpl.java b/lib/taskana-core/src/main/java/pro/taskana/task/internal/models/TaskSummaryImpl.java index d27917f13..7ef3950f5 100644 --- a/lib/taskana-core/src/main/java/pro/taskana/task/internal/models/TaskSummaryImpl.java +++ b/lib/taskana-core/src/main/java/pro/taskana/task/internal/models/TaskSummaryImpl.java @@ -21,8 +21,6 @@ import pro.taskana.workbasket.internal.models.WorkbasketSummaryImpl; /** Entity which contains the most important information about a Task. */ public class TaskSummaryImpl implements TaskSummary { - private static final int DEFAULT_MANUAL_PRIORITY = -1; - protected String id; protected String externalId; protected Instant received; diff --git a/rest/taskana-rest-spring/src/main/java/pro/taskana/task/rest/models/TaskSummaryRepresentationModel.java b/rest/taskana-rest-spring/src/main/java/pro/taskana/task/rest/models/TaskSummaryRepresentationModel.java index 84bd04ddc..61d4f1c23 100644 --- a/rest/taskana-rest-spring/src/main/java/pro/taskana/task/rest/models/TaskSummaryRepresentationModel.java +++ b/rest/taskana-rest-spring/src/main/java/pro/taskana/task/rest/models/TaskSummaryRepresentationModel.java @@ -1,5 +1,7 @@ package pro.taskana.task.rest.models; +import static pro.taskana.task.api.models.TaskSummary.DEFAULT_MANUAL_PRIORITY; + import java.time.Instant; import java.util.ArrayList; import java.util.List; @@ -59,7 +61,7 @@ public class TaskSummaryRepresentationModel * priority is automatically set to manualPriority. In this case, all computations of priority are * disabled. If the value of manualPriority is negative, Tasks are not prioritized manually. */ - protected int manualPriority; + protected int manualPriority = DEFAULT_MANUAL_PRIORITY; /** The current task state. */ protected TaskState state; /** The classification of this task. */ diff --git a/rest/taskana-rest-spring/src/test/java/pro/taskana/task/rest/TaskControllerIntTest.java b/rest/taskana-rest-spring/src/test/java/pro/taskana/task/rest/TaskControllerIntTest.java index 6815e9187..02e38cc7d 100644 --- a/rest/taskana-rest-spring/src/test/java/pro/taskana/task/rest/TaskControllerIntTest.java +++ b/rest/taskana-rest-spring/src/test/java/pro/taskana/task/rest/TaskControllerIntTest.java @@ -749,6 +749,32 @@ class TaskControllerIntTest { assertThat(responseDeleted.getStatusCode()).isEqualTo(HttpStatus.NO_CONTENT); } + @Test + void should_CreateTaskWithCorrectPriorityAndThenDeleteIt_When_NotSpecifyingManualPriority() { + TaskRepresentationModel taskRepresentationModel = getTaskResourceSample(); + + String url = restHelper.toUrl(RestEndpoints.URL_TASKS); + HttpEntity auth = + new HttpEntity<>(taskRepresentationModel, RestHelper.generateHeadersForUser("teamlead-1")); + + ResponseEntity responseCreate = + TEMPLATE.exchange(url, HttpMethod.POST, auth, TASK_MODEL_TYPE); + assertThat(responseCreate.getStatusCode()).isEqualTo(HttpStatus.CREATED); + assertThat(responseCreate.getBody()).isNotNull(); + // The classification of taskRepresentationModel with the key "L11010" has priority=1 + assertThat(responseCreate.getBody().getPriority()).isEqualTo(1); + assertThat(responseCreate.getBody().getManualPriority()).isEqualTo(-1); + + String taskIdOfCreatedTask = responseCreate.getBody().getTaskId(); + String url2 = restHelper.toUrl(RestEndpoints.URL_TASKS_ID, taskIdOfCreatedTask); + HttpEntity auth2 = new HttpEntity<>(RestHelper.generateHeadersForUser("admin")); + + ResponseEntity responseDeleted = + TEMPLATE.exchange( + url2, HttpMethod.DELETE, auth2, ParameterizedTypeReference.forType(Void.class)); + assertThat(responseDeleted.getStatusCode()).isEqualTo(HttpStatus.NO_CONTENT); + } + @Test void should_GetPriorityCorrectly_When_GettingTaskWithManualPriority() { String url =