You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by cd...@apache.org on 2019/01/19 17:16:28 UTC

[incubator-plc4x] branch develop updated: - Bumped the karaf plugin to a newer version - Bumped the maven sonar plugin to a newer version - Merged the wireshark-utils with the test-utils - Added JUnit5 annotations for detecting an active internet connection - Added JUnit5 annotations for detecting an capture-all DNS service

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

cdutz pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/incubator-plc4x.git


The following commit(s) were added to refs/heads/develop by this push:
     new a05c0f4  - Bumped the karaf plugin to a newer version - Bumped the maven sonar plugin to a newer version - Merged the wireshark-utils with the test-utils - Added JUnit5 annotations for detecting an active internet connection - Added JUnit5 annotations for detecting an capture-all DNS service
a05c0f4 is described below

commit a05c0f4f43641c763acd1f1e08eb847e6b118bba
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Sat Jan 19 18:16:24 2019 +0100

    - Bumped the karaf plugin to a newer version
    - Bumped the maven sonar plugin to a newer version
    - Merged the wireshark-utils with the test-utils
    - Added JUnit5 annotations for detecting an active internet connection
    - Added JUnit5 annotations for detecting an capture-all DNS service
---
 .../pom.xml => Sometimes-Failling-Tests.md         | 26 ++++------
 integrations/apache-karaf/pom.xml                  |  4 +-
 plc4j/drivers/ads/pom.xml                          |  6 +++
 .../apache/plc4x/java/ads/AdsPlcDriverTest.java    | 36 ++++++++++----
 plc4j/drivers/s7/pom.xml                           |  2 +-
 .../java/s7/connection/S7PlcConnectionIT.java      |  2 +-
 plc4j/utils/pom.xml                                |  1 -
 plc4j/utils/raw-sockets/pom.xml                    |  2 +-
 .../java/utils/rawsockets/RawIpSocketTest.java     |  2 +-
 plc4j/utils/test-utils/pom.xml                     | 20 ++++++++
 .../plc4x/test/RequireInternetConnection.java}     |  6 +--
 .../test/RequireInternetConnectionCondition.java   | 45 +++++++++++++++++
 .../plc4x/test/RequireNonCaptureAllDns.java}       |  6 +--
 .../test/RequireNonCaptureAllDnsCondition.java     | 42 ++++++++++++++++
 .../java/org/apache/plc4x/test}/RequirePcap.java   |  2 +-
 .../apache/plc4x/test}/RequirePcapCondition.java   |  2 +-
 .../java/org/apache/plc4x/test}/RequirePcapNg.java |  2 +-
 .../apache/plc4x/test}/RequirePcapNgCondition.java |  2 +-
 plc4j/utils/wireshark-utils/pom.xml                | 58 ----------------------
 pom.xml                                            |  2 +-
 20 files changed, 166 insertions(+), 102 deletions(-)

diff --git a/plc4j/utils/test-utils/pom.xml b/Sometimes-Failling-Tests.md
similarity index 54%
copy from plc4j/utils/test-utils/pom.xml
copy to Sometimes-Failling-Tests.md
index e3c152b..818bfa3 100644
--- a/plc4j/utils/test-utils/pom.xml
+++ b/Sometimes-Failling-Tests.md
@@ -1,4 +1,3 @@
-<?xml version="1.0" encoding="UTF-8"?>
 <!--
 
   Licensed to the Apache Software Foundation (ASF) under one or more
@@ -17,22 +16,17 @@
   limitations under the License.
 
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 
-  <modelVersion>4.0.0</modelVersion>
+# Sometimes Failing Tests
 
-  <parent>
-    <groupId>org.apache.plc4x</groupId>
-    <artifactId>plc4j-utils</artifactId>
-    <version>0.4.0-SNAPSHOT</version>
-  </parent>
+This File contains the names and outputs of some tests that have been seen to fail without direct code-changes.
+It's sort of a collection of places we should keep an eye out for improving tests-
 
-  <artifactId>plc4j-utils-test-utils</artifactId>
+## Module: plc4l-opm
 
-  <name>PLC4J: Utils: Test Utils</name>
-  <description>A set of test utils. Especially defining the test-categories used to categorize tests.</description>
-
-  <dependencies>
-  </dependencies>
-
-</project>
\ No newline at end of file
+[ERROR]   ConnectedEntityTest.useCache_timeout_refetches:83
+mockDevice.read(<any>);
+Wanted 2 times:
+-> at org.apache.plc4x.java.opm.ConnectedEntityTest.useCache_timeout_refetches(ConnectedEntityTest.java:83)
+But was 1 time:
+-> at org.apache.plc4x.java.mock.PlcMockConnection.lambda$null$0(PlcMockConnection.java:111)
diff --git a/integrations/apache-karaf/pom.xml b/integrations/apache-karaf/pom.xml
index 5c3ee2f..bbe11c9 100644
--- a/integrations/apache-karaf/pom.xml
+++ b/integrations/apache-karaf/pom.xml
@@ -35,7 +35,7 @@
   <description>Integration module for integrating PLC4X into Apache Karaf.</description>
 
   <properties>
-    <karaf.version>4.2.1</karaf.version>
+    <karaf.version>4.2.2</karaf.version>
     <karaf-maven-plugin.version>${karaf.version}</karaf-maven-plugin.version>
   </properties>
 
@@ -54,7 +54,7 @@
       <plugin>
         <groupId>com.buschmais.jqassistant</groupId>
         <artifactId>jqassistant-maven-plugin</artifactId>
-        <version>1.5.0</version>
+        <version>1.6.0</version>
         <configuration>
           <skip>true</skip>
         </configuration>
diff --git a/plc4j/drivers/ads/pom.xml b/plc4j/drivers/ads/pom.xml
index e0cc271..59a40a7 100644
--- a/plc4j/drivers/ads/pom.xml
+++ b/plc4j/drivers/ads/pom.xml
@@ -87,6 +87,12 @@
       <scope>test</scope>
     </dependency>
     <dependency>
+      <groupId>org.apache.plc4x</groupId>
+      <artifactId>plc4j-utils-test-utils</artifactId>
+      <version>0.4.0-SNAPSHOT</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
       <groupId>commons-codec</groupId>
       <artifactId>commons-codec</artifactId>
       <scope>test</scope>
diff --git a/plc4j/drivers/ads/src/test/java/org/apache/plc4x/java/ads/AdsPlcDriverTest.java b/plc4j/drivers/ads/src/test/java/org/apache/plc4x/java/ads/AdsPlcDriverTest.java
index 260ec11..0894b3c 100644
--- a/plc4j/drivers/ads/src/test/java/org/apache/plc4x/java/ads/AdsPlcDriverTest.java
+++ b/plc4j/drivers/ads/src/test/java/org/apache/plc4x/java/ads/AdsPlcDriverTest.java
@@ -28,8 +28,8 @@ import org.apache.plc4x.java.api.exceptions.PlcConnectionException;
 import org.apache.plc4x.java.api.exceptions.PlcException;
 import org.apache.plc4x.java.api.exceptions.PlcRuntimeException;
 import org.apache.plc4x.java.base.connection.tcp.TcpHexDumper;
-import org.junit.Rule;
-import org.junit.Test;
+import org.apache.plc4x.test.RequireInternetConnection;
+import org.junit.jupiter.api.*;
 
 import java.net.ConnectException;
 import java.util.regex.Pattern;
@@ -42,9 +42,18 @@ import static org.mockito.Mockito.mock;
 
 public class AdsPlcDriverTest {
 
-    @Rule
     public TcpHexDumper tcpHexDumper = new TcpHexDumper(0, 2);
 
+    @BeforeEach
+    public void before() throws Throwable {
+        tcpHexDumper.before();
+    }
+
+    @AfterEach
+    public void after() {
+        tcpHexDumper.after();
+    }
+
     @Test
     public void testAdsAddressPattern() {
         assertMatching(ADS_ADDRESS_PATTERN, "0.0.0.0.0.0:13");
@@ -69,6 +78,7 @@ public class AdsPlcDriverTest {
     }
 
     @Test
+    @RequireInternetConnection
     public void testDriverWithCompleteUrls() {
         AdsPlcDriver SUT = new AdsPlcDriver(mock(AdsConnectionFactory.class));
         Stream.of(
@@ -101,10 +111,12 @@ public class AdsPlcDriverTest {
         adsConnection.close();
     }
 
-    @Test(expected = PlcConnectionException.class)
+    @Test
     public void getConnectionNoAuthSupported() throws Exception {
-        new PlcDriverManager().getConnection("ads:tcp://localhost:" + tcpHexDumper.getPort() + "/0.0.0.0.0.0:13",
-            new PlcUsernamePasswordAuthentication("admin", "admin"));
+        Assertions.assertThrows(PlcConnectionException.class, () ->
+            new PlcDriverManager().getConnection("ads:tcp://localhost:" + tcpHexDumper.getPort() + "/0.0.0.0.0.0:13",
+                new PlcUsernamePasswordAuthentication("admin", "admin"))
+        );
     }
 
     @Test
@@ -122,9 +134,11 @@ public class AdsPlcDriverTest {
         }
     }
 
-    @Test(expected = PlcConnectionException.class)
+    @Test
     public void getConnectionUnknownPort() throws Exception {
-        new PlcDriverManager().getConnection("ads:tcp://nowhere:unknown/0.0.0.0.0.0:13");
+        Assertions.assertThrows(PlcConnectionException.class, () ->
+            new PlcDriverManager().getConnection("ads:tcp://nowhere:unknown/0.0.0.0.0.0:13")
+        );
     }
 
     /**
@@ -132,9 +146,11 @@ public class AdsPlcDriverTest {
      *
      * @throws PlcException something went wrong
      */
-    @Test(expected = PlcConnectionException.class)
+    @Test
     public void getConnectionInvalidUrl() throws PlcException {
-        new PlcDriverManager().getConnection("ads:tcp://localhost/hurz/2");
+        Assertions.assertThrows(PlcConnectionException.class, () ->
+            new PlcDriverManager().getConnection("ads:tcp://localhost/hurz/2")
+        );
     }
 
     @Test
diff --git a/plc4j/drivers/s7/pom.xml b/plc4j/drivers/s7/pom.xml
index 124aa47..a4241e4 100644
--- a/plc4j/drivers/s7/pom.xml
+++ b/plc4j/drivers/s7/pom.xml
@@ -108,7 +108,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.plc4x</groupId>
-      <artifactId>plc4j-utils-wireshark-utils</artifactId>
+      <artifactId>plc4j-utils-test-utils</artifactId>
       <version>0.4.0-SNAPSHOT</version>
       <scope>test</scope>
     </dependency>
diff --git a/plc4j/drivers/s7/src/test/java/org/apache/plc4x/java/s7/connection/S7PlcConnectionIT.java b/plc4j/drivers/s7/src/test/java/org/apache/plc4x/java/s7/connection/S7PlcConnectionIT.java
index e5c61ec..e12418e 100644
--- a/plc4j/drivers/s7/src/test/java/org/apache/plc4x/java/s7/connection/S7PlcConnectionIT.java
+++ b/plc4j/drivers/s7/src/test/java/org/apache/plc4x/java/s7/connection/S7PlcConnectionIT.java
@@ -24,7 +24,7 @@ import org.apache.plc4x.java.api.messages.PlcReadRequest;
 import org.apache.plc4x.java.api.messages.PlcReadResponse;
 import org.apache.plc4x.java.api.messages.PlcWriteRequest;
 import org.apache.plc4x.java.api.messages.PlcWriteResponse;
-import org.apache.plc4x.java.utils.RequirePcapNg;
+import org.apache.plc4x.test.RequirePcapNg;
 import org.junit.Rule;
 import org.junit.jupiter.api.*;
 import org.junit.rules.Timeout;
diff --git a/plc4j/utils/pom.xml b/plc4j/utils/pom.xml
index 9740a1d..12650e7 100644
--- a/plc4j/utils/pom.xml
+++ b/plc4j/utils/pom.xml
@@ -38,7 +38,6 @@
     <module>opm</module>
     <module>raw-sockets</module>
     <module>test-utils</module>
-    <module>wireshark-utils</module>
     <module>scraper</module>
   </modules>
 
diff --git a/plc4j/utils/raw-sockets/pom.xml b/plc4j/utils/raw-sockets/pom.xml
index 6c0b648..4a9b8b4 100644
--- a/plc4j/utils/raw-sockets/pom.xml
+++ b/plc4j/utils/raw-sockets/pom.xml
@@ -61,7 +61,7 @@
 
     <dependency>
       <groupId>org.apache.plc4x</groupId>
-      <artifactId>plc4j-utils-wireshark-utils</artifactId>
+      <artifactId>plc4j-utils-test-utils</artifactId>
       <version>0.4.0-SNAPSHOT</version>
       <scope>test</scope>
     </dependency>
diff --git a/plc4j/utils/raw-sockets/src/test/java/org/apache/plc4x/java/utils/rawsockets/RawIpSocketTest.java b/plc4j/utils/raw-sockets/src/test/java/org/apache/plc4x/java/utils/rawsockets/RawIpSocketTest.java
index 7377821..d47ba34 100644
--- a/plc4j/utils/raw-sockets/src/test/java/org/apache/plc4x/java/utils/rawsockets/RawIpSocketTest.java
+++ b/plc4j/utils/raw-sockets/src/test/java/org/apache/plc4x/java/utils/rawsockets/RawIpSocketTest.java
@@ -15,7 +15,7 @@
  */
 package org.apache.plc4x.java.utils.rawsockets;
 
-import org.apache.plc4x.java.utils.RequirePcap;
+import org.apache.plc4x.test.RequirePcap;
 import org.junit.Ignore;
 import org.junit.Test;
 import org.pcap4j.core.PcapAddress;
diff --git a/plc4j/utils/test-utils/pom.xml b/plc4j/utils/test-utils/pom.xml
index e3c152b..0e1ef55 100644
--- a/plc4j/utils/test-utils/pom.xml
+++ b/plc4j/utils/test-utils/pom.xml
@@ -33,6 +33,26 @@
   <description>A set of test utils. Especially defining the test-categories used to categorize tests.</description>
 
   <dependencies>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-lang3</artifactId>
+    </dependency>
+
+    <dependency>
+      <groupId>org.pcap4j</groupId>
+      <artifactId>pcap4j-core</artifactId>
+    </dependency>
+
+    <!-- Needed for the version comparison -->
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-artifact</artifactId>
+    </dependency>
+
+    <dependency>
+      <groupId>org.junit.jupiter</groupId>
+      <artifactId>junit-jupiter-api</artifactId>
+    </dependency>
   </dependencies>
 
 </project>
\ No newline at end of file
diff --git a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireInternetConnection.java
similarity index 89%
copy from plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java
copy to plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireInternetConnection.java
index eb125d5..583129a 100644
--- a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java
+++ b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireInternetConnection.java
@@ -17,7 +17,7 @@
  under the License.
  */
 
-package org.apache.plc4x.java.utils;
+package org.apache.plc4x.test;
 
 import org.junit.jupiter.api.extension.ExtendWith;
 
@@ -28,6 +28,6 @@ import java.lang.annotation.Target;
 
 @Target({ ElementType.TYPE, ElementType.METHOD })
 @Retention(RetentionPolicy.RUNTIME)
-@ExtendWith(RequirePcapNgCondition.class)
-public @interface RequirePcapNg {
+@ExtendWith(RequireInternetConnectionCondition.class)
+public @interface RequireInternetConnection {
 }
diff --git a/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireInternetConnectionCondition.java b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireInternetConnectionCondition.java
new file mode 100644
index 0000000..7881876
--- /dev/null
+++ b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireInternetConnectionCondition.java
@@ -0,0 +1,45 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ */
+
+package org.apache.plc4x.test;
+
+import org.junit.jupiter.api.extension.ConditionEvaluationResult;
+import org.junit.jupiter.api.extension.ExecutionCondition;
+import org.junit.jupiter.api.extension.ExtensionContext;
+
+import java.net.InetAddress;
+
+public class RequireInternetConnectionCondition implements ExecutionCondition {
+
+    @Override
+    public ConditionEvaluationResult evaluateExecutionCondition(ExtensionContext extensionContext) {
+        try {
+            InetAddress[] address = InetAddress.getAllByName("apache.org");
+            for (InetAddress inetAddress : address) {
+                if(inetAddress.isReachable(3000)) {
+                    return ConditionEvaluationResult.enabled("Internet connection detected.");
+                }
+            }
+        } catch(Exception e) {
+            // Ignore ...
+        }
+        return ConditionEvaluationResult.disabled("No Internet connection detected.");
+    }
+
+}
diff --git a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireNonCaptureAllDns.java
similarity index 89%
copy from plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java
copy to plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireNonCaptureAllDns.java
index eb125d5..b393c3d 100644
--- a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java
+++ b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireNonCaptureAllDns.java
@@ -17,7 +17,7 @@
  under the License.
  */
 
-package org.apache.plc4x.java.utils;
+package org.apache.plc4x.test;
 
 import org.junit.jupiter.api.extension.ExtendWith;
 
@@ -28,6 +28,6 @@ import java.lang.annotation.Target;
 
 @Target({ ElementType.TYPE, ElementType.METHOD })
 @Retention(RetentionPolicy.RUNTIME)
-@ExtendWith(RequirePcapNgCondition.class)
-public @interface RequirePcapNg {
+@ExtendWith(RequireNonCaptureAllDnsCondition.class)
+public @interface RequireNonCaptureAllDns {
 }
diff --git a/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireNonCaptureAllDnsCondition.java b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireNonCaptureAllDnsCondition.java
new file mode 100644
index 0000000..8d1663e
--- /dev/null
+++ b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequireNonCaptureAllDnsCondition.java
@@ -0,0 +1,42 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ */
+
+package org.apache.plc4x.test;
+
+import org.junit.jupiter.api.extension.ConditionEvaluationResult;
+import org.junit.jupiter.api.extension.ExecutionCondition;
+import org.junit.jupiter.api.extension.ExtensionContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.net.InetAddress;
+
+public class RequireNonCaptureAllDnsCondition implements ExecutionCondition {
+
+    @Override
+    public ConditionEvaluationResult evaluateExecutionCondition(ExtensionContext extensionContext) {
+        try {
+            InetAddress.getByName("somedomainhopefullynoonewilleverhaveeli8vyh347l7bafiy3tbkry3wr");
+            return ConditionEvaluationResult.disabled("DNS Server returned an address: Capture-All DNS Server detected.");
+        } catch(Exception e) {
+            return ConditionEvaluationResult.enabled("No Capture-All DNS Server found.");
+        }
+    }
+
+}
diff --git a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcap.java b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcap.java
similarity index 96%
rename from plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcap.java
rename to plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcap.java
index 2b68c11..095a80f 100644
--- a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcap.java
+++ b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcap.java
@@ -17,7 +17,7 @@
  under the License.
  */
 
-package org.apache.plc4x.java.utils;
+package org.apache.plc4x.test;
 
 import org.junit.jupiter.api.extension.ExtendWith;
 
diff --git a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapCondition.java b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapCondition.java
similarity index 98%
rename from plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapCondition.java
rename to plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapCondition.java
index bdd0ae0..e76606f 100644
--- a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapCondition.java
+++ b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapCondition.java
@@ -17,7 +17,7 @@
  under the License.
  */
 
-package org.apache.plc4x.java.utils;
+package org.apache.plc4x.test;
 
 import org.apache.commons.lang3.SystemUtils;
 import org.junit.jupiter.api.extension.ConditionEvaluationResult;
diff --git a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapNg.java
similarity index 96%
rename from plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java
rename to plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapNg.java
index eb125d5..35e1f89 100644
--- a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNg.java
+++ b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapNg.java
@@ -17,7 +17,7 @@
  under the License.
  */
 
-package org.apache.plc4x.java.utils;
+package org.apache.plc4x.test;
 
 import org.junit.jupiter.api.extension.ExtendWith;
 
diff --git a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNgCondition.java b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapNgCondition.java
similarity index 98%
rename from plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNgCondition.java
rename to plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapNgCondition.java
index a3dcab8..62522e4 100644
--- a/plc4j/utils/wireshark-utils/src/main/java/org/apache/plc4x/java/utils/RequirePcapNgCondition.java
+++ b/plc4j/utils/test-utils/src/main/java/org/apache/plc4x/test/RequirePcapNgCondition.java
@@ -17,7 +17,7 @@
  under the License.
  */
 
-package org.apache.plc4x.java.utils;
+package org.apache.plc4x.test;
 
 import org.apache.commons.lang3.SystemUtils;
 import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
diff --git a/plc4j/utils/wireshark-utils/pom.xml b/plc4j/utils/wireshark-utils/pom.xml
deleted file mode 100644
index 0d5cbc2..0000000
--- a/plc4j/utils/wireshark-utils/pom.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.plc4x</groupId>
-    <artifactId>plc4j-utils</artifactId>
-    <version>0.4.0-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>plc4j-utils-wireshark-utils</artifactId>
-
-  <name>PLC4J: Utils: WireShark Utils</name>
-  <description>A set of helper utilities that allow reading and writing of `pcap` files so they can be inspected with WireShark.</description>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.commons</groupId>
-      <artifactId>commons-lang3</artifactId>
-    </dependency>
-
-    <dependency>
-      <groupId>org.pcap4j</groupId>
-      <artifactId>pcap4j-core</artifactId>
-    </dependency>
-
-    <!-- Needed for the version comparison -->
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-artifact</artifactId>
-    </dependency>
-
-    <dependency>
-      <groupId>org.junit.jupiter</groupId>
-      <artifactId>junit-jupiter-api</artifactId>
-    </dependency>
-  </dependencies>
-
-</project>
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 1d5670f..9ff3e66 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1043,7 +1043,7 @@
         <plugin>
           <groupId>org.sonarsource.scanner.maven</groupId>
           <artifactId>sonar-maven-plugin</artifactId>
-          <version>3.5.0.1254</version>
+          <version>3.6.0.1398</version>
         </plugin>
 
         <!-- Configure the Site generation -->