You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2026/06/23 12:16:50 UTC
(camel) 01/01: CAMEL-23354: camel-jbang use quarkus-junit for Quarkus 3.31+
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch fix/CAMEL-23354
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 9c1f7125a01e87607d60d232088df02b2d036aa6
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Jun 23 14:16:36 2026 +0200
CAMEL-23354: camel-jbang use quarkus-junit for Quarkus 3.31+
Co-Authored-By: Claude <no...@anthropic.com>
Signed-off-by: Claus Ibsen <cl...@gmail.com>
---
.../dsl/jbang/core/commands/ExportQuarkus.java | 1 +
.../resources/templates/quarkus-kubernetes-pom.ftl | 4 +++
.../src/main/resources/templates/quarkus-pom.ftl | 4 +++
.../dsl/jbang/core/common/TemplateHelperTest.java | 39 +++++++++++++++++++++-
dsl/camel-jbang/camel-jbang-mcp/pom.xml | 2 +-
5 files changed, 48 insertions(+), 2 deletions(-)
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
index 6f435d65a1f5..406b351366c5 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
@@ -386,6 +386,7 @@ class ExportQuarkus extends Export {
model.put("QuarkusGroupId", quarkusCamelBom.getGroupId());
model.put("QuarkusArtifactId", quarkusCamelBom.getArtifactId());
model.put("QuarkusVersion", quarkusCamelBom.getVersion());
+ model.put("UseQuarkusJunit", VersionHelper.isGE(quarkusCamelBom.getVersion(), "3.31.0"));
model.put("QuarkusPackageType", quarkusPackageType);
model.put("JavaVersion", javaVersion);
model.put("ProjectBuildOutputTimestamp", this.getBuildMavenProjectDate());
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/templates/quarkus-kubernetes-pom.ftl b/dsl/camel-jbang/camel-jbang-core/src/main/resources/templates/quarkus-kubernetes-pom.ftl
index 382669c50960..afddc007214a 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/templates/quarkus-kubernetes-pom.ftl
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/templates/quarkus-kubernetes-pom.ftl
@@ -127,7 +127,11 @@
<dependency>
<groupId>io.quarkus</groupId>
+[#if UseQuarkusJunit]
+ <artifactId>quarkus-junit</artifactId>
+[#else]
<artifactId>quarkus-junit5</artifactId>
+[/#if]
<scope>test</scope>
</dependency>
</dependencies>
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/templates/quarkus-pom.ftl b/dsl/camel-jbang/camel-jbang-core/src/main/resources/templates/quarkus-pom.ftl
index 2e826b283f29..c5f393931c17 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/templates/quarkus-pom.ftl
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/templates/quarkus-pom.ftl
@@ -127,7 +127,11 @@
<dependency>
<groupId>io.quarkus</groupId>
+[#if UseQuarkusJunit]
+ <artifactId>quarkus-junit</artifactId>
+[#else]
<artifactId>quarkus-junit5</artifactId>
+[/#if]
<scope>test</scope>
</dependency>
</dependencies>
diff --git a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/common/TemplateHelperTest.java b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/common/TemplateHelperTest.java
index dd2e5867ca22..55a6e6c31769 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/common/TemplateHelperTest.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/common/TemplateHelperTest.java
@@ -299,7 +299,7 @@ class TemplateHelperTest {
}
@Test
- void testQuarkusPomTemplate() throws IOException {
+ void testQuarkusPomTemplateOlderVersion() throws IOException {
Map<String, Object> model = new HashMap<>();
model.put("GroupId", "com.example");
model.put("ArtifactId", "my-quarkus-app");
@@ -307,6 +307,7 @@ class TemplateHelperTest {
model.put("QuarkusGroupId", "io.quarkus.platform");
model.put("QuarkusArtifactId", "quarkus-bom");
model.put("QuarkusVersion", "3.17.0");
+ model.put("UseQuarkusJunit", false);
model.put("QuarkusPackageType", "uber-jar");
model.put("JavaVersion", "21");
model.put("ProjectBuildOutputTimestamp", "2024-01-01T00:00:00Z");
@@ -325,6 +326,42 @@ class TemplateHelperTest {
"Should contain QuarkusPackageType");
// Maven ${...} should pass through
assertTrue(result.contains("${quarkus.platform.version}"));
+ // Quarkus < 3.31 should use quarkus-junit5
+ assertTrue(result.contains("<artifactId>quarkus-junit5</artifactId>"),
+ "Should use quarkus-junit5 for Quarkus < 3.31");
+ assertFalse(result.contains("<artifactId>quarkus-junit</artifactId>"),
+ "Should not use quarkus-junit for Quarkus < 3.31");
+ }
+
+ @Test
+ void testQuarkusPomTemplateCurrentVersion() throws IOException {
+ Map<String, Object> model = new HashMap<>();
+ model.put("GroupId", "com.example");
+ model.put("ArtifactId", "my-quarkus-app");
+ model.put("Version", "1.0.0");
+ model.put("QuarkusGroupId", "io.quarkus.platform");
+ model.put("QuarkusArtifactId", "quarkus-bom");
+ model.put("QuarkusVersion", "3.36.3");
+ model.put("UseQuarkusJunit", true);
+ model.put("QuarkusPackageType", "uber-jar");
+ model.put("JavaVersion", "21");
+ model.put("ProjectBuildOutputTimestamp", "2024-01-01T00:00:00Z");
+ model.put("BuildProperties", "");
+ model.put("Repositories", List.of());
+ model.put("Dependencies", List.of());
+ model.put("JibMavenPluginVersion", "3.5.1");
+
+ String result = TemplateHelper.processTemplate("quarkus-pom.ftl", model);
+
+ assertNoLicenseHeader(result);
+ assertTrue(result.contains("io.quarkus.platform"));
+ assertTrue(result.contains("quarkus-bom"));
+ assertTrue(result.contains("3.36.3"));
+ // Quarkus >= 3.31 should use quarkus-junit
+ assertTrue(result.contains("<artifactId>quarkus-junit</artifactId>"),
+ "Should use quarkus-junit for Quarkus >= 3.31");
+ assertFalse(result.contains("<artifactId>quarkus-junit5</artifactId>"),
+ "Should not use quarkus-junit5 for Quarkus >= 3.31");
}
@Test
diff --git a/dsl/camel-jbang/camel-jbang-mcp/pom.xml b/dsl/camel-jbang/camel-jbang-mcp/pom.xml
index 9bab3f333f9c..bd3ef18d71ac 100644
--- a/dsl/camel-jbang/camel-jbang-mcp/pom.xml
+++ b/dsl/camel-jbang/camel-jbang-mcp/pom.xml
@@ -149,7 +149,7 @@
<!-- test dependencies -->
<dependency>
<groupId>io.quarkus</groupId>
- <artifactId>quarkus-junit5</artifactId>
+ <artifactId>quarkus-junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>