You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by pp...@apache.org on 2021/07/14 14:55:56 UTC

[camel-quarkus] 10/13: Test pollEnrich() EIP DSL method #2628

This is an automated email from the ASF dual-hosted git repository.

ppalaga pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit 9bf5ca08b56044239827736aa11449ad0a42c0f7
Author: Peter Palaga <pp...@redhat.com>
AuthorDate: Thu May 20 23:53:18 2021 +0200

    Test pollEnrich() EIP DSL method #2628
---
 .../java/org/apache/camel/quarkus/eip/it/EipRoutes.java |  1 +
 integration-tests/file/pom.xml                          | 17 +++++++++++++++++
 .../camel/quarkus/component/file/it/FileResource.java   |  8 ++++++++
 .../camel/quarkus/component/file/it/FileRoutes.java     |  4 ++++
 .../camel/quarkus/component/file/it/FileTest.java       | 17 +++++++++++++++++
 5 files changed, 47 insertions(+)

diff --git a/integration-test-groups/foundation/eip/src/main/java/org/apache/camel/quarkus/eip/it/EipRoutes.java b/integration-test-groups/foundation/eip/src/main/java/org/apache/camel/quarkus/eip/it/EipRoutes.java
index 04b884f..43945d0 100644
--- a/integration-test-groups/foundation/eip/src/main/java/org/apache/camel/quarkus/eip/it/EipRoutes.java
+++ b/integration-test-groups/foundation/eip/src/main/java/org/apache/camel/quarkus/eip/it/EipRoutes.java
@@ -61,6 +61,7 @@ public class EipRoutes extends RouteBuilder {
                 .to("mock:loop");
 
         from("direct:multicast").multicast().parallelProcessing().to("mock:multicast1", "mock:multicast2", "mock:multicast3");
+
     }
 
     @Produces
diff --git a/integration-tests/file/pom.xml b/integration-tests/file/pom.xml
index a56b38b..e31d57c 100644
--- a/integration-tests/file/pom.xml
+++ b/integration-tests/file/pom.xml
@@ -44,6 +44,10 @@
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-direct</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-mock</artifactId>
         </dependency>
         <dependency>
@@ -81,6 +85,19 @@
         <!-- The following dependencies guarantee that this module is built after them. You can update them by running `mvn process-resources -Pformat -N` from the source tree root directory -->
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-direct-deployment</artifactId>
+            <version>${project.version}</version>
+            <type>pom</type>
+            <scope>test</scope>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-file-deployment</artifactId>
             <version>${project.version}</version>
             <type>pom</type>
diff --git a/integration-tests/file/src/main/java/org/apache/camel/quarkus/component/file/it/FileResource.java b/integration-tests/file/src/main/java/org/apache/camel/quarkus/component/file/it/FileResource.java
index 9768b6c..3695917 100644
--- a/integration-tests/file/src/main/java/org/apache/camel/quarkus/component/file/it/FileResource.java
+++ b/integration-tests/file/src/main/java/org/apache/camel/quarkus/component/file/it/FileResource.java
@@ -125,4 +125,12 @@ public class FileResource {
                 .entity(response.getMessage().getHeader(Exchange.FILE_NAME_PRODUCED))
                 .build();
     }
+
+    @Path("/route/{route}")
+    @POST
+    @Consumes(MediaType.TEXT_PLAIN)
+    public String pollEnrich(String body, @PathParam("route") String route) throws Exception {
+        return producerTemplate.requestBody("direct:" + route, body, String.class);
+    }
+
 }
diff --git a/integration-tests/file/src/main/java/org/apache/camel/quarkus/component/file/it/FileRoutes.java b/integration-tests/file/src/main/java/org/apache/camel/quarkus/component/file/it/FileRoutes.java
index 27c70ac..891339c 100644
--- a/integration-tests/file/src/main/java/org/apache/camel/quarkus/component/file/it/FileRoutes.java
+++ b/integration-tests/file/src/main/java/org/apache/camel/quarkus/component/file/it/FileRoutes.java
@@ -74,6 +74,10 @@ public class FileRoutes extends RouteBuilder {
                 .id(SORT_BY)
                 .noAutoStartup()
                 .convertBodyTo(String.class).to("mock:" + SORT_BY);
+
+        from("direct:pollEnrich")
+                .pollEnrich("file://target/pollEnrich?fileName=pollEnrich.txt");
+
     }
 
     public class MyFileFilter<T> implements GenericFileFilter<T> {
diff --git a/integration-tests/file/src/test/java/org/apache/camel/quarkus/component/file/it/FileTest.java b/integration-tests/file/src/test/java/org/apache/camel/quarkus/component/file/it/FileTest.java
index 77e444c..bef5896 100644
--- a/integration-tests/file/src/test/java/org/apache/camel/quarkus/component/file/it/FileTest.java
+++ b/integration-tests/file/src/test/java/org/apache/camel/quarkus/component/file/it/FileTest.java
@@ -33,6 +33,7 @@ import io.restassured.RestAssured;
 import io.restassured.http.ContentType;
 import io.restassured.path.json.JsonPath;
 import io.restassured.response.ValidatableResponse;
+import org.hamcrest.Matchers;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Test;
 
@@ -310,4 +311,20 @@ class FileTest {
                     }
                 });
     }
+
+    @Test
+    public void pollEnrich() throws IOException {
+        final Path file = Paths.get("target/pollEnrich/pollEnrich.txt");
+        Files.createDirectories(file.getParent());
+        final String body = "Hi from pollEnrich.txt";
+        Files.write(file, body.getBytes(StandardCharsets.UTF_8));
+
+        RestAssured.given()
+                .contentType(ContentType.TEXT)
+                .post("/file/route/pollEnrich")
+                .then()
+                .statusCode(200)
+                .body(Matchers.is(body));
+    }
+
 }