You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by or...@apache.org on 2022/10/03 15:58:35 UTC

[camel] 06/11: CAMEL-18575: use JUnit's 5 TempDir annotation in camel-stax

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

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

commit b691215b6ddc9611a7674f3d58faf6be4eb8753b
Author: Otavio Rodolfo Piske <an...@gmail.com>
AuthorDate: Mon Oct 3 13:41:26 2022 +0200

    CAMEL-18575: use JUnit's 5 TempDir annotation in camel-stax
---
 .../component/stax/IssueWithWrongEncodingTest.java | 23 +++++++++++-----------
 .../xtokenizer/SplitGroupMultiXmlTokenTest.java    |  9 +++++++--
 .../SplitGroupWrappedMultiXmlTokenTest.java        |  9 +++++++--
 .../xtokenizer/SpringXMLTokenSplitTest.java        |  6 +++++-
 .../language/xtokenizer/XMLTokenSplitTest.java     | 13 ++++++++----
 .../XMLTokenizeLanguageStreamingFileTest.java      |  9 +++++++--
 6 files changed, 46 insertions(+), 23 deletions(-)

diff --git a/components/camel-stax/src/test/java/org/apache/camel/component/stax/IssueWithWrongEncodingTest.java b/components/camel-stax/src/test/java/org/apache/camel/component/stax/IssueWithWrongEncodingTest.java
index 732b4468dbc..a03388b07c5 100644
--- a/components/camel-stax/src/test/java/org/apache/camel/component/stax/IssueWithWrongEncodingTest.java
+++ b/components/camel-stax/src/test/java/org/apache/camel/component/stax/IssueWithWrongEncodingTest.java
@@ -19,17 +19,17 @@ package org.apache.camel.component.stax;
 import java.io.File;
 import java.io.FileOutputStream;
 import java.nio.charset.StandardCharsets;
+import java.nio.file.Path;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.RoutesBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.stax.model.Product;
 import org.apache.camel.test.junit5.CamelTestSupport;
-import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
 
 import static org.apache.camel.component.stax.StAXBuilder.stax;
-import static org.apache.camel.test.junit5.TestSupport.deleteDirectory;
 
 public class IssueWithWrongEncodingTest extends CamelTestSupport {
 
@@ -44,19 +44,18 @@ public class IssueWithWrongEncodingTest extends CamelTestSupport {
                                         + "    </product>\n"
                                         + "</products>";
 
-    @Override
-    @BeforeEach
-    public void setUp() throws Exception {
-        deleteDirectory("target/encoding");
-        super.setUp();
-    }
+    @TempDir
+    Path testDirectory;
 
     @Test
     public void testOkEncoding() throws Exception {
+        resetMocks();
         getMockEndpoint("mock:result").expectedMessageCount(1);
 
         File file = new File("src/test/resources/products_with_valid_utf8.xml");
-        template.sendBodyAndHeader("file:target/encoding", file, Exchange.FILE_NAME, "products_with_valid_utf8.xml");
+
+        template.sendBodyAndHeader("file:" + testDirectory.toString(), file, Exchange.FILE_NAME,
+                "products_with_valid_utf8.xml");
 
         assertMockEndpointsSatisfied();
     }
@@ -64,9 +63,9 @@ public class IssueWithWrongEncodingTest extends CamelTestSupport {
     @Test
     public void testInvalidEncoding() throws Exception {
         getMockEndpoint("mock:result").expectedMessageCount(0);
-        getMockEndpoint("mock:result").expectedFileExists("target/encoding/error/invalid.xml");
+        getMockEndpoint("mock:result").expectedFileExists(testDirectory.resolve("error/invalid.xml"));
 
-        File file = new File("target/encoding/invalid.xml");
+        File file = testDirectory.resolve("invalid.xml").toFile();
         FileOutputStream fos = new FileOutputStream(file, false);
         fos.write(XML_1.getBytes(StandardCharsets.UTF_8));
         // thai elephant is 4 bytes
@@ -86,7 +85,7 @@ public class IssueWithWrongEncodingTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() {
-                from("file:target/encoding?moveFailed=error")
+                fromF("file:%s?moveFailed=error", testDirectory.toString())
                         .split(stax(Product.class))
                         .to("mock:result");
             }
diff --git a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SplitGroupMultiXmlTokenTest.java b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SplitGroupMultiXmlTokenTest.java
index f0f838405d4..bdd86d93ae3 100644
--- a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SplitGroupMultiXmlTokenTest.java
+++ b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SplitGroupMultiXmlTokenTest.java
@@ -16,14 +16,19 @@
  */
 package org.apache.camel.language.xtokenizer;
 
+import java.nio.file.Path;
+
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.support.builder.Namespaces;
 import org.apache.camel.test.junit5.CamelTestSupport;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
 
 public class SplitGroupMultiXmlTokenTest extends CamelTestSupport {
+    @TempDir
+    Path testDirectory;
 
     @Test
     public void testTokenXMLPairGroup() throws Exception {
@@ -38,7 +43,7 @@ public class SplitGroupMultiXmlTokenTest extends CamelTestSupport {
         mock.message(2).body().isEqualTo("<group><order id=\"5\" xmlns=\"http:acme.com\">Groovy in Action</order></group>");
 
         String body = createBody();
-        template.sendBodyAndHeader(fileUri(), body, Exchange.FILE_NAME, "orders.xml");
+        template.sendBodyAndHeader(fileUri(testDirectory), body, Exchange.FILE_NAME, "orders.xml");
 
         assertMockEndpointsSatisfied();
     }
@@ -63,7 +68,7 @@ public class SplitGroupMultiXmlTokenTest extends CamelTestSupport {
             @Override
             public void configure() throws Exception {
                 // START SNIPPET: e1
-                from(fileUri("?initialDelay=0&delay=10"))
+                from(fileUri(testDirectory, "?initialDelay=0&delay=10"))
                         // split the order child tags, and inherit namespaces from
                         // the orders root tag
                         .split().xtokenize("//order", 'i', ns, 2).to("log:split").to("mock:split");
diff --git a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SplitGroupWrappedMultiXmlTokenTest.java b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SplitGroupWrappedMultiXmlTokenTest.java
index 88c15b61736..eb15c93f7da 100644
--- a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SplitGroupWrappedMultiXmlTokenTest.java
+++ b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SplitGroupWrappedMultiXmlTokenTest.java
@@ -16,14 +16,19 @@
  */
 package org.apache.camel.language.xtokenizer;
 
+import java.nio.file.Path;
+
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.support.builder.Namespaces;
 import org.apache.camel.test.junit5.CamelTestSupport;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
 
 public class SplitGroupWrappedMultiXmlTokenTest extends CamelTestSupport {
+    @TempDir
+    Path testDirectory;
 
     @Test
     public void testTokenXMLPairGroup() throws Exception {
@@ -39,7 +44,7 @@ public class SplitGroupWrappedMultiXmlTokenTest extends CamelTestSupport {
                 "<?xml version=\"1.0\"?>\n<orders xmlns=\"http:acme.com\">\n  <order id=\"5\">Groovy in Action</order></orders>");
 
         String body = createBody();
-        template.sendBodyAndHeader(fileUri(), body, Exchange.FILE_NAME, "orders.xml");
+        template.sendBodyAndHeader(fileUri(testDirectory), body, Exchange.FILE_NAME, "orders.xml");
 
         assertMockEndpointsSatisfied();
     }
@@ -64,7 +69,7 @@ public class SplitGroupWrappedMultiXmlTokenTest extends CamelTestSupport {
             @Override
             public void configure() throws Exception {
                 // START SNIPPET: e1
-                from(fileUri("?initialDelay=0&delay=10"))
+                from(fileUri(testDirectory, "?initialDelay=0&delay=10"))
                         // split the order child tags, and inherit namespaces from
                         // the orders root tag
                         .split().xtokenize("//order", 'w', ns, 2).to("log:split").to("mock:split");
diff --git a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SpringXMLTokenSplitTest.java b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SpringXMLTokenSplitTest.java
index db39383d1e0..4b575f1c364 100644
--- a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SpringXMLTokenSplitTest.java
+++ b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/SpringXMLTokenSplitTest.java
@@ -16,6 +16,9 @@
  */
 package org.apache.camel.language.xtokenizer;
 
+import java.nio.file.Path;
+import java.nio.file.Paths;
+
 import org.apache.camel.Exchange;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.test.spring.junit5.CamelSpringTestSupport;
@@ -24,6 +27,7 @@ import org.springframework.context.support.AbstractApplicationContext;
 import org.springframework.context.support.ClassPathXmlApplicationContext;
 
 public class SpringXMLTokenSplitTest extends CamelSpringTestSupport {
+    Path testDirectory = Paths.get("target", "data", SpringXMLTokenSplitTest.class.getSimpleName());
 
     @Test
     public void testXMLToken() throws Exception {
@@ -34,7 +38,7 @@ public class SpringXMLTokenSplitTest extends CamelSpringTestSupport {
         mock.message(2).body().isEqualTo("<order id=\"3\" xmlns=\"http:acme.com\">DSL in Action</order>");
 
         String body = createBody();
-        template.sendBodyAndHeader(fileUri("xtokenizer"), body, Exchange.FILE_NAME, "orders.xml");
+        template.sendBodyAndHeader(fileUri(testDirectory, "xtokenizer"), body, Exchange.FILE_NAME, "orders.xml");
 
         assertMockEndpointsSatisfied();
     }
diff --git a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/XMLTokenSplitTest.java b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/XMLTokenSplitTest.java
index 13a306a0b22..4e47a4a6382 100644
--- a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/XMLTokenSplitTest.java
+++ b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/XMLTokenSplitTest.java
@@ -16,14 +16,19 @@
  */
 package org.apache.camel.language.xtokenizer;
 
+import java.nio.file.Path;
+
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.support.builder.Namespaces;
 import org.apache.camel.test.junit5.CamelTestSupport;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
 
 public class XMLTokenSplitTest extends CamelTestSupport {
+    @TempDir
+    Path testDirectory;
 
     @Test
     public void testXMLToken() throws Exception {
@@ -34,7 +39,7 @@ public class XMLTokenSplitTest extends CamelTestSupport {
         mock.message(2).body().isEqualTo("<order id=\"3\" xmlns=\"http:acme.com\">DSL in Action</order>");
 
         String body = createBody();
-        template.sendBodyAndHeader(fileUri("xtokenizer"), body, Exchange.FILE_NAME, "orders.xml");
+        template.sendBodyAndHeader(fileUri(testDirectory, "xtokenizer"), body, Exchange.FILE_NAME, "orders.xml");
 
         assertMockEndpointsSatisfied();
     }
@@ -48,7 +53,7 @@ public class XMLTokenSplitTest extends CamelTestSupport {
         mock.message(2).body().isEqualTo("<order id=\"3\" xmlns=\"http:acme.com\">DSL in Action</order>");
 
         String body = createBody();
-        template.sendBodyAndHeader(fileUri("xtokenizer2"), body, Exchange.FILE_NAME, "orders.xml");
+        template.sendBodyAndHeader(fileUri(testDirectory, "xtokenizer2"), body, Exchange.FILE_NAME, "orders.xml");
 
         assertMockEndpointsSatisfied();
     }
@@ -72,13 +77,13 @@ public class XMLTokenSplitTest extends CamelTestSupport {
             @Override
             public void configure() throws Exception {
                 // START SNIPPET: e1
-                from(fileUri("xtokenizer?initialDelay=0&delay=10"))
+                from(fileUri(testDirectory, "xtokenizer?initialDelay=0&delay=10"))
                         // split the order child tags, and inherit namespaces from
                         // the orders root tag
                         .split().xtokenize("//orders/order", ns).to("mock:split");
                 // END SNIPPET: e1
 
-                from(fileUri("xtokenizer2?initialDelay=0&delay=10"))
+                from(fileUri(testDirectory, "xtokenizer2?initialDelay=0&delay=10"))
                         // split the order child tags, and inherit namespaces from
                         // the orders root tag
                         .split(body().xtokenize("//orders/order", ns)).to("mock:split");
diff --git a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/XMLTokenizeLanguageStreamingFileTest.java b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/XMLTokenizeLanguageStreamingFileTest.java
index 5eca0d279f5..c4efba3b035 100644
--- a/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/XMLTokenizeLanguageStreamingFileTest.java
+++ b/components/camel-stax/src/test/java/org/apache/camel/language/xtokenizer/XMLTokenizeLanguageStreamingFileTest.java
@@ -16,13 +16,18 @@
  */
 package org.apache.camel.language.xtokenizer;
 
+import java.nio.file.Path;
+
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.support.builder.Namespaces;
 import org.apache.camel.test.junit5.CamelTestSupport;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
 
 public class XMLTokenizeLanguageStreamingFileTest extends CamelTestSupport {
+    @TempDir
+    Path testDirectory;
 
     @Test
     public void testFromFile() throws Exception {
@@ -38,7 +43,7 @@ public class XMLTokenizeLanguageStreamingFileTest extends CamelTestSupport {
                   + "<c:child some_attr='b' anotherAttr='b'></c:child>" + "<c:child some_attr='c' anotherAttr='c'></c:child>"
                   + "<c:child some_attr='d' anotherAttr='d'></c:child>" + "</c:parent>";
 
-        template.sendBodyAndHeader(fileUri(), body, Exchange.FILE_NAME, "myxml.xml");
+        template.sendBodyAndHeader(fileUri(testDirectory), body, Exchange.FILE_NAME, "myxml.xml");
 
         assertMockEndpointsSatisfied();
     }
@@ -49,7 +54,7 @@ public class XMLTokenizeLanguageStreamingFileTest extends CamelTestSupport {
             Namespaces ns = new Namespaces("C", "urn:c");
 
             public void configure() {
-                from(fileUri("?initialDelay=0&delay=10")).split().xtokenize("//C:child", ns).streaming()
+                from(fileUri(testDirectory, "?initialDelay=0&delay=10")).split().xtokenize("//C:child", ns).streaming()
                         .to("mock:result").end();
             }
         };