This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 740c23860b9d chore: camel-plc4x - run Plc4XRepeatedFailureRouteTest
isolated (#28559)
740c23860b9d is described below
commit 740c23860b9d8d4d75f3e2a9190b700df5dafa85
Author: Claus Ibsen <[email protected]>
AuthorDate: Tue Oct 27 12:54:25 2026 +0100
chore: camel-plc4x - run Plc4XRepeatedFailureRouteTest isolated (#28559)
LogCapture sets the level of a logger for the whole JVM and MockDriver is
programmed statically, so the test must not run in parallel with other test
classes when JUnit parallel execution is turned on. Follow-up of the review
of
#28556.
Signed-off-by: Claus Ibsen <[email protected]>
Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>
---
.../src/test/java/org/apache/camel/component/plc4x/LogCapture.java | 3 ++-
.../apache/camel/component/plc4x/Plc4XRepeatedFailureRouteTest.java | 5 +++++
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git
a/components/camel-plc4x/src/test/java/org/apache/camel/component/plc4x/LogCapture.java
b/components/camel-plc4x/src/test/java/org/apache/camel/component/plc4x/LogCapture.java
index d195ec71c720..8adf45ae1345 100644
---
a/components/camel-plc4x/src/test/java/org/apache/camel/component/plc4x/LogCapture.java
+++
b/components/camel-plc4x/src/test/java/org/apache/camel/component/plc4x/LogCapture.java
@@ -28,7 +28,8 @@ import org.apache.logging.log4j.core.config.Property;
/**
* Captures the log events of one logger, down to DEBUG, while it is open.
Only one capture is open at a time: opening
- * another one resets the level of the loggers.
+ * another one resets the level of the loggers. The level is set for the whole
JVM, so a test class that uses it is
+ * {@code @Isolated} and does not run in parallel with other test classes.
*/
final class LogCapture extends AbstractAppender implements AutoCloseable {
diff --git
a/components/camel-plc4x/src/test/java/org/apache/camel/component/plc4x/Plc4XRepeatedFailureRouteTest.java
b/components/camel-plc4x/src/test/java/org/apache/camel/component/plc4x/Plc4XRepeatedFailureRouteTest.java
index 4e897e9762a3..29af2b5239c1 100644
---
a/components/camel-plc4x/src/test/java/org/apache/camel/component/plc4x/Plc4XRepeatedFailureRouteTest.java
+++
b/components/camel-plc4x/src/test/java/org/apache/camel/component/plc4x/Plc4XRepeatedFailureRouteTest.java
@@ -32,6 +32,7 @@ import org.apache.plc4x.java.api.exceptions.PlcException;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Isolated;
import static org.awaitility.Awaitility.await;
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -46,7 +47,11 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
* at WARN and the end of the run at INFO, instead of a WARN with a stack
trace on every poll, while
* {@code bridgeErrorHandler} still gets every failure. Without {@code
autoReconnect}, a lost connection shuts the
* endpoint down once, and the triggered consumer stops polling until the
route is restarted.
+ * <p>
+ * Isolated because {@link LogCapture} changes the level of a logger of the
JVM and {@link MockDriver} is programmed
+ * statically, so another test class must not run at the same time.
*/
+@Isolated
public class Plc4XRepeatedFailureRouteTest extends CamelTestSupport {
private static final String PLC =
"plc4x:mock:10.10.10.1/1/1?trigger=TRIG&period=50&tag.temperature=TEMP";