You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by or...@apache.org on 2022/10/12 08:15:14 UTC
[camel] branch main created (now 26ec7615ac6)
This is an automated email from the ASF dual-hosted git repository.
orpiske pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
at 26ec7615ac6 CAMEL-18608: Fix the test AggregateCompletionOnlyTwoTest.testOnlyTwo
This branch includes the following new commits:
new 26ec7615ac6 CAMEL-18608: Fix the test AggregateCompletionOnlyTwoTest.testOnlyTwo
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
[camel] 01/01: CAMEL-18608: Fix the test AggregateCompletionOnlyTwoTest.testOnlyTwo
Posted by or...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
orpiske pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 26ec7615ac6dc995f55467663bc8b8ed663d2307
Author: Nicolas Filotto <nf...@talend.com>
AuthorDate: Wed Oct 12 09:47:36 2022 +0200
CAMEL-18608: Fix the test AggregateCompletionOnlyTwoTest.testOnlyTwo
---
.../aggregator/AggregateCompletionOnlyTwoTest.java | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/AggregateCompletionOnlyTwoTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/AggregateCompletionOnlyTwoTest.java
index 244c5d4d7f8..e6ee6f18762 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/AggregateCompletionOnlyTwoTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/AggregateCompletionOnlyTwoTest.java
@@ -17,6 +17,7 @@
package org.apache.camel.processor.aggregator;
import java.util.Set;
+import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
import org.apache.camel.CamelContext;
@@ -28,14 +29,15 @@ import org.apache.camel.processor.BodyInAggregatingStrategy;
import org.apache.camel.processor.aggregate.MemoryAggregationRepository;
import org.junit.jupiter.api.Test;
+import static org.awaitility.Awaitility.await;
import static org.junit.jupiter.api.Assertions.assertEquals;
-public class AggregateCompletionOnlyTwoTest extends ContextTestSupport {
+class AggregateCompletionOnlyTwoTest extends ContextTestSupport {
- private MyRepo repo = new MyRepo();
+ private final MyRepo repo = new MyRepo();
@Test
- public void testOnlyTwo() throws Exception {
+ void testOnlyTwo() throws Exception {
MockEndpoint mock = getMockEndpoint("mock:aggregated");
mock.expectedBodiesReceived("A+B", "C+END");
@@ -49,26 +51,27 @@ public class AggregateCompletionOnlyTwoTest extends ContextTestSupport {
assertEquals(4, repo.getGet());
assertEquals(2, repo.getAdd());
assertEquals(2, repo.getRemove());
- assertEquals(2, repo.getConfirm());
+ // A second thread is involved so let's use awaitility to add more flexibility to the test
+ await().atMost(10, TimeUnit.SECONDS).untilAsserted(() -> assertEquals(2, repo.getConfirm()));
}
@Override
protected RouteBuilder createRouteBuilder() throws Exception {
return new RouteBuilder() {
@Override
- public void configure() throws Exception {
+ public void configure() {
from("direct:start").aggregate(header("id"), new BodyInAggregatingStrategy()).aggregationRepository(repo)
.completionSize(2).to("mock:aggregated");
}
};
}
- private class MyRepo extends MemoryAggregationRepository {
+ private static class MyRepo extends MemoryAggregationRepository {
private int add;
private int get;
private int remove;
- private AtomicInteger confirm = new AtomicInteger(0);
+ private final AtomicInteger confirm = new AtomicInteger();
@Override
public Exchange add(CamelContext camelContext, String key, Exchange exchange) {