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

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


The following commit(s) were added to refs/heads/camel-main by this push:
     new 74bfca393c Add platform-http invocation test to Opentelemetry2
74bfca393c is described below

commit 74bfca393cafb4e2989917933a14b8254ffd6068
Author: Lukas Lowinger <[email protected]>
AuthorDate: Wed Feb 11 16:31:16 2026 +0100

    Add platform-http invocation test to Opentelemetry2
---
 integration-tests/opentelemetry2/pom.xml           | 17 +++++++++++++
 .../it/OpenTelemetry2RouteBuilder.java             |  9 +++++++
 .../opentelemetry2/it/Opentelemetry2Test.java      | 28 ++++++++++++++++++++++
 3 files changed, 54 insertions(+)

diff --git a/integration-tests/opentelemetry2/pom.xml 
b/integration-tests/opentelemetry2/pom.xml
index 7349082bda..2dd2e0b055 100644
--- a/integration-tests/opentelemetry2/pom.xml
+++ b/integration-tests/opentelemetry2/pom.xml
@@ -64,6 +64,10 @@
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-opentelemetry2</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-http</artifactId>
+        </dependency>
         <dependency>
             <groupId>io.quarkus</groupId>
             <artifactId>quarkus-resteasy</artifactId>
@@ -166,6 +170,19 @@
                         </exclusion>
                     </exclusions>
                 </dependency>
+                <dependency>
+                    <groupId>org.apache.camel.quarkus</groupId>
+                    <artifactId>camel-quarkus-http-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-log-deployment</artifactId>
diff --git 
a/integration-tests/opentelemetry2/src/main/java/org/apache/camel/quarkus/component/opentelemetry2/it/OpenTelemetry2RouteBuilder.java
 
b/integration-tests/opentelemetry2/src/main/java/org/apache/camel/quarkus/component/opentelemetry2/it/OpenTelemetry2RouteBuilder.java
index ac5acfa933..3c60cabadc 100644
--- 
a/integration-tests/opentelemetry2/src/main/java/org/apache/camel/quarkus/component/opentelemetry2/it/OpenTelemetry2RouteBuilder.java
+++ 
b/integration-tests/opentelemetry2/src/main/java/org/apache/camel/quarkus/component/opentelemetry2/it/OpenTelemetry2RouteBuilder.java
@@ -44,5 +44,14 @@ public class OpenTelemetry2RouteBuilder extends RouteBuilder 
{
 
         from("direct:traceHeaderInclusion")
                 .log("Trace info: CAMEL_SPAN_ID=${header.CAMEL_SPAN_ID}, 
CAMEL_TRACE_ID=${header.CAMEL_TRACE_ID}");
+
+        from("platform-http:/greeting")
+                .log("Received at greeting: ${body}")
+                .removeHeaders("*")
+                
.to("http://localhost:{{quarkus.http.test-port}}/greeting-provider";);
+
+        from("platform-http:/greeting-provider")
+                .log("Received at greeting-provider: ${body}")
+                .setBody(constant("Hello From Camel Quarkus!"));
     }
 }
diff --git 
a/integration-tests/opentelemetry2/src/test/java/org/apache/camel/quarkus/component/opentelemetry2/it/Opentelemetry2Test.java
 
b/integration-tests/opentelemetry2/src/test/java/org/apache/camel/quarkus/component/opentelemetry2/it/Opentelemetry2Test.java
index 529899a472..28f978b7b3 100644
--- 
a/integration-tests/opentelemetry2/src/test/java/org/apache/camel/quarkus/component/opentelemetry2/it/Opentelemetry2Test.java
+++ 
b/integration-tests/opentelemetry2/src/test/java/org/apache/camel/quarkus/component/opentelemetry2/it/Opentelemetry2Test.java
@@ -169,4 +169,32 @@ class Opentelemetry2Test {
                 .header("spanId", not(emptyOrNullString()))
                 .header("traceId", not(emptyOrNullString()));
     }
+
+    @Test
+    public void testHttpInvocation() {
+        RestAssured.get("/greeting")
+                .then()
+                .statusCode(200)
+                .body(equalTo("Hello From Camel Quarkus!"));
+
+        await().atMost(30, TimeUnit.SECONDS).pollDelay(50, 
TimeUnit.MILLISECONDS).until(() -> getSpans().size() == 5);
+        List<Map<String, String>> spans = getSpans();
+        assertEquals(5, spans.size());
+        // Verify root doesn't have parent
+        assertEquals("0000000000000000", spans.get(4).get("parentId"));
+        // Verify the span hierarchy
+        assertEquals(spans.get(4).get("spanId"), spans.get(3).get("parentId"));
+        assertEquals(spans.get(3).get("spanId"), spans.get(2).get("parentId"));
+        // Last two spans have the same parent
+        // For /greeting there is no existing tracing in progress. For 
/greeting-provider there is, so its related to the trace propagation
+        assertEquals(spans.get(2).get("spanId"), spans.get(1).get("parentId"));
+        assertEquals(spans.get(2).get("spanId"), spans.get(0).get("parentId"));
+
+        assertEquals(SpanKind.SERVER.name(), spans.get(4).get("kind"));
+        assertEquals(SpanKind.SERVER.name(), spans.get(1).get("kind"));
+
+        assertEquals(SpanKind.INTERNAL.name(), spans.get(0).get("kind"));
+        assertEquals(SpanKind.INTERNAL.name(), spans.get(2).get("kind"));
+        assertEquals(SpanKind.INTERNAL.name(), spans.get(3).get("kind"));
+    }
 }

Reply via email to