This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 3009c0da4c7e CAMEL-24030: Fix flaky SchedulerNoPolledMessagesTest
(#24631)
3009c0da4c7e is described below
commit 3009c0da4c7e9eeacd2c360c7a10dff0d53dd667
Author: Guillaume Nodet <[email protected]>
AuthorDate: Sun Jul 12 22:59:46 2026 +0200
CAMEL-24030: Fix flaky SchedulerNoPolledMessagesTest (#24631)
CAMEL-24030: Fix flaky SchedulerNoPolledMessagesTest
Widen timing assertion windows to accommodate CI jitter and use
timed MockEndpoint.assertIsSatisfied instead of untimed variant.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
---
.../component/scheduler/SchedulerNoPolledMessagesTest.java | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git
a/core/camel-core/src/test/java/org/apache/camel/component/scheduler/SchedulerNoPolledMessagesTest.java
b/core/camel-core/src/test/java/org/apache/camel/component/scheduler/SchedulerNoPolledMessagesTest.java
index c388aaedd3b7..32f710317a70 100644
---
a/core/camel-core/src/test/java/org/apache/camel/component/scheduler/SchedulerNoPolledMessagesTest.java
+++
b/core/camel-core/src/test/java/org/apache/camel/component/scheduler/SchedulerNoPolledMessagesTest.java
@@ -16,6 +16,8 @@
*/
package org.apache.camel.component.scheduler;
+import java.util.concurrent.TimeUnit;
+
import org.apache.camel.ContextTestSupport;
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
@@ -29,13 +31,15 @@ public class SchedulerNoPolledMessagesTest extends
ContextTestSupport {
public void testSchedulerNoPolledMessages() throws Exception {
MockEndpoint mock = getMockEndpoint("mock:result");
mock.expectedMinimumMessageCount(3);
- // the first 2 is fast
- mock.message(0).arrives().between(0, 500).millis().beforeNext();
- mock.message(1).arrives().between(0, 500).millis().beforeNext();
+ // the first 2 fire quickly (100ms interval), but CI environments can
add
+ // significant jitter from GC pauses and CPU contention — use wide
windows
+ mock.message(0).arrives().between(0, 2000).millis().beforeNext();
+ mock.message(1).arrives().between(0, 2000).millis().beforeNext();
// the last message should be slower as the backoff idle has kicked in
- mock.message(2).arrives().between(500, 1500).millis().afterPrevious();
+ // (backoffMultiplier=10 × delay=100ms = ~1000ms), but allow extra
margin for CI
+ mock.message(2).arrives().between(200, 5000).millis().afterPrevious();
- assertMockEndpointsSatisfied();
+ MockEndpoint.assertIsSatisfied(context, 30, TimeUnit.SECONDS);
}
@Override