From 302f1c358f881527ed86e9d43efcacf8b8be527c Mon Sep 17 00:00:00 2001 From: dasdrolpi <74879793+dasdrolpi@users.noreply.github.com> Date: Mon, 20 Feb 2023 22:17:24 +0100 Subject: [PATCH 1/3] test: add a buffer of one tick to #expectedTimeNeeded --- .../test/java/org/aero/common/task/counter/CounterTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/task/src/test/java/org/aero/common/task/counter/CounterTest.java b/task/src/test/java/org/aero/common/task/counter/CounterTest.java index ac8c69f..4aa50f1 100644 --- a/task/src/test/java/org/aero/common/task/counter/CounterTest.java +++ b/task/src/test/java/org/aero/common/task/counter/CounterTest.java @@ -221,8 +221,8 @@ void testCancelCallback(final Counter.Builder counterBuilder) { } private long expectedTimeNeeded(final Counter counter) { - //A buffer of one tick added. - return counter.tickUnit().toMillis(this.ticksToFinish(counter) * counter.tickValue()); + //Adding a buffer of one tick + return counter.tickUnit().toMillis((this.ticksToFinish(counter) + 1) * counter.tickValue()); } private long ticksToFinish(final Counter counter) { From 00713165a3e59cc88509a56147d4a4076d53f3c8 Mon Sep 17 00:00:00 2001 From: dasdrolpi <74879793+dasdrolpi@users.noreply.github.com> Date: Sun, 7 Jan 2024 01:34:43 +0100 Subject: [PATCH 2/3] fix: CounterImpl#tick state and handler order --- .../main/java/org/aero/common/task/counter/CounterImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/task/src/main/java/org/aero/common/task/counter/CounterImpl.java b/task/src/main/java/org/aero/common/task/counter/CounterImpl.java index 4169eb6..fe782c3 100644 --- a/task/src/main/java/org/aero/common/task/counter/CounterImpl.java +++ b/task/src/main/java/org/aero/common/task/counter/CounterImpl.java @@ -207,12 +207,16 @@ private boolean condition() { } private void tick(final boolean result) { + if (this.status != CounterStatus.RUNNING) { + return; + } + if (result) { return; } - this.handleFinish(); this.cancel(null); + this.handleFinish(); } static final class BuilderImpl implements Counter.Builder { From 59f4dedcd59bd7caed93315a86c58ef05de3faad Mon Sep 17 00:00:00 2001 From: dasdrolpi <74879793+dasdrolpi@users.noreply.github.com> Date: Sun, 7 Jan 2024 01:34:59 +0100 Subject: [PATCH 3/3] test: remove debugs --- task/src/test/java/org/aero/common/task/counter/CounterTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/task/src/test/java/org/aero/common/task/counter/CounterTest.java b/task/src/test/java/org/aero/common/task/counter/CounterTest.java index 4aa50f1..23950e8 100644 --- a/task/src/test/java/org/aero/common/task/counter/CounterTest.java +++ b/task/src/test/java/org/aero/common/task/counter/CounterTest.java @@ -184,7 +184,6 @@ void testTickCallback(final Counter.Builder counterBuilder) throws InterruptedEx Thread.sleep(expectedTimeNeeded(counter)); counter.stop(); final var ticks = ticksToFinish(counter); - System.out.println(ticks); assertEquals(ticks, indicator.get(), "The Counter should have ticked from startCount to stopCount"); }