From d0e14c4e074c76e0f34b41622440ab0e3d892493 Mon Sep 17 00:00:00 2001 From: 0rlych1kk4 Date: Fri, 3 Jul 2026 22:55:37 +0800 Subject: [PATCH] test: cover successful scheduled job not rerun before interval --- .../repair/scheduler/TestScheduleManager.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/core.impl/src/test/java/com/ericsson/bss/cassandra/ecchronos/core/impl/repair/scheduler/TestScheduleManager.java b/core.impl/src/test/java/com/ericsson/bss/cassandra/ecchronos/core/impl/repair/scheduler/TestScheduleManager.java index debd822a3..58e0bdfea 100644 --- a/core.impl/src/test/java/com/ericsson/bss/cassandra/ecchronos/core/impl/repair/scheduler/TestScheduleManager.java +++ b/core.impl/src/test/java/com/ericsson/bss/cassandra/ecchronos/core/impl/repair/scheduler/TestScheduleManager.java @@ -118,6 +118,23 @@ public void testRunningOneJob() assertThat(myScheduler.getQueueSize(nodeID1)).isEqualTo(1); } + @Test + public void testSuccessfulJobIsNotRunAgainBeforeRunInterval() throws LockException + { + TestJob job = new TestJob(ScheduledJob.Priority.LOW, 1, nodeID1, "dc1", "resource1"); + myScheduler.schedule(nodeID1, job); + + when(myLockFactory.tryLock(any(), anyString(), anyInt(), anyMap(), any())) + .thenReturn(new DummyLock()); + + myScheduler.run(nodeID1); + myScheduler.run(nodeID1); + + assertThat(job.getTaskRuns()).isEqualTo(1); + assertThat(myScheduler.getQueueSize(nodeID1)).isEqualTo(1); + verify(myLockFactory, times(1)).tryLock(any(), anyString(), anyInt(), anyMap(), any()); + } + @Test public void testRunningMultipleJobsInSingleTick() {