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"));
+ }
}