From be906eaedf6be4968c509c994607cb2ef96ae435 Mon Sep 17 00:00:00 2001 From: Benjamin Eckstein <13351939+benjamineckstein@users.noreply.github.com> Date: Sat, 2 Nov 2019 11:37:13 +0100 Subject: [PATCH] TSK-942: Fix timing issue in CreateTaskAccTest --- .../test/java/acceptance/task/CreateTaskAccTest.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/taskana-core/src/test/java/acceptance/task/CreateTaskAccTest.java b/lib/taskana-core/src/test/java/acceptance/task/CreateTaskAccTest.java index f5331f852..6cb65ba25 100644 --- a/lib/taskana-core/src/test/java/acceptance/task/CreateTaskAccTest.java +++ b/lib/taskana-core/src/test/java/acceptance/task/CreateTaskAccTest.java @@ -99,17 +99,23 @@ public class CreateTaskAccTest extends AbstractAccTest { TaskService taskService = taskanaEngine.getTaskService(); Task newTask = taskService.newTask("USER_1_1", "DOMAIN_A"); + Instant instantPlanned = Instant.now().plus(2, ChronoUnit.HOURS); newTask.setClassificationKey("T2100"); newTask.setPrimaryObjRef(createObjectReference("COMPANY_A", "SYSTEM_A", "INSTANCE_A", "VNR", "1234567")); newTask.setOwner("user_1_1"); - newTask.setPlanned(Instant.now().plus(2, ChronoUnit.HOURS)); + newTask.setPlanned(instantPlanned); Task createdTask = taskService.createTask(newTask); assertNotNull(createdTask); assertNotNull(createdTask.getCreated()); assertNotNull(createdTask.getPlanned()); - assertEquals(createdTask.getCreated().plus(2, ChronoUnit.HOURS).truncatedTo(ChronoUnit.SECONDS), - createdTask.getPlanned().truncatedTo(ChronoUnit.SECONDS)); + assertEquals(instantPlanned, createdTask.getPlanned()); + assertTrue(createdTask.getCreated().isBefore(createdTask.getPlanned())); + + //verify that planned takes place 2 hours after creation (+- 5 seconds) + long difference = Duration.between(createdTask.getCreated(), createdTask.getPlanned()).abs().getSeconds(); + //add some tolerance to ignore that "created" depends on execution speed + assertTrue(Math.abs(difference - 2 * 60 * 60) < 5); } @WithAccessId(