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

slachiewicz pushed a commit to branch plexus1
in repository https://gitbox.apache.org/repos/asf/maven-wagon.git

commit 95e4c6444eaf05afe65a3309433985fe3d31cc50
Author: Sylwester Lachiewicz <[email protected]>
AuthorDate: Sat Dec 13 23:26:41 2025 +0100

    Drop dependency to plexus-utils for wagon-provider-api and code cleanup. 
JUnit5
---
 wagon-provider-api/pom.xml                         |   8 +-
 .../java/org/apache/maven/wagon/AbstractWagon.java |  94 +++++-----
 .../apache/maven/wagon/LazyFileOutputStream.java   |  10 +-
 .../java/org/apache/maven/wagon/PathUtils.java     |   6 +-
 .../apache/maven/wagon/PermissionModeUtils.java    |   2 +-
 .../java/org/apache/maven/wagon/StreamWagon.java   |  20 ++-
 .../org/apache/maven/wagon/StreamingWagon.java     |   1 +
 .../org/apache/maven/wagon/WagonException.java     |  29 +--
 .../java/org/apache/maven/wagon/WagonUtils.java    |  21 +--
 .../apache/maven/wagon/events/SessionEvent.java    |   1 +
 .../apache/maven/wagon/events/TransferEvent.java   |   3 +
 .../wagon/observers/AbstractTransferListener.java  |   6 +
 .../maven/wagon/observers/ChecksumObserver.java    |   6 +
 .../org/apache/maven/wagon/observers/Debug.java    |  19 +-
 .../org/apache/maven/wagon/proxy/ProxyUtils.java   |   2 +-
 .../apache/maven/wagon/repository/Repository.java  |   7 +-
 .../org/apache/maven/wagon/resource/Resource.java  |   7 +-
 .../org/apache/maven/wagon/AbstractWagonTest.java  | 199 +++++++++++----------
 .../maven/wagon/CannotConnectExceptionTest.java    |   9 +-
 .../org/apache/maven/wagon/InputStreamMock.java    |   2 +
 .../maven/wagon/LazyFileOutputStreamTest.java      |  19 +-
 .../maven/wagon/NotAuthorizedExceptionTest.java    |   9 +-
 .../org/apache/maven/wagon/OutputStreamMock.java   |   2 +
 .../java/org/apache/maven/wagon/PathUtilsTest.java |  65 ++++---
 .../maven/wagon/PermissionModeUtilsTest.java       |  10 +-
 .../wagon/ResourceDoesNotExistExceptionTest.java   |   9 +-
 .../org/apache/maven/wagon/StreamWagonTest.java    | 169 ++++++++++-------
 .../maven/wagon/TransferFailedExceptionTest.java   |   9 +-
 .../java/org/apache/maven/wagon/WagonMock.java     |  21 ++-
 .../AuthenticationExceptionTest.java               |  26 +--
 .../authentication/AuthenticationInfoTest.java     |  20 +--
 .../wagon/events/SessionEventSupportTest.java      |  45 +++--
 .../maven/wagon/events/SessionEventTest.java       |  25 +--
 .../wagon/events/TransferEventSupportTest.java     |  35 ++--
 .../maven/wagon/events/TransferEventTest.java      |  28 +--
 .../wagon/observers/ChecksumObserverTest.java      |  37 ++--
 .../apache/maven/wagon/proxy/ProxyInfoTest.java    |  20 +--
 .../maven/wagon/proxy/ProxyInfoUtilsTest.java      |  45 +++--
 .../repository/RepositoryPermissionsTest.java      |  20 +--
 .../maven/wagon/repository/RepositoryTest.java     |  25 +--
 40 files changed, 594 insertions(+), 497 deletions(-)

diff --git a/wagon-provider-api/pom.xml b/wagon-provider-api/pom.xml
index 80b7f595..ac79d286 100644
--- a/wagon-provider-api/pom.xml
+++ b/wagon-provider-api/pom.xml
@@ -31,18 +31,14 @@ under the License.
   <description>Maven Wagon API that defines the contract between different 
Wagon implementations</description>
 
   <dependencies>
-    <dependency>
-      <groupId>org.codehaus.plexus</groupId>
-      <artifactId>plexus-utils</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.easymock</groupId>
       <artifactId>easymock</artifactId>
       <scope>test</scope>
     </dependency>
     <dependency>
-      <groupId>junit</groupId>
-      <artifactId>junit</artifactId>
+      <groupId>org.junit.jupiter</groupId>
+      <artifactId>junit-jupiter</artifactId>
       <scope>test</scope>
     </dependency>
   </dependencies>
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/AbstractWagon.java 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/AbstractWagon.java
index 10a5acaa..cc9665f8 100644
--- a/wagon-provider-api/src/main/java/org/apache/maven/wagon/AbstractWagon.java
+++ b/wagon-provider-api/src/main/java/org/apache/maven/wagon/AbstractWagon.java
@@ -28,6 +28,7 @@
 import java.nio.ByteBuffer;
 import java.nio.channels.Channels;
 import java.nio.channels.ReadableByteChannel;
+import java.nio.file.Files;
 import java.util.List;
 
 import org.apache.maven.wagon.authentication.AuthenticationException;
@@ -45,7 +46,6 @@
 import org.apache.maven.wagon.repository.Repository;
 import org.apache.maven.wagon.repository.RepositoryPermissions;
 import org.apache.maven.wagon.resource.Resource;
-import org.codehaus.plexus.util.IOUtil;
 
 import static java.lang.Math.max;
 import static java.lang.Math.min;
@@ -108,6 +108,7 @@ public abstract class AbstractWagon implements Wagon {
     // Accessors
     // ----------------------------------------------------------------------
 
+    @Override
     public Repository getRepository() {
         return repository;
     }
@@ -124,53 +125,55 @@ public AuthenticationInfo getAuthenticationInfo() {
     // Connection
     // ----------------------------------------------------------------------
 
+    @Deprecated
+    @Override
     public void openConnection() throws ConnectionException, 
AuthenticationException {
         try {
             openConnectionInternal();
-        } catch (ConnectionException e) {
-            fireSessionConnectionRefused();
-
-            throw e;
-        } catch (AuthenticationException e) {
+        } catch (ConnectionException | AuthenticationException e) {
             fireSessionConnectionRefused();
 
             throw e;
         }
     }
 
+    @Override
     public void connect(Repository repository) throws ConnectionException, 
AuthenticationException {
         connect(repository, null, (ProxyInfoProvider) null);
     }
 
+    @Override
     public void connect(Repository repository, ProxyInfo proxyInfo)
             throws ConnectionException, AuthenticationException {
         connect(repository, null, proxyInfo);
     }
 
+    @Override
     public void connect(Repository repository, ProxyInfoProvider 
proxyInfoProvider)
             throws ConnectionException, AuthenticationException {
         connect(repository, null, proxyInfoProvider);
     }
 
+    @Override
     public void connect(Repository repository, AuthenticationInfo 
authenticationInfo)
             throws ConnectionException, AuthenticationException {
         connect(repository, authenticationInfo, (ProxyInfoProvider) null);
     }
 
+    @Override
     public void connect(Repository repository, AuthenticationInfo 
authenticationInfo, ProxyInfo proxyInfo)
             throws ConnectionException, AuthenticationException {
         final ProxyInfo proxy = proxyInfo;
-        connect(repository, authenticationInfo, new ProxyInfoProvider() {
-            public ProxyInfo getProxyInfo(String protocol) {
-                if (protocol == null || proxy == null || 
protocol.equalsIgnoreCase(proxy.getType())) {
-                    return proxy;
-                } else {
-                    return null;
-                }
+        connect(repository, authenticationInfo, (ProxyInfoProvider) protocol 
-> {
+            if (protocol == null || proxy == null || 
protocol.equalsIgnoreCase(proxy.getType())) {
+                return proxy;
+            } else {
+                return null;
             }
         });
     }
 
+    @Override
     public void connect(
             Repository repository, AuthenticationInfo authenticationInfo, 
ProxyInfoProvider proxyInfoProvider)
             throws ConnectionException, AuthenticationException {
@@ -211,6 +214,7 @@ public void connect(
 
     protected abstract void openConnectionInternal() throws 
ConnectionException, AuthenticationException;
 
+    @Override
     public void disconnect() throws ConnectionException {
         fireSessionDisconnecting();
 
@@ -242,10 +246,12 @@ protected void createParentDirectories(File destination) 
throws TransferFailedEx
         }
     }
 
+    @Override
     public void setTimeout(int timeoutValue) {
         connectionTimeout = timeoutValue;
     }
 
+    @Override
     public int getTimeout() {
         return connectionTimeout;
     }
@@ -277,12 +283,8 @@ protected void getTransfer(Resource resource, File 
destination, InputStream inpu
 
         fireGetStarted(resource, destination);
 
-        OutputStream output = null;
-        try {
-            output = new LazyFileOutputStream(destination);
+        try (OutputStream output = new LazyFileOutputStream(destination)) {
             getTransfer(resource, output, input, closeInput, maxSize);
-            output.close();
-            output = null;
         } catch (final IOException e) {
             if (destination.exists()) {
                 boolean deleted = destination.delete();
@@ -306,8 +308,6 @@ protected void getTransfer(Resource resource, File 
destination, InputStream inpu
                 }
             }
             throw e;
-        } finally {
-            IOUtil.close(output);
         }
 
         fireGetCompleted(resource, destination);
@@ -341,7 +341,12 @@ protected void getTransfer(
             throw new TransferFailedException(msg, e);
         } finally {
             if (closeInput) {
-                IOUtil.close(input);
+                if (input != null) {
+                    try {
+                        input.close();
+                    } catch (IOException ignore) {
+                    }
+                }
             }
 
             cleanupGetTransfer(resource);
@@ -376,25 +381,14 @@ protected void putTransfer(Resource resource, File 
source, OutputStream output,
      */
     protected void transfer(Resource resource, File source, OutputStream 
output, boolean closeOutput)
             throws TransferFailedException, AuthorizationException, 
ResourceDoesNotExistException {
-        InputStream input = null;
-
-        try {
-            input = new FileInputStream(source);
-
+        try (InputStream input = new FileInputStream(source)) {
             putTransfer(resource, input, output, closeOutput);
-
-            input.close();
-            input = null;
         } catch (FileNotFoundException e) {
             fireTransferError(resource, e, TransferEvent.REQUEST_PUT);
-
             throw new TransferFailedException("Specified source file does not 
exist: " + source, e);
         } catch (final IOException e) {
             fireTransferError(resource, e, TransferEvent.REQUEST_PUT);
-
             throw new TransferFailedException("Failure transferring " + 
source, e);
-        } finally {
-            IOUtil.close(input);
         }
     }
 
@@ -424,9 +418,13 @@ protected void putTransfer(Resource resource, InputStream 
input, OutputStream ou
             throw new TransferFailedException(msg, e);
         } finally {
             if (closeOutput) {
-                IOUtil.close(output);
+                if (output != null) {
+                    try {
+                        output.close();
+                    } catch (IOException ignore) {
+                    }
+                }
             }
-
             cleanupPutTransfer(resource);
         }
     }
@@ -483,6 +481,7 @@ protected void transfer(Resource resource, InputStream 
input, OutputStream outpu
      * @param maxSize     size of the buffer
      * @throws IOException
      */
+    @SuppressWarnings("RedundantCast")
     protected void transfer(Resource resource, InputStream input, OutputStream 
output, int requestType, long maxSize)
             throws IOException {
         ByteBuffer buffer = 
ByteBuffer.allocate(getBufferCapacityForTransfer(resource.getContentLength()));
@@ -722,26 +721,32 @@ protected void fireSessionDebug(String message) {
         sessionEventSupport.fireDebug(message);
     }
 
+    @Override
     public boolean hasTransferListener(TransferListener listener) {
         return transferEventSupport.hasTransferListener(listener);
     }
 
+    @Override
     public void addTransferListener(TransferListener listener) {
         transferEventSupport.addTransferListener(listener);
     }
 
+    @Override
     public void removeTransferListener(TransferListener listener) {
         transferEventSupport.removeTransferListener(listener);
     }
 
+    @Override
     public void addSessionListener(SessionListener listener) {
         sessionEventSupport.addSessionListener(listener);
     }
 
+    @Override
     public boolean hasSessionListener(SessionListener listener) {
         return sessionEventSupport.hasSessionListener(listener);
     }
 
+    @Override
     public void removeSessionListener(SessionListener listener) {
         sessionEventSupport.removeSessionListener(listener);
     }
@@ -779,10 +784,7 @@ protected void postProcessListeners(Resource resource, 
File source, int requestT
         transferEvent.setTimestamp(System.currentTimeMillis());
         transferEvent.setLocalFile(source);
 
-        InputStream input = null;
-        try {
-            input = new FileInputStream(source);
-
+        try (InputStream input = Files.newInputStream(source.toPath())) {
             while (true) {
                 int n = input.read(buffer);
 
@@ -792,23 +794,19 @@ protected void postProcessListeners(Resource resource, 
File source, int requestT
 
                 fireTransferProgress(transferEvent, buffer, n);
             }
-
-            input.close();
-            input = null;
         } catch (IOException e) {
             fireTransferError(resource, e, requestType);
-
             throw new TransferFailedException("Failed to post-process the 
source file", e);
-        } finally {
-            IOUtil.close(input);
         }
     }
 
+    @Override
     public void putDirectory(File sourceDirectory, String destinationDirectory)
             throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {
         throw new UnsupportedOperationException("The wagon you are using has 
not implemented putDirectory()");
     }
 
+    @Override
     public boolean supportsDirectoryCopy() {
         return false;
     }
@@ -823,19 +821,23 @@ protected static String getPath(String basedir, String 
dir) {
         return path;
     }
 
+    @Override
     public boolean isInteractive() {
         return interactive;
     }
 
+    @Override
     public void setInteractive(boolean interactive) {
         this.interactive = interactive;
     }
 
+    @Override
     public List<String> getFileList(String destinationDirectory)
             throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {
         throw new UnsupportedOperationException("The wagon you are using has 
not implemented getFileList()");
     }
 
+    @Override
     public boolean resourceExists(String resourceName) throws 
TransferFailedException, AuthorizationException {
         throw new UnsupportedOperationException("The wagon you are using has 
not implemented resourceExists()");
     }
@@ -858,10 +860,12 @@ public void setPermissionsOverride(RepositoryPermissions 
permissionsOverride) {
         this.permissionsOverride = permissionsOverride;
     }
 
+    @Override
     public void setReadTimeout(int readTimeout) {
         this.readTimeout = readTimeout;
     }
 
+    @Override
     public int getReadTimeout() {
         return this.readTimeout;
     }
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/LazyFileOutputStream.java
 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/LazyFileOutputStream.java
index ca248e36..79edb62a 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/LazyFileOutputStream.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/LazyFileOutputStream.java
@@ -35,7 +35,7 @@
  */
 public class LazyFileOutputStream extends OutputStream {
 
-    private File file;
+    private final File file;
 
     private FileOutputStream delegee;
 
@@ -47,16 +47,19 @@ public LazyFileOutputStream(File file) {
         this.file = file;
     }
 
+    @Override
     public void close() throws IOException {
         if (delegee != null) {
             delegee.close();
         }
     }
 
+    @Override
     public boolean equals(Object obj) {
         return delegee.equals(obj);
     }
 
+    @Override
     public void flush() throws IOException {
         if (delegee != null) {
             delegee.flush();
@@ -71,14 +74,17 @@ public FileDescriptor getFD() throws IOException {
         return delegee.getFD();
     }
 
+    @Override
     public int hashCode() {
         return delegee.hashCode();
     }
 
+    @Override
     public String toString() {
         return delegee.toString();
     }
 
+    @Override
     public void write(byte[] b) throws IOException {
         if (delegee == null) {
             initialize();
@@ -90,6 +96,7 @@ public void write(byte[] b) throws IOException {
     /**
      * @see java.io.OutputStream#write(byte[], int, int)
      */
+    @Override
     public void write(byte[] b, int off, int len) throws IOException {
         if (delegee == null) {
             initialize();
@@ -102,6 +109,7 @@ public void write(byte[] b, int off, int len) throws 
IOException {
      * @param b
      * @throws java.io.IOException
      */
+    @Override
     public void write(int b) throws IOException {
         if (delegee == null) {
             initialize();
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/PathUtils.java 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/PathUtils.java
index 998bca05..0d204cbe 100644
--- a/wagon-provider-api/src/main/java/org/apache/maven/wagon/PathUtils.java
+++ b/wagon-provider-api/src/main/java/org/apache/maven/wagon/PathUtils.java
@@ -109,13 +109,13 @@ private static String[] split(final String str, final 
String separator, final in
 
     /**
      * Return the host name (Removes protocol and path from the URL) E.g: for 
input
-     * <code>http://www.codehause.org</code> this method will return 
<code>www.apache.org</code>
+     * <code>http://www.apache.org</code> this method will return 
<code>www.apache.org</code>
      *
      * @param url the url
      * @return the host name
      */
     public static String host(final String url) {
-        if (url == null || url.length() == 0) {
+        if (url == null || url.isEmpty()) {
             return "localhost";
         }
         String authorization = authorization(url);
@@ -188,7 +188,7 @@ private static int endOfHostPosition(String host, int pos) {
      * Return the protocol name.
      * <br/>
      * E.g: for input
-     * <code>http://www.codehause.org</code> this method will return 
<code>http</code>
+     * <code>http://www.apache.org</code> this method will return 
<code>http</code>
      *
      * @param url the url
      * @return the host name
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/PermissionModeUtils.java
 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/PermissionModeUtils.java
index 0bd90b4e..f54c138e 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/PermissionModeUtils.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/PermissionModeUtils.java
@@ -38,7 +38,7 @@ public static String getUserMaskFor(String modeStr) {
         String ret = null;
 
         try {
-            int mode = Integer.valueOf(modeStr, 8).intValue();
+            int mode = Integer.valueOf(modeStr, 8);
 
             mode = mode % 8 + ((mode / 8) % 8) * 8 + ((mode / 64) % 8) * 64;
 
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/StreamWagon.java 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/StreamWagon.java
index 071171ad..b09b66e3 100644
--- a/wagon-provider-api/src/main/java/org/apache/maven/wagon/StreamWagon.java
+++ b/wagon-provider-api/src/main/java/org/apache/maven/wagon/StreamWagon.java
@@ -43,12 +43,14 @@ public abstract void fillInputData(InputData inputData)
 
     public abstract void fillOutputData(OutputData outputData) throws 
TransferFailedException;
 
+    @Override
     public abstract void closeConnection() throws ConnectionException;
 
     // ----------------------------------------------------------------------
     //
     // ----------------------------------------------------------------------
 
+    @Override
     public void get(String resourceName, File destination)
             throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {
         getIfNewer(resourceName, destination, 0);
@@ -63,6 +65,7 @@ protected void checkInputStream(InputStream is, Resource 
resource) throws Transf
         }
     }
 
+    @Override
     public boolean getIfNewer(String resourceName, File destination, long 
timestamp)
             throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {
         boolean retValue = false;
@@ -103,15 +106,7 @@ protected InputStream getInputStream(Resource resource)
 
         try {
             fillInputData(inputData);
-        } catch (TransferFailedException e) {
-            fireTransferError(resource, e, TransferEvent.REQUEST_GET);
-            cleanupGetTransfer(resource);
-            throw e;
-        } catch (ResourceDoesNotExistException e) {
-            fireTransferError(resource, e, TransferEvent.REQUEST_GET);
-            cleanupGetTransfer(resource);
-            throw e;
-        } catch (AuthorizationException e) {
+        } catch (TransferFailedException | ResourceDoesNotExistException | 
AuthorizationException e) {
             fireTransferError(resource, e, TransferEvent.REQUEST_GET);
             cleanupGetTransfer(resource);
             throw e;
@@ -125,6 +120,7 @@ protected InputStream getInputStream(Resource resource)
     }
 
     // source doesn't exist exception
+    @Override
     public void put(File source, String resourceName)
             throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {
         Resource resource = new Resource(resourceName);
@@ -171,6 +167,7 @@ protected OutputStream getOutputStream(Resource resource) 
throws TransferFailedE
         return outputData.getOutputStream();
     }
 
+    @Override
     public boolean getIfNewerToStream(String resourceName, OutputStream 
stream, long timestamp)
             throws ResourceDoesNotExistException, TransferFailedException, 
AuthorizationException {
         boolean retValue = false;
@@ -189,6 +186,7 @@ public boolean getIfNewerToStream(String resourceName, 
OutputStream stream, long
 
             fireGetStarted(resource, null);
 
+            //noinspection deprecation
             getTransfer(resource, stream, is, true, Integer.MAX_VALUE);
 
             fireGetCompleted(resource, null);
@@ -205,11 +203,14 @@ public boolean getIfNewerToStream(String resourceName, 
OutputStream stream, long
         return retValue;
     }
 
+    @Override
     public void getToStream(String resourceName, OutputStream stream)
             throws ResourceDoesNotExistException, TransferFailedException, 
AuthorizationException {
         getIfNewerToStream(resourceName, stream, 0);
     }
 
+    @Deprecated
+    @Override
     public void putFromStream(InputStream stream, String destination)
             throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {
         Resource resource = new Resource(destination);
@@ -219,6 +220,7 @@ public void putFromStream(InputStream stream, String 
destination)
         putFromStream(stream, resource);
     }
 
+    @Override
     public void putFromStream(InputStream stream, String destination, long 
contentLength, long lastModified)
             throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {
         Resource resource = new Resource(destination);
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/StreamingWagon.java 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/StreamingWagon.java
index 3ddbdbfa..d4ef7e78 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/StreamingWagon.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/StreamingWagon.java
@@ -69,6 +69,7 @@ boolean getIfNewerToStream(String resourceName, OutputStream 
stream, long timest
      * @throws ResourceDoesNotExistException
      * @throws AuthorizationException
      */
+    @Deprecated
     void putFromStream(InputStream stream, String destination)
             throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException;
 
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/WagonException.java 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/WagonException.java
index 23f6c898..ff440b4c 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/WagonException.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/WagonException.java
@@ -58,21 +58,8 @@ public WagonException(final String message) {
      *
      * @return the cause of this exception or null if the cause is nonexistent 
or unknown.
      */
+    @Override
     public Throwable getCause() {
-        //        try
-        //        {
-        //           Class clazz = getClass().getSuperclass();
-        //
-        //           Method method = clazz.getMethod( "gatCause" , null );
-        //
-        //           Throwable retValue = (Throwable) method.invoke( this, 
null );
-        //         return retValue;
-        //        }
-        //        catch( Exception e)
-        //        {
-        //
-        //        }
-
         return cause;
     }
 
@@ -86,20 +73,8 @@ public Throwable getCause() {
      *
      * @return a reference to this Throwable instance.
      */
+    @Override
     public Throwable initCause(final Throwable cause) {
-        //        try
-        //        {
-        //           Class clazz = getClass().getSuperclass();
-        //           Class[] parameterTypes = new Class[1];
-        //           parameterTypes[0] = Throwable.class;
-        //           Method method = clazz.getMethod( "initCause" , 
parameterTypes);
-        //           Object[] params = { cause };
-        //           method.invoke( this, params );
-        //        }
-        //        catch( Exception e)
-        //        {
-        //
-        //        }
         this.cause = cause;
         return this;
     }
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/WagonUtils.java 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/WagonUtils.java
index 85ae8855..2bc7cb40 100644
--- a/wagon-provider-api/src/main/java/org/apache/maven/wagon/WagonUtils.java
+++ b/wagon-provider-api/src/main/java/org/apache/maven/wagon/WagonUtils.java
@@ -20,16 +20,17 @@
 
 import java.io.File;
 import java.io.IOException;
+import java.nio.file.Files;
 import java.util.LinkedList;
 
 import org.apache.maven.wagon.authorization.AuthorizationException;
-import org.codehaus.plexus.util.FileUtils;
 
 /**
  * @author <a href="mailto:[email protected]";>Michal Maczka</a>
  *
  * @deprecated
  */
+@Deprecated
 public final class WagonUtils {
     private WagonUtils() {}
 
@@ -37,17 +38,13 @@ public static String toString(String resource, Wagon wagon)
             throws IOException, TransferFailedException, 
ResourceDoesNotExistException, AuthorizationException {
 
         File file = null;
-
         try {
             file = File.createTempFile("wagon", "tmp");
-
             wagon.get(resource, file);
-
-            return FileUtils.fileRead(file);
+            return new String(Files.readAllBytes(file.toPath()));
         } finally {
             if (file != null) {
                 boolean deleted = file.delete();
-
                 if (!deleted) {
                     file.deleteOnExit();
                 }
@@ -58,8 +55,7 @@ public static String toString(String resource, Wagon wagon)
     public static void putDirectory(File dir, Wagon wagon, boolean 
includeBasdir)
             throws ResourceDoesNotExistException, TransferFailedException, 
AuthorizationException {
 
-        LinkedList queue = new LinkedList();
-
+        LinkedList<String> queue = new LinkedList<>();
         if (includeBasdir) {
             queue.add(dir.getName());
         } else {
@@ -67,18 +63,17 @@ public static void putDirectory(File dir, Wagon wagon, 
boolean includeBasdir)
         }
 
         while (!queue.isEmpty()) {
-            String path = (String) queue.removeFirst();
+            String path = queue.removeFirst();
 
             File currentDir = new File(dir, path);
 
             File[] files = currentDir.listFiles();
 
-            for (int i = 0; i < files.length; i++) {
-                File file = files[i];
-
+            assert files != null;
+            for (File file : files) {
                 String resource;
 
-                if (path.length() > 0) {
+                if (!path.isEmpty()) {
                     resource = path + "/" + file.getName();
                 } else {
                     resource = file.getName();
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/events/SessionEvent.java
 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/events/SessionEvent.java
index c123aeda..f435cffb 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/events/SessionEvent.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/events/SessionEvent.java
@@ -157,6 +157,7 @@ public void setException(final Exception exception) {
         this.exception = exception;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
 
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/events/TransferEvent.java
 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/events/TransferEvent.java
index 0d1c2076..c3625a0c 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/events/TransferEvent.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/events/TransferEvent.java
@@ -184,6 +184,7 @@ public void setLocalFile(File localFile) {
         this.localFile = localFile;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
 
@@ -233,6 +234,7 @@ public String toString() {
         return sb.toString();
     }
 
+    @Override
     public int hashCode() {
         final int prime = 31;
         int result = 1;
@@ -244,6 +246,7 @@ public int hashCode() {
         return result;
     }
 
+    @Override
     public boolean equals(Object obj) {
         if (this == obj) {
             return true;
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/AbstractTransferListener.java
 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/AbstractTransferListener.java
index 14e14847..bf3c9c32 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/AbstractTransferListener.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/AbstractTransferListener.java
@@ -28,21 +28,27 @@
  *
  */
 public abstract class AbstractTransferListener implements TransferListener {
+    @Override
     public void transferInitiated(TransferEvent transferEvent) {}
 
     /**
      * @see 
org.apache.maven.wagon.events.TransferListener#transferStarted(org.apache.maven.wagon.events.TransferEvent)
      */
+    @Override
     public void transferStarted(TransferEvent transferEvent) {}
 
     /**
      * @see 
org.apache.maven.wagon.events.TransferListener#transferProgress(org.apache.maven.wagon.events.TransferEvent,byte[],int)
      */
+    @Override
     public void transferProgress(TransferEvent transferEvent, byte[] buffer, 
int length) {}
 
+    @Override
     public void transferCompleted(TransferEvent transferEvent) {}
 
+    @Override
     public void transferError(TransferEvent transferEvent) {}
 
+    @Override
     public void debug(String message) {}
 }
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/ChecksumObserver.java
 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/ChecksumObserver.java
index b5a0cb86..f06e52c8 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/ChecksumObserver.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/ChecksumObserver.java
@@ -46,6 +46,7 @@ public ChecksumObserver(String algorithm) throws 
NoSuchAlgorithmException {
         digester = MessageDigest.getInstance(algorithm);
     }
 
+    @Override
     public void transferInitiated(TransferEvent transferEvent) {
         // This space left intentionally blank
     }
@@ -53,6 +54,7 @@ public void transferInitiated(TransferEvent transferEvent) {
     /**
      * @see 
org.apache.maven.wagon.events.TransferListener#transferStarted(org.apache.maven.wagon.events.TransferEvent)
      */
+    @Override
     public void transferStarted(TransferEvent transferEvent) {
         actualChecksum = null;
 
@@ -62,20 +64,24 @@ public void transferStarted(TransferEvent transferEvent) {
     /**
      * @see 
org.apache.maven.wagon.events.TransferListener#transferProgress(org.apache.maven.wagon.events.TransferEvent,
 byte[], int)
      */
+    @Override
     public void transferProgress(TransferEvent transferEvent, byte[] buffer, 
int length) {
         digester.update(buffer, 0, length);
     }
 
+    @Override
     public void transferCompleted(TransferEvent transferEvent) {
         actualChecksum = encode(digester.digest());
     }
 
+    @Override
     public void transferError(TransferEvent transferEvent) {
         digester.reset();
 
         actualChecksum = null;
     }
 
+    @Override
     public void debug(String message) {
         // left intentionally blank
     }
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/Debug.java 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/Debug.java
index 30b69ece..6d898d99 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/Debug.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/observers/Debug.java
@@ -30,7 +30,7 @@
  *
  */
 public class Debug implements SessionListener, TransferListener {
-    private PrintStream out;
+    private final PrintStream out;
 
     long timestamp;
 
@@ -47,6 +47,7 @@ public Debug(PrintStream out) {
     /**
      * @see SessionListener#sessionOpening(SessionEvent)
      */
+    @Override
     public void sessionOpening(final SessionEvent sessionEvent) {
         // out.println( .getUrl() + " - Session: Opening  ");
     }
@@ -54,6 +55,7 @@ public void sessionOpening(final SessionEvent sessionEvent) {
     /**
      * @see SessionListener#sessionOpened(SessionEvent)
      */
+    @Override
     public void sessionOpened(final SessionEvent sessionEvent) {
         out.println(sessionEvent.getWagon().getRepository().getUrl() + " - 
Session: Opened  ");
     }
@@ -61,6 +63,7 @@ public void sessionOpened(final SessionEvent sessionEvent) {
     /**
      * @see SessionListener#sessionDisconnecting(SessionEvent)
      */
+    @Override
     public void sessionDisconnecting(final SessionEvent sessionEvent) {
         out.println(sessionEvent.getWagon().getRepository().getUrl() + " - 
Session: Disconnecting  ");
     }
@@ -68,6 +71,7 @@ public void sessionDisconnecting(final SessionEvent 
sessionEvent) {
     /**
      * @see SessionListener#sessionDisconnected(SessionEvent)
      */
+    @Override
     public void sessionDisconnected(final SessionEvent sessionEvent) {
         out.println(sessionEvent.getWagon().getRepository().getUrl() + " - 
Session: Disconnected");
     }
@@ -75,6 +79,7 @@ public void sessionDisconnected(final SessionEvent 
sessionEvent) {
     /**
      * @see SessionListener#sessionConnectionRefused(SessionEvent)
      */
+    @Override
     public void sessionConnectionRefused(final SessionEvent sessionEvent) {
         out.println(sessionEvent.getWagon().getRepository().getUrl() + " - 
Session: Connection refused");
     }
@@ -82,6 +87,7 @@ public void sessionConnectionRefused(final SessionEvent 
sessionEvent) {
     /**
      * @see SessionListener#sessionLoggedIn(SessionEvent)
      */
+    @Override
     public void sessionLoggedIn(final SessionEvent sessionEvent) {
         out.println(sessionEvent.getWagon().getRepository().getUrl() + " - 
Session: Logged in");
     }
@@ -89,6 +95,7 @@ public void sessionLoggedIn(final SessionEvent sessionEvent) {
     /**
      * @see SessionListener#sessionLoggedOff(SessionEvent)
      */
+    @Override
     public void sessionLoggedOff(final SessionEvent sessionEvent) {
         out.println(sessionEvent.getWagon().getRepository().getUrl() + " - 
Session: Logged off");
     }
@@ -96,10 +103,12 @@ public void sessionLoggedOff(final SessionEvent 
sessionEvent) {
     /**
      * @see TransferListener#debug(String)
      */
+    @Override
     public void debug(final String message) {
         out.println(message);
     }
 
+    @Override
     public void transferInitiated(TransferEvent transferEvent) {
         // This space left intentionally blank
     }
@@ -107,6 +116,7 @@ public void transferInitiated(TransferEvent transferEvent) {
     /**
      * @see TransferListener#transferStarted(TransferEvent)
      */
+    @Override
     public void transferStarted(final TransferEvent transferEvent) {
         timestamp = transferEvent.getTimestamp();
 
@@ -128,17 +138,16 @@ public void transferStarted(final TransferEvent 
transferEvent) {
     /**
      * @see TransferListener#transferProgress(TransferEvent,byte[],int)
      */
+    @Override
     public void transferProgress(final TransferEvent transferEvent, byte[] 
buffer, int length) {
-
         out.print("#");
-        // String data = new String( transferEvent.getData(),0, 
transferEvent.getDataLength());
-        // out.println(data);
         transfer += length;
     }
 
     /**
      * @see TransferListener#transferCompleted(TransferEvent)
      */
+    @Override
     public void transferCompleted(final TransferEvent transferEvent) {
         final double duration = (double) (transferEvent.getTimestamp() - 
timestamp) / 1000;
 
@@ -152,6 +161,7 @@ public void transferCompleted(final TransferEvent 
transferEvent) {
     /**
      * @see TransferListener#transferError(TransferEvent)
      */
+    @Override
     public void transferError(final TransferEvent transferEvent) {
         out.println(" Transfer error: " + transferEvent.getException());
     }
@@ -159,6 +169,7 @@ public void transferError(final TransferEvent 
transferEvent) {
     /**
      * @see SessionListener#sessionError(SessionEvent)
      */
+    @Override
     public void sessionError(final SessionEvent sessionEvent) {
         out.println(" Session error: " + sessionEvent.getException());
     }
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/proxy/ProxyUtils.java 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/proxy/ProxyUtils.java
index 7d0891f8..4b50af13 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/proxy/ProxyUtils.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/proxy/ProxyUtils.java
@@ -35,7 +35,7 @@ private ProxyUtils() {}
      */
     public static boolean validateNonProxyHosts(ProxyInfo proxy, String 
targetHost) {
         if (targetHost == null) {
-            targetHost = new String();
+            targetHost = "";
         }
         if (proxy == null) {
             return false;
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/repository/Repository.java
 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/repository/Repository.java
index 8111a13a..7b758649 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/repository/Repository.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/repository/Repository.java
@@ -23,7 +23,6 @@
 
 import org.apache.maven.wagon.PathUtils;
 import org.apache.maven.wagon.WagonConstants;
-import org.codehaus.plexus.util.StringUtils;
 
 /**
  * This class is an abstraction of the location from/to resources
@@ -203,12 +202,14 @@ public String getName() {
         return name;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
 
         sb.append("Repository[");
 
-        if (StringUtils.isNotEmpty(getName())) {
+        String str = getName();
+        if (str != null && !str.isEmpty()) {
             sb.append(getName()).append("|");
         }
 
@@ -238,6 +239,7 @@ public void setParameters(Properties parameters) {
         this.parameters = parameters;
     }
 
+    @Override
     public int hashCode() {
         final int prime = 31;
         int result = 1;
@@ -245,6 +247,7 @@ public int hashCode() {
         return result;
     }
 
+    @Override
     public boolean equals(Object obj) {
         if (this == obj) {
             return true;
diff --git 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/resource/Resource.java
 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/resource/Resource.java
index 2dfd083c..47dd33d1 100644
--- 
a/wagon-provider-api/src/main/java/org/apache/maven/wagon/resource/Resource.java
+++ 
b/wagon-provider-api/src/main/java/org/apache/maven/wagon/resource/Resource.java
@@ -74,6 +74,7 @@ public void setContentLength(long contentLength) {
         this.contentLength = contentLength;
     }
 
+    @Override
     public String toString() {
         return name;
     }
@@ -82,15 +83,17 @@ public String inspect() {
         return name + "[len = " + contentLength + "; mod = " + lastModified + 
"]";
     }
 
+    @Override
     public int hashCode() {
         final int prime = 31;
         int result = 1;
-        result = prime * result + (int) (contentLength ^ (contentLength >>> 
32));
-        result = prime * result + (int) (lastModified ^ (lastModified >>> 32));
+        result = prime * result + Long.hashCode(contentLength);
+        result = prime * result + Long.hashCode(lastModified);
         result = prime * result + ((name == null) ? 0 : name.hashCode());
         return result;
     }
 
+    @Override
     public boolean equals(Object obj) {
         if (this == obj) {
             return true;
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/AbstractWagonTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/AbstractWagonTest.java
index 5ae69460..9bdc27c0 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/AbstractWagonTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/AbstractWagonTest.java
@@ -20,14 +20,11 @@
 
 import java.io.ByteArrayOutputStream;
 import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 
-import junit.framework.TestCase;
 import org.apache.maven.wagon.authentication.AuthenticationException;
 import org.apache.maven.wagon.authentication.AuthenticationInfo;
-import org.apache.maven.wagon.authorization.AuthorizationException;
 import org.apache.maven.wagon.events.SessionEvent;
 import org.apache.maven.wagon.events.SessionListener;
 import org.apache.maven.wagon.events.TransferEvent;
@@ -37,35 +34,48 @@
 import org.apache.maven.wagon.repository.Repository;
 import org.apache.maven.wagon.repository.RepositoryPermissions;
 import org.apache.maven.wagon.resource.Resource;
-import org.codehaus.plexus.util.FileUtils;
-import org.codehaus.plexus.util.IOUtil;
 import org.easymock.IAnswer;
-
-import static org.easymock.EasyMock.*;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+import static org.easymock.EasyMock.anyInt;
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.anyString;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.eq;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.getCurrentArguments;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 /**
  * @author <a href="[email protected]">Michal Maczka</a>
  */
-public class AbstractWagonTest extends TestCase {
+class AbstractWagonTest {
     private static class TestWagon extends AbstractWagon {
+        @Override
         protected void closeConnection() throws ConnectionException {}
 
+        @Override
         protected void openConnectionInternal() throws ConnectionException, 
AuthenticationException {}
 
-        public void get(String resourceName, File destination)
-                throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {}
+        @Override
+        public void get(String resourceName, File destination) {}
 
-        public boolean getIfNewer(String resourceName, File destination, long 
timestamp)
-                throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {
+        @Override
+        public boolean getIfNewer(String resourceName, File destination, long 
timestamp) {
             return false;
         }
 
-        public void put(File source, String destination)
-                throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {}
+        @Override
+        public void put(File source, String destination) {}
     }
 
-    private String basedir;
-
     private WagonMock wagon = null;
 
     private File destination;
@@ -78,10 +88,10 @@ public void put(File source, String destination)
 
     private TransferListener transferListener = null;
 
-    protected void setUp() throws Exception {
-        super.setUp();
+    @BeforeEach
+    void setUp() {
 
-        basedir = System.getProperty("basedir");
+        String basedir = System.getProperty("basedir");
 
         destination = new File(basedir, "target/folder/subfolder");
 
@@ -98,7 +108,8 @@ protected void setUp() throws Exception {
         wagon.addTransferListener(transferListener);
     }
 
-    public void testCalculationOfTransferBufferSize() {
+    @Test
+    void calculationOfTransferBufferSize() {
         // 1 KiB -> Default buffer size (4 KiB)
         assertEquals(4096, wagon.getBufferCapacityForTransfer(1024L));
 
@@ -115,7 +126,8 @@ public void testCalculationOfTransferBufferSize() {
         assertEquals(4096 * 128, wagon.getBufferCapacityForTransfer(1024L * 
1024 * 1024 * 100));
     }
 
-    public void testSessionListenerRegistration() {
+    @Test
+    void sessionListenerRegistration() {
         assertTrue(wagon.hasSessionListener(sessionListener));
 
         wagon.removeSessionListener(sessionListener);
@@ -123,7 +135,8 @@ public void testSessionListenerRegistration() {
         assertFalse(wagon.hasSessionListener(sessionListener));
     }
 
-    public void testTransferListenerRegistration() {
+    @Test
+    void transferListenerRegistration() {
         assertTrue(wagon.hasTransferListener(transferListener));
 
         wagon.removeTransferListener(transferListener);
@@ -131,8 +144,9 @@ public void testTransferListenerRegistration() {
         assertFalse(wagon.hasTransferListener(transferListener));
     }
 
-    public void testNoProxyConfiguration() throws ConnectionException, 
AuthenticationException {
-        Repository repository = new Repository();
+    @Test
+    void noProxyConfiguration() throws Exception {
+        Repository repository = new Repository("fake", "http://fake";);
         wagon.connect(repository);
         assertNull(wagon.getProxyInfo());
         assertNull(wagon.getProxyInfo("http", "www.example.com"));
@@ -142,8 +156,9 @@ public void testNoProxyConfiguration() throws 
ConnectionException, Authenticatio
         assertNull(wagon.getProxyInfo("http", "localhost"));
     }
 
-    public void testNullProxyConfiguration() throws ConnectionException, 
AuthenticationException {
-        Repository repository = new Repository();
+    @Test
+    void nullProxyConfiguration() throws Exception {
+        Repository repository = new Repository("fake", "http://fake";);
         wagon.connect(repository, (ProxyInfo) null);
         assertNull(wagon.getProxyInfo());
         assertNull(wagon.getProxyInfo("http", "www.example.com"));
@@ -169,11 +184,12 @@ public void testNullProxyConfiguration() throws 
ConnectionException, Authenticat
         assertNull(wagon.getProxyInfo("http", "localhost"));
     }
 
-    public void testLegacyProxyConfiguration() throws ConnectionException, 
AuthenticationException {
+    @Test
+    void legacyProxyConfiguration() throws Exception {
         ProxyInfo proxyInfo = new ProxyInfo();
         proxyInfo.setType("http");
 
-        Repository repository = new Repository();
+        Repository repository = new Repository("fake", "http://fake";);
         wagon.connect(repository, proxyInfo);
         assertEquals(proxyInfo, wagon.getProxyInfo());
         assertEquals(proxyInfo, wagon.getProxyInfo("http", "www.example.com"));
@@ -182,25 +198,24 @@ public void testLegacyProxyConfiguration() throws 
ConnectionException, Authentic
         assertNull(wagon.getProxyInfo("ftp", "www.example.com"));
     }
 
-    public void testProxyConfiguration() throws ConnectionException, 
AuthenticationException {
+    @Test
+    void proxyConfiguration() throws Exception {
         final ProxyInfo httpProxyInfo = new ProxyInfo();
         httpProxyInfo.setType("http");
 
         final ProxyInfo socksProxyInfo = new ProxyInfo();
         socksProxyInfo.setType("http");
 
-        ProxyInfoProvider proxyInfoProvider = new ProxyInfoProvider() {
-            public ProxyInfo getProxyInfo(String protocol) {
-                if ("http".equals(protocol) || "dav".equals(protocol)) {
-                    return httpProxyInfo;
-                } else if ("scp".equals(protocol)) {
-                    return socksProxyInfo;
-                }
-                return null;
+        ProxyInfoProvider proxyInfoProvider = protocol -> {
+            if ("http".equals(protocol) || "dav".equals(protocol)) {
+                return httpProxyInfo;
+            } else if ("scp".equals(protocol)) {
+                return socksProxyInfo;
             }
+            return null;
         };
 
-        Repository repository = new Repository();
+        Repository repository = new Repository("fake", "http://fake";);
         wagon.connect(repository, proxyInfoProvider);
         assertNull(wagon.getProxyInfo());
         assertEquals(httpProxyInfo, wagon.getProxyInfo("http", 
"www.example.com"));
@@ -209,8 +224,9 @@ public ProxyInfo getProxyInfo(String protocol) {
         assertNull(wagon.getProxyInfo("ftp", "www.example.com"));
     }
 
-    public void testSessionOpenEvents() throws Exception {
-        Repository repository = new Repository();
+    @Test
+    void sessionOpenEvents() throws Exception {
+        Repository repository = new Repository("fake", "http://fake";);
 
         sessionListener.sessionOpening(anyObject(SessionEvent.class));
         sessionListener.sessionOpened(anyObject(SessionEvent.class));
@@ -223,37 +239,38 @@ public void testSessionOpenEvents() throws Exception {
         assertEquals(repository, wagon.getRepository());
     }
 
-    public void testSessionConnectionRefusedEventConnectionException() throws 
Exception {
+    @Test
+    void sessionConnectionRefusedEventConnectionException() throws Exception {
         final WagonException exception = new ConnectionException("");
 
         try {
             runTestSessionConnectionRefusedEvent(exception);
             fail();
-        } catch (ConnectionException e) {
-            assertTrue(true);
+        } catch (ConnectionException ignored) {
         }
     }
 
-    public void testSessionConnectionRefusedEventAuthenticationException() 
throws Exception {
+    @Test
+    void sessionConnectionRefusedEventAuthenticationException() throws 
Exception {
         final WagonException exception = new AuthenticationException("");
 
         try {
             runTestSessionConnectionRefusedEvent(exception);
             fail();
-        } catch (AuthenticationException e) {
-            assertTrue(true);
+        } catch (AuthenticationException ignored) {
         }
     }
 
     private void runTestSessionConnectionRefusedEvent(final WagonException 
exception)
             throws ConnectionException, AuthenticationException {
-        Repository repository = new Repository();
+        Repository repository = new Repository("fake", "http://fake";);
 
         sessionListener.sessionOpening(anyObject(SessionEvent.class));
         
sessionListener.sessionConnectionRefused(anyObject(SessionEvent.class));
         replay(sessionListener);
 
         Wagon wagon = new TestWagon() {
+            @Override
             protected void openConnectionInternal() throws 
ConnectionException, AuthenticationException {
                 if (exception instanceof ConnectionException) {
                     throw (ConnectionException) exception;
@@ -275,7 +292,8 @@ protected void openConnectionInternal() throws 
ConnectionException, Authenticati
         }
     }
 
-    public void testSessionCloseEvents() throws Exception {
+    @Test
+    void sessionCloseEvents() throws Exception {
         sessionListener.sessionDisconnecting(anyObject(SessionEvent.class));
         sessionListener.sessionDisconnected(anyObject(SessionEvent.class));
         replay(sessionListener);
@@ -285,14 +303,14 @@ public void testSessionCloseEvents() throws Exception {
         verify(sessionListener);
     }
 
-    public void testSessionCloseRefusedEventConnectionException() throws 
Exception {
-        Repository repository = new Repository();
-
+    @Test
+    void sessionCloseRefusedEventConnectionException() throws Exception {
         sessionListener.sessionDisconnecting(anyObject(SessionEvent.class));
         sessionListener.sessionError(anyObject(SessionEvent.class));
         replay(sessionListener);
 
         Wagon wagon = new TestWagon() {
+            @Override
             protected void closeConnection() throws ConnectionException {
                 throw new ConnectionException("");
             }
@@ -302,14 +320,14 @@ protected void closeConnection() throws 
ConnectionException {
         try {
             wagon.disconnect();
             fail();
-        } catch (ConnectionException e) {
-            assertTrue(true);
+        } catch (ConnectionException ignored) {
         } finally {
             verify(sessionListener);
         }
     }
 
-    public void testGetTransferEvents() throws Exception {
+    @Test
+    void getTransferEvents() throws Exception {
         transferListener.debug("fetch debug message");
         transferListener.transferInitiated(anyObject(TransferEvent.class));
         transferListener.transferStarted(anyObject(TransferEvent.class));
@@ -322,7 +340,7 @@ public void testGetTransferEvents() throws Exception {
 
         wagon.fireTransferDebug("fetch debug message");
 
-        Repository repository = new Repository();
+        Repository repository = new Repository("fake", "http://fake";);
         wagon.connect(repository);
 
         wagon.get(artifact, destination);
@@ -330,7 +348,8 @@ public void testGetTransferEvents() throws Exception {
         verify(transferListener);
     }
 
-    public void testGetError() throws Exception {
+    @Test
+    void getError() throws Exception {
         transferListener.transferInitiated(anyObject(TransferEvent.class));
         transferListener.transferStarted(anyObject(TransferEvent.class));
         transferListener.debug(anyString());
@@ -339,7 +358,7 @@ public void testGetError() throws Exception {
         replay(transferListener);
 
         try {
-            Repository repository = new Repository();
+            Repository repository = new Repository("fake", "http://fake";);
 
             WagonMock wagon = new WagonMock(true);
 
@@ -351,15 +370,13 @@ public void testGetError() throws Exception {
 
             fail("Transfer error was expected during deploy");
         } catch (TransferFailedException expected) {
-            assertTrue(true);
         }
 
         verify(transferListener);
     }
 
-    public void testPutTransferEvents()
-            throws ConnectionException, AuthenticationException, 
ResourceDoesNotExistException, TransferFailedException,
-                    AuthorizationException {
+    @Test
+    void putTransferEvents() throws Exception {
         transferListener.debug("deploy debug message");
         transferListener.transferInitiated(anyObject(TransferEvent.class));
         transferListener.transferStarted(anyObject(TransferEvent.class));
@@ -369,7 +386,7 @@ public void testPutTransferEvents()
 
         wagon.fireTransferDebug("deploy debug message");
 
-        Repository repository = new Repository();
+        Repository repository = new Repository("fake", "http://fake";);
 
         wagon.connect(repository);
 
@@ -378,30 +395,20 @@ public void testPutTransferEvents()
         verify(transferListener);
     }
 
-    public void testStreamShutdown() {
-        IOUtil.close((InputStream) null);
-
-        IOUtil.close((OutputStream) null);
-
-        InputStreamMock inputStream = new InputStreamMock();
-
-        assertFalse(inputStream.isClosed());
-
-        IOUtil.close(inputStream);
-
-        assertTrue(inputStream.isClosed());
-
-        OutputStreamMock outputStream = new OutputStreamMock();
-
-        assertFalse(outputStream.isClosed());
-
-        IOUtil.close(outputStream);
+    @Test
+    void streamShutdown() {
+        try (InputStreamMock inputStream = new InputStreamMock()) {
+            assertFalse(inputStream.isClosed());
+        }
 
-        assertTrue(outputStream.isClosed());
+        try (OutputStreamMock outputStream = new OutputStreamMock()) {
+            assertFalse(outputStream.isClosed());
+        }
     }
 
-    public void testRepositoryPermissionsOverride() throws 
ConnectionException, AuthenticationException {
-        Repository repository = new Repository();
+    @Test
+    void repositoryPermissionsOverride() throws Exception {
+        Repository repository = new Repository("fake", "http://fake";);
 
         RepositoryPermissions original = new RepositoryPermissions();
         original.setFileMode("664");
@@ -417,7 +424,8 @@ public void testRepositoryPermissionsOverride() throws 
ConnectionException, Auth
         assertEquals("644", repository.getPermissions().getFileMode());
     }
 
-    public void testRepositoryUserName() throws ConnectionException, 
AuthenticationException {
+    @Test
+    void repositoryUserName() throws Exception {
         Repository repository = new Repository("id", 
"http://bporter:[email protected]/path/to/resource";);
 
         AuthenticationInfo authenticationInfo = new AuthenticationInfo();
@@ -430,7 +438,8 @@ public void testRepositoryUserName() throws 
ConnectionException, AuthenticationE
         assertEquals("pass", authenticationInfo.getPassword());
     }
 
-    public void testRepositoryUserNameNotGivenInCredentials() throws 
ConnectionException, AuthenticationException {
+    @Test
+    void repositoryUserNameNotGivenInCredentials() throws Exception {
         Repository repository = new Repository("id", 
"http://bporter:[email protected]/path/to/resource";);
 
         AuthenticationInfo authenticationInfo = new AuthenticationInfo();
@@ -441,20 +450,21 @@ public void testRepositoryUserNameNotGivenInCredentials() 
throws ConnectionExcep
         assertEquals("password", authenticationInfo.getPassword());
     }
 
-    public void testConnectNullRepository() throws ConnectionException, 
AuthenticationException {
+    @Test
+    void connectNullRepository() throws Exception {
         try {
             wagon.connect(null);
             fail();
-        } catch (NullPointerException e) {
-            assertTrue(true);
+        } catch (NullPointerException ignored) {
         }
     }
 
-    public void testPostProcessListeners() throws TransferFailedException, 
IOException {
+    @Test
+    void postProcessListeners() throws Exception {
         File tempFile = File.createTempFile("wagon", "tmp");
         tempFile.deleteOnExit();
         String content = "content";
-        FileUtils.fileWrite(tempFile.getAbsolutePath(), content);
+        Files.write(Paths.get(tempFile.getAbsolutePath()), content.getBytes());
 
         Resource resource = new Resource("resource");
 
@@ -478,11 +488,12 @@ public void testPostProcessListeners() throws 
TransferFailedException, IOExcepti
     }
 
     static final class ProgressAnswer implements IAnswer {
-        private ByteArrayOutputStream baos = new ByteArrayOutputStream();
+        private final ByteArrayOutputStream baos = new ByteArrayOutputStream();
 
         private int size;
 
-        public Object answer() throws Throwable {
+        @Override
+        public Object answer() {
             byte[] buffer = (byte[]) getCurrentArguments()[1];
             int length = (Integer) getCurrentArguments()[2];
             baos.write(buffer, 0, length);
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/CannotConnectExceptionTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/CannotConnectExceptionTest.java
index 2f31141e..41da0601 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/CannotConnectExceptionTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/CannotConnectExceptionTest.java
@@ -18,14 +18,17 @@
  */
 package org.apache.maven.wagon;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
  */
-public class CannotConnectExceptionTest extends TestCase {
-    public void testCannotConnectExceptionTest() {
+class CannotConnectExceptionTest {
+    @Test
+    void cannotConnectExceptionTest() {
         ConnectionException ae = new ConnectionException("message");
 
         assertEquals("message", ae.getMessage());
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/InputStreamMock.java 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/InputStreamMock.java
index d1f2384c..a361bdd1 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/InputStreamMock.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/InputStreamMock.java
@@ -31,6 +31,7 @@ public class InputStreamMock extends InputStream {
 
     boolean forcedError = false;
 
+    @Override
     public void close() {
         closed = true;
     }
@@ -52,6 +53,7 @@ public boolean isForcedError() {
     /**
      * @see java.io.InputStream#read()
      */
+    @Override
     public int read() throws IOException {
         if (forcedError) {
             throw new IOException("Mock exception");
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/LazyFileOutputStreamTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/LazyFileOutputStreamTest.java
index d630f035..0f09e99c 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/LazyFileOutputStreamTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/LazyFileOutputStreamTest.java
@@ -19,18 +19,23 @@
 package org.apache.maven.wagon;
 
 import java.io.File;
+import java.nio.file.Files;
 
-import junit.framework.TestCase;
-import org.codehaus.plexus.util.FileUtils;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 /**
  * @author <a href="mailto:[email protected]";>Michal Maczka</a>
  *
  */
-public class LazyFileOutputStreamTest extends TestCase {
+class LazyFileOutputStreamTest {
 
-    public void testFileCreation() throws Exception {
-        File file = File.createTempFile(getName(), null);
+    @Test
+    void fileCreation() throws Exception {
+        File file = File.createTempFile("LazyFileOutputStreamTest", null);
 
         file.delete();
 
@@ -48,8 +53,6 @@ public void testFileCreation() throws Exception {
 
         assertTrue(file.exists());
 
-        String actual = FileUtils.fileRead(file);
-
-        assertEquals(expected, actual);
+        assertEquals(expected, new String(Files.readAllBytes(file.toPath())));
     }
 }
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/NotAuthorizedExceptionTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/NotAuthorizedExceptionTest.java
index 99b17313..9308f982 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/NotAuthorizedExceptionTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/NotAuthorizedExceptionTest.java
@@ -18,15 +18,18 @@
  */
 package org.apache.maven.wagon;
 
-import junit.framework.TestCase;
 import org.apache.maven.wagon.authorization.AuthorizationException;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
  */
-public class NotAuthorizedExceptionTest extends TestCase {
-    public void testNotAuthorizedExceptionTest() {
+class NotAuthorizedExceptionTest {
+    @Test
+    void notAuthorizedExceptionTest() {
         AuthorizationException ae = new AuthorizationException("message");
 
         assertEquals("message", ae.getMessage());
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/OutputStreamMock.java 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/OutputStreamMock.java
index cfd10fd5..382fbee2 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/OutputStreamMock.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/OutputStreamMock.java
@@ -31,6 +31,7 @@ public class OutputStreamMock extends OutputStream {
 
     private boolean forcedError = false;
 
+    @Override
     public void close() {
         closed = true;
     }
@@ -38,6 +39,7 @@ public void close() {
     /**
      * @see java.io.OutputStream#write(int)
      */
+    @Override
     public void write(final int b) throws IOException {
         if (forcedError) {
             throw new IOException("Mock exception");
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/PathUtilsTest.java 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/PathUtilsTest.java
index c2556eed..cccef054 100644
--- a/wagon-provider-api/src/test/java/org/apache/maven/wagon/PathUtilsTest.java
+++ b/wagon-provider-api/src/test/java/org/apache/maven/wagon/PathUtilsTest.java
@@ -20,14 +20,19 @@
 
 import java.io.File;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
 
 /**
  * @author <a href="[email protected]">Michal Maczka</a>
  *
  */
-public class PathUtilsTest extends TestCase {
-    public void testFilenameResolving() {
+class PathUtilsTest {
+    @Test
+    void filenameResolving() {
         assertEquals("filename", PathUtils.filename("dir/filename"));
 
         assertEquals("filename", PathUtils.filename("filename"));
@@ -35,7 +40,8 @@ public void testFilenameResolving() {
         assertEquals("filename", PathUtils.filename("dir1/dir2/filename"));
     }
 
-    public void testDirResolving() {
+    @Test
+    void dirResolving() {
         assertEquals("dir", PathUtils.dirname("dir/filename"));
 
         assertEquals("", PathUtils.dirname("filename"));
@@ -43,7 +49,8 @@ public void testDirResolving() {
         assertEquals("dir1/dir2", PathUtils.dirname("dir1/dir2/filename"));
     }
 
-    public void testDirSpliting() {
+    @Test
+    void dirSpliting() {
         final String path = "a/b/c";
 
         final String[] dirs = PathUtils.dirnames(path);
@@ -57,7 +64,8 @@ public void testDirSpliting() {
         assertEquals("b", dirs[1]);
     }
 
-    public void testHostResolving() {
+    @Test
+    void hostResolving() {
         assertEquals("www.codehaus.org", 
PathUtils.host("http://www.codehaus.org";));
         assertEquals("www.codehaus.org", 
PathUtils.host("HTTP://www.codehaus.org"));
 
@@ -66,7 +74,8 @@ public void testHostResolving() {
         assertEquals("localhost", PathUtils.host("FILE:///c:/temp"));
     }
 
-    public void testScmHostResolving() {
+    @Test
+    void scmHostResolving() {
         assertEquals("www.codehaus.org", 
PathUtils.host("scm:svn:http://www.codehaus.org";));
         assertEquals("www.codehaus.org", 
PathUtils.host("SCM:SVN:HTTP://www.codehaus.org"));
         assertEquals("www.codehaus.org", 
PathUtils.host("scm:svn:http://www.codehaus.org/repos/module";));
@@ -75,7 +84,8 @@ public void testScmHostResolving() {
         assertEquals("www.codehaus.org", 
PathUtils.host("SCM:CVS:pserver:[email protected]:/root"));
     }
 
-    public void testProtocolResolving() {
+    @Test
+    void protocolResolving() {
         assertEquals("http", PathUtils.protocol("http://www.codehause.org";));
         assertEquals("HTTP", PathUtils.protocol("HTTP://www.codehause.org"));
         assertEquals("file", PathUtils.protocol("file:///c:/temp"));
@@ -83,7 +93,8 @@ public void testProtocolResolving() {
         assertEquals("scm", 
PathUtils.protocol("scm:cvs:pserver:[email protected]:/home/cvspublic"));
     }
 
-    public void testUserInfo() {
+    @Test
+    void userInfo() {
         String urlWithUsername = "http://[email protected]";;
         assertEquals("brett", PathUtils.user(urlWithUsername));
         assertNull(PathUtils.password(urlWithUsername));
@@ -97,7 +108,8 @@ public void testUserInfo() {
         assertEquals("/", PathUtils.basedir(urlWithUsernamePassword));
     }
 
-    public void testSubversionUserInfo() {
+    @Test
+    void subversionUserInfo() {
         String urlWithUsername = "scm:svn:http://[email protected]";;
         assertEquals("brett", PathUtils.user(urlWithUsername));
         assertNull(PathUtils.password(urlWithUsername));
@@ -117,7 +129,8 @@ public void testSubversionUserInfo() {
         assertEquals("/", PathUtils.basedir(urlWithUpperCaseProtocol));
     }
 
-    public void testCvsUserInfo() {
+    @Test
+    void cvsUserInfo() {
         String urlWithUsername = "scm:cvs:pserver:[email protected]";
         assertEquals("brett", PathUtils.user(urlWithUsername));
         assertNull(PathUtils.password(urlWithUsername));
@@ -137,7 +150,8 @@ public void testCvsUserInfo() {
         assertEquals("/", PathUtils.basedir(urlWithUpperCaseProtocol));
     }
 
-    public void testFileBasedir() {
+    @Test
+    void fileBasedir() {
         // see http://www.mozilla.org/quality/networking/testing/filetests.html
 
         // strict forms
@@ -173,7 +187,8 @@ public void testFileBasedir() {
         assertEquals("localhost", PathUtils.host("FILE:///c:/temp"));
     }
 
-    public void testEmptyBasedir() {
+    @Test
+    void emptyBasedir() {
         assertEquals("/", PathUtils.basedir("http://www.codehaus.org:80";));
         assertEquals("/", PathUtils.basedir("http://www.codehaus.org";));
         assertEquals("/", PathUtils.basedir("http://www.codehaus.org:80/";));
@@ -181,7 +196,8 @@ public void testEmptyBasedir() {
         assertEquals("/", PathUtils.basedir("HTTP://www.codehaus.org/"));
     }
 
-    public void testEmptyProtocol() {
+    @Test
+    void emptyProtocol() {
         assertEquals("", PathUtils.protocol("placeholder-only"));
         assertEquals("", PathUtils.protocol("placeholder-only/module-a"));
 
@@ -195,7 +211,8 @@ public void testEmptyProtocol() {
         assertEquals("/module-a", 
PathUtils.basedir("placeholder-only/module-a"));
     }
 
-    public void testPortResolving() {
+    @Test
+    void portResolving() {
         assertEquals(80, PathUtils.port("http://www.codehause.org:80/maven";));
         assertEquals(80, PathUtils.port("HTTP://www.codehause.org:80/maven"));
         assertEquals(WagonConstants.UNKNOWN_PORT, 
PathUtils.port("http://localhost/temp";));
@@ -204,7 +221,8 @@ public void testPortResolving() {
         assertEquals(10, PathUtils.port("FTP://localhost:10"));
     }
 
-    public void testScmPortResolving() {
+    @Test
+    void scmPortResolving() {
         assertEquals(80, 
PathUtils.port("scm:svn:http://www.codehaus.org:80/maven";));
         assertEquals(80, 
PathUtils.port("SCM:SVN:HTTP://www.codehaus.org:80/maven"));
         assertEquals(WagonConstants.UNKNOWN_PORT, 
PathUtils.port("scm:cvs:pserver:anoncvs@localhost:/temp:module"));
@@ -213,7 +231,8 @@ public void testScmPortResolving() {
         assertEquals(2402, 
PathUtils.port("SCM:CVS:pserver:anoncvs@localhost:2402/temp:module"));
     }
 
-    public void testScmBasedir() {
+    @Test
+    void scmBasedir() {
         assertEquals("/maven", 
PathUtils.basedir("scm:svn:http://www.codehause.org/maven";));
         assertEquals("/maven", 
PathUtils.basedir("SCM:SVN:HTTP://www.codehause.org/maven"));
         assertEquals("/maven", 
PathUtils.basedir("scm:svn:http://www.codehause.org:80/maven";));
@@ -224,7 +243,8 @@ public void testScmBasedir() {
         assertEquals("/maven/module", 
PathUtils.basedir("SCM:CVS:pserver:[email protected]:/maven:module"));
     }
 
-    public void testPortBasedir() {
+    @Test
+    void portBasedir() {
         assertEquals("/maven", 
PathUtils.basedir("http://www.codehause.org:80/maven";));
         assertEquals("/temp", PathUtils.basedir("http://localhost/temp";));
 
@@ -233,7 +253,8 @@ public void testPortBasedir() {
         assertEquals("/", PathUtils.basedir("http://localhost/";));
     }
 
-    public void testIpV4() {
+    @Test
+    void ipV4() {
         assertUrl("http://127.0.0.1";, "http", null, null, "127.0.0.1", -1, 
"/");
         assertUrl("http://127.0.0.1:8080";, "http", null, null, "127.0.0.1", 
8080, "/");
         assertUrl("http://127.0.0.1/oo/rest/users";, "http", null, null, 
"127.0.0.1", -1, "/oo/rest/users");
@@ -268,7 +289,8 @@ public void testIpV4() {
                 "/oo/rest/users");
     }
 
-    public void testIPv6() {
+    @Test
+    void iPv6() {
         assertUrl(
                 "http://user:password@[fff:::1]:7891/oo/rest/users";,
                 "http",
@@ -370,7 +392,8 @@ private void assertUrl(
         assertEquals(basedir, PathUtils.basedir(url));
     }
 
-    public void testToRelative() {
+    @Test
+    void toRelative() {
         assertEquals(
                 "dir",
                 PathUtils.toRelative(
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/PermissionModeUtilsTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/PermissionModeUtilsTest.java
index f5314d1a..f9f7b76c 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/PermissionModeUtilsTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/PermissionModeUtilsTest.java
@@ -18,7 +18,9 @@
  */
 package org.apache.maven.wagon;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * Unit test for PermissionModeUtils class
@@ -27,11 +29,11 @@
  * @see PermissionModeUtils
  * @since Sep 3, 2005
  */
-public class PermissionModeUtilsTest extends TestCase {
+class PermissionModeUtilsTest {
     /**
-     * @throws Exception on error
      */
-    public void testNumeric() throws Exception {
+    @Test
+    void numeric() {
         final String[][] tests = {
             {"0", "777"},
             {"0000", "777"},
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/ResourceDoesNotExistExceptionTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/ResourceDoesNotExistExceptionTest.java
index ef33f1e1..c5f7d29e 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/ResourceDoesNotExistExceptionTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/ResourceDoesNotExistExceptionTest.java
@@ -18,14 +18,17 @@
  */
 package org.apache.maven.wagon;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
  */
-public class ResourceDoesNotExistExceptionTest extends TestCase {
-    public void testResourceDoesNotExistExceptionTest() {
+class ResourceDoesNotExistExceptionTest {
+    @Test
+    void resourceDoesNotExistExceptionTest() {
         ResourceDoesNotExistException ae = new 
ResourceDoesNotExistException("message");
 
         assertEquals("message", ae.getMessage());
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/StreamWagonTest.java 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/StreamWagonTest.java
index b4b73572..ca091a94 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/StreamWagonTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/StreamWagonTest.java
@@ -18,39 +18,55 @@
  */
 package org.apache.maven.wagon;
 
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.text.SimpleDateFormat;
 
-import junit.framework.TestCase;
 import org.apache.maven.wagon.authentication.AuthenticationException;
 import org.apache.maven.wagon.authorization.AuthorizationException;
 import org.apache.maven.wagon.events.TransferEvent;
 import org.apache.maven.wagon.events.TransferListener;
 import org.apache.maven.wagon.repository.Repository;
 import org.apache.maven.wagon.resource.Resource;
-import org.codehaus.plexus.util.FileUtils;
-import org.codehaus.plexus.util.StringInputStream;
-import org.codehaus.plexus.util.StringOutputStream;
-
-import static org.easymock.EasyMock.*;
-
-public class StreamWagonTest extends TestCase {
+import org.junit.jupiter.api.Test;
+
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
+
+class StreamWagonTest {
     private static class TestWagon extends StreamWagon {
-        public void closeConnection() throws ConnectionException {}
+        @Override
+        public void closeConnection() {}
 
+        @Override
         public void fillInputData(InputData inputData)
                 throws TransferFailedException, ResourceDoesNotExistException, 
AuthorizationException {}
 
+        @Override
         public void fillOutputData(OutputData outputData) throws 
TransferFailedException {}
 
-        protected void openConnectionInternal() throws ConnectionException, 
AuthenticationException {}
+        @Override
+        protected void openConnectionInternal() {}
     }
 
-    private Repository repository = new Repository("id", "url");
+    private final Repository repository = new Repository("id", "url");
 
-    public void testNullInputStream() throws Exception {
+    @Test
+    void nullInputStream() throws Exception {
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillInputData(InputData inputData) {
                 inputData.setInputStream(null);
             }
@@ -65,11 +81,10 @@ public void fillInputData(InputData inputData) {
 
         wagon.connect(repository);
         wagon.addTransferListener(listener);
-        try {
-            wagon.getToStream("resource", new StringOutputStream());
+        try (OutputStream os = new ByteArrayOutputStream()) {
+            wagon.getToStream("resource", os);
             fail();
-        } catch (TransferFailedException e) {
-            assertTrue(true);
+        } catch (TransferFailedException ignored) {
         } finally {
             wagon.disconnect();
         }
@@ -77,8 +92,10 @@ public void fillInputData(InputData inputData) {
         verify(listener);
     }
 
-    public void testNullOutputStream() throws Exception {
+    @Test
+    void nullOutputStream() throws Exception {
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillOutputData(OutputData inputData) {
                 inputData.setOutputStream(null);
             }
@@ -93,11 +110,11 @@ public void fillOutputData(OutputData inputData) {
 
         wagon.connect(repository);
         wagon.addTransferListener(listener);
-        try {
-            wagon.putFromStream(new StringInputStream(""), "resource");
+        try (InputStream is = new ByteArrayInputStream("".getBytes())) {
+            //noinspection deprecation
+            wagon.putFromStream(is, "resource");
             fail();
-        } catch (TransferFailedException e) {
-            assertTrue(true);
+        } catch (TransferFailedException ignored) {
         } finally {
             wagon.disconnect();
         }
@@ -105,19 +122,21 @@ public void fillOutputData(OutputData inputData) {
         verify(listener);
     }
 
-    public void testTransferFailedExceptionOnInput() throws Exception {
+    @Test
+    void transferFailedExceptionOnInput() throws Exception {
         try {
             runTestTransferError(new TransferFailedException(""));
             fail();
-        } catch (TransferFailedException e) {
-            assertTrue(true);
+        } catch (TransferFailedException ignored) {
         }
     }
 
-    public void testTransferFailedExceptionOnOutput() throws Exception {
+    @Test
+    void transferFailedExceptionOnOutput() throws Exception {
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillOutputData(OutputData inputData) throws 
TransferFailedException {
-                throw (TransferFailedException) new 
TransferFailedException("");
+                throw new TransferFailedException("");
             }
         };
 
@@ -130,32 +149,33 @@ public void fillOutputData(OutputData inputData) throws 
TransferFailedException
 
         wagon.connect(repository);
         wagon.addTransferListener(listener);
-        try {
-            wagon.putFromStream(new StringInputStream(""), "resource");
+
+        try (InputStream is = new ByteArrayInputStream("".getBytes())) {
+            //noinspection deprecation
+            wagon.putFromStream(is, "resource");
             fail();
-        } catch (TransferFailedException e) {
-            assertTrue(true);
+        } catch (TransferFailedException ignored) {
         } finally {
             wagon.disconnect();
             verify(listener);
         }
     }
 
-    public void testResourceDoesNotExistException() throws Exception {
+    @Test
+    void resourceDoesNotExistException() throws Exception {
         try {
             runTestTransferError(new ResourceDoesNotExistException(""));
             fail();
-        } catch (ResourceDoesNotExistException e) {
-            assertTrue(true);
+        } catch (ResourceDoesNotExistException ignored) {
         }
     }
 
-    public void testAuthorizationException() throws Exception {
+    @Test
+    void authorizationException() throws Exception {
         try {
             runTestTransferError(new AuthorizationException(""));
             fail();
-        } catch (AuthorizationException e) {
-            assertTrue(true);
+        } catch (AuthorizationException ignored) {
         }
     }
 
@@ -163,6 +183,7 @@ private void runTestTransferError(final WagonException 
exception)
             throws ConnectionException, AuthenticationException, 
ResourceDoesNotExistException, AuthorizationException,
                     TransferFailedException {
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillInputData(InputData inputData)
                     throws TransferFailedException, 
ResourceDoesNotExistException, AuthorizationException {
                 if (exception instanceof TransferFailedException) {
@@ -187,7 +208,7 @@ public void fillInputData(InputData inputData)
         wagon.connect(repository);
         wagon.addTransferListener(listener);
         try {
-            wagon.getToStream("resource", new StringOutputStream());
+            wagon.getToStream("resource", new ByteArrayOutputStream());
             fail();
         } finally {
             wagon.disconnect();
@@ -195,21 +216,24 @@ public void fillInputData(InputData inputData)
         }
     }
 
-    public void testGetIfNewerWithNewerResource() throws Exception {
+    @Test
+    void getIfNewerWithNewerResource() throws Exception {
         long resourceTime = System.currentTimeMillis();
         long comparisonTime =
                 new 
SimpleDateFormat("yyyy-MM-dd").parse("2008-01-01").getTime();
         assertTrue(runTestGetIfNewer(resourceTime, comparisonTime));
     }
 
-    public void testGetIfNewerWithOlderResource() throws Exception {
+    @Test
+    void getIfNewerWithOlderResource() throws Exception {
         long comparisonTime = System.currentTimeMillis();
         long resourceTime =
                 new 
SimpleDateFormat("yyyy-MM-dd").parse("2008-01-01").getTime();
         assertFalse(runTestGetIfNewer(resourceTime, comparisonTime));
     }
 
-    public void testGetIfNewerWithSameTimeResource() throws Exception {
+    @Test
+    void getIfNewerWithSameTimeResource() throws Exception {
         long resourceTime =
                 new 
SimpleDateFormat("yyyy-MM-dd").parse("2008-01-01").getTime();
         assertFalse(runTestGetIfNewer(resourceTime, resourceTime));
@@ -219,8 +243,9 @@ private boolean runTestGetIfNewer(final long resourceTime, 
long comparisonTime)
             throws IOException, ConnectionException, AuthenticationException, 
TransferFailedException,
                     ResourceDoesNotExistException, AuthorizationException {
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillInputData(InputData inputData) {
-                inputData.setInputStream(new StringInputStream(""));
+                inputData.setInputStream(new 
ByteArrayInputStream("".getBytes()));
                 inputData.getResource().setLastModified(resourceTime);
             }
         };
@@ -237,20 +262,22 @@ public void fillInputData(InputData inputData) {
         }
     }
 
-    public void testGetToStream() throws Exception {
+    @Test
+    void getToStream() throws Exception {
         final String content = "the content to return";
         final long comparisonTime =
                 new 
SimpleDateFormat("yyyy-MM-dd").parse("2008-01-01").getTime();
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillInputData(InputData inputData) {
-                inputData.setInputStream(new StringInputStream(content));
+                inputData.setInputStream(new 
ByteArrayInputStream(content.getBytes()));
                 inputData.getResource().setLastModified(comparisonTime);
             }
         };
 
         wagon.connect(repository);
         try {
-            StringOutputStream out = new StringOutputStream();
+            OutputStream out = new ByteArrayOutputStream();
             wagon.getToStream("resource", out);
             assertEquals(content, out.toString());
         } finally {
@@ -258,13 +285,15 @@ public void fillInputData(InputData inputData) {
         }
     }
 
-    public void testGet() throws Exception {
+    @Test
+    void get() throws Exception {
         final String content = "the content to return";
         final long comparisonTime =
                 new 
SimpleDateFormat("yyyy-MM-dd").parse("2008-01-01").getTime();
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillInputData(InputData inputData) {
-                inputData.setInputStream(new StringInputStream(content));
+                inputData.setInputStream(new 
ByteArrayInputStream(content.getBytes()));
                 inputData.getResource().setLastModified(comparisonTime);
             }
         };
@@ -275,28 +304,31 @@ public void fillInputData(InputData inputData) {
         wagon.connect(repository);
         try {
             wagon.get("resource", tempFile);
-            assertEquals(content, FileUtils.fileRead(tempFile));
+            assertEquals(content, new 
String(Files.readAllBytes(tempFile.toPath())));
         } finally {
             wagon.disconnect();
             tempFile.delete();
         }
     }
 
-    public void testGetIfNewerToStreamWithNewerResource() throws Exception {
+    @Test
+    void getIfNewerToStreamWithNewerResource() throws Exception {
         long resourceTime = System.currentTimeMillis();
         long comparisonTime =
                 new 
SimpleDateFormat("yyyy-MM-dd").parse("2008-01-01").getTime();
         assertTrue(runTestGetIfNewerToStream(resourceTime, comparisonTime));
     }
 
-    public void testGetIfNewerToStreamWithOlderResource() throws Exception {
+    @Test
+    void getIfNewerToStreamWithOlderResource() throws Exception {
         long comparisonTime = System.currentTimeMillis();
         long resourceTime =
                 new 
SimpleDateFormat("yyyy-MM-dd").parse("2008-01-01").getTime();
         assertFalse(runTestGetIfNewerToStream(resourceTime, comparisonTime));
     }
 
-    public void testGetIfNewerToStreamWithSameTimeResource() throws Exception {
+    @Test
+    void getIfNewerToStreamWithSameTimeResource() throws Exception {
         long resourceTime =
                 new 
SimpleDateFormat("yyyy-MM-dd").parse("2008-01-01").getTime();
         assertFalse(runTestGetIfNewerToStream(resourceTime, resourceTime));
@@ -306,25 +338,28 @@ private boolean runTestGetIfNewerToStream(final long 
resourceTime, long comparis
             throws IOException, ConnectionException, AuthenticationException, 
TransferFailedException,
                     ResourceDoesNotExistException, AuthorizationException {
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillInputData(InputData inputData) {
-                inputData.setInputStream(new StringInputStream(""));
+                inputData.setInputStream(new 
ByteArrayInputStream("".getBytes()));
                 inputData.getResource().setLastModified(resourceTime);
             }
         };
 
         wagon.connect(repository);
         try {
-            return wagon.getIfNewerToStream("resource", new 
StringOutputStream(), comparisonTime);
+            return wagon.getIfNewerToStream("resource", new 
ByteArrayOutputStream(), comparisonTime);
         } finally {
             wagon.disconnect();
         }
     }
 
-    public void testPutFromStream() throws Exception {
+    @Test
+    void putFromStream() throws Exception {
         final String content = "the content to return";
 
-        final StringOutputStream out = new StringOutputStream();
+        OutputStream out = new ByteArrayOutputStream();
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillOutputData(OutputData outputData) {
                 assertEquals("resource", outputData.getResource().getName());
                 assertEquals(-1, outputData.getResource().getContentLength());
@@ -335,19 +370,22 @@ public void fillOutputData(OutputData outputData) {
 
         wagon.connect(repository);
         try {
-            wagon.putFromStream(new StringInputStream(content), "resource");
+            //noinspection deprecation
+            wagon.putFromStream(new ByteArrayInputStream(content.getBytes()), 
"resource");
             assertEquals(content, out.toString());
         } finally {
             wagon.disconnect();
         }
     }
 
-    public void testPutFromStreamWithResourceInformation() throws Exception {
+    @Test
+    void putFromStreamWithResourceInformation() throws Exception {
         final String content = "the content to return";
         final long lastModified = System.currentTimeMillis();
 
-        final StringOutputStream out = new StringOutputStream();
+        OutputStream out = new ByteArrayOutputStream();
         StreamingWagon wagon = new TestWagon() {
+            @Override
             public void fillOutputData(OutputData outputData) {
                 assertEquals("resource", outputData.getResource().getName());
                 assertEquals(content.length(), 
outputData.getResource().getContentLength());
@@ -358,22 +396,25 @@ public void fillOutputData(OutputData outputData) {
 
         wagon.connect(repository);
         try {
-            wagon.putFromStream(new StringInputStream(content), "resource", 
content.length(), lastModified);
+            wagon.putFromStream(
+                    new ByteArrayInputStream(content.getBytes()), "resource", 
content.length(), lastModified);
             assertEquals(content, out.toString());
         } finally {
             wagon.disconnect();
         }
     }
 
-    public void testPut() throws Exception {
+    @Test
+    void put() throws Exception {
         final String content = "the content to return";
 
         final File tempFile = File.createTempFile("wagon", "tmp");
-        FileUtils.fileWrite(tempFile.getAbsolutePath(), content);
+        Files.write(Paths.get(tempFile.getAbsolutePath()), content.getBytes());
         tempFile.deleteOnExit();
 
-        final StringOutputStream out = new StringOutputStream();
+        OutputStream out = new ByteArrayOutputStream();
         Wagon wagon = new TestWagon() {
+            @Override
             public void fillOutputData(OutputData outputData) {
                 assertEquals("resource", outputData.getResource().getName());
                 assertEquals(content.length(), 
outputData.getResource().getContentLength());
@@ -392,7 +433,8 @@ public void fillOutputData(OutputData outputData) {
         }
     }
 
-    public void testPutFileDoesntExist() throws Exception {
+    @Test
+    void putFileDoesntExist() throws Exception {
         final File tempFile = File.createTempFile("wagon", "tmp");
         tempFile.delete();
         assertFalse(tempFile.exists());
@@ -403,8 +445,7 @@ public void testPutFileDoesntExist() throws Exception {
         try {
             wagon.put(tempFile, "resource");
             fail();
-        } catch (TransferFailedException e) {
-            assertTrue(true);
+        } catch (TransferFailedException ignored) {
         } finally {
             wagon.disconnect();
         }
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/TransferFailedExceptionTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/TransferFailedExceptionTest.java
index b3b3d5d0..85fe0ddd 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/TransferFailedExceptionTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/TransferFailedExceptionTest.java
@@ -18,14 +18,17 @@
  */
 package org.apache.maven.wagon;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
  */
-public class TransferFailedExceptionTest extends TestCase {
-    public void testTransferFailedExceptionTest() {
+class TransferFailedExceptionTest {
+    @Test
+    void transferFailedExceptionTest() {
         TransferFailedException ae = new TransferFailedException("message");
 
         assertEquals("message", ae.getMessage());
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/WagonMock.java 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/WagonMock.java
index 626bf919..f681f5a2 100644
--- a/wagon-provider-api/src/test/java/org/apache/maven/wagon/WagonMock.java
+++ b/wagon-provider-api/src/test/java/org/apache/maven/wagon/WagonMock.java
@@ -25,8 +25,6 @@
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.maven.wagon.authorization.AuthorizationException;
-
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
@@ -41,7 +39,8 @@ public WagonMock(boolean errorInputStream) {
         this.errorInputStream = errorInputStream;
     }
 
-    public void fillInputData(InputData inputData) throws 
TransferFailedException {
+    @Override
+    public void fillInputData(InputData inputData) {
 
         InputStream is;
 
@@ -61,7 +60,8 @@ public void fillInputData(InputData inputData) throws 
TransferFailedException {
         inputData.setInputStream(is);
     }
 
-    public void fillOutputData(OutputData outputData) throws 
TransferFailedException {
+    @Override
+    public void fillOutputData(OutputData outputData) {
 
         OutputStream os;
 
@@ -78,24 +78,29 @@ public void fillOutputData(OutputData outputData) throws 
TransferFailedException
         outputData.setOutputStream(os);
     }
 
+    @Override
     public void openConnectionInternal() {}
 
+    @Override
     public void closeConnection() {}
 
+    @Override
     public void setTimeout(int timeoutValue) {
         timeout = timeoutValue;
     }
 
+    @Override
     public int getTimeout() {
         return timeout;
     }
 
-    public List<String> getFileList(String destinationDirectory)
-            throws TransferFailedException, AuthorizationException {
-        return Collections.<String>emptyList();
+    @Override
+    public List<String> getFileList(String destinationDirectory) {
+        return Collections.emptyList();
     }
 
-    public boolean resourceExists(String resourceName) throws 
AuthorizationException {
+    @Override
+    public boolean resourceExists(String resourceName) {
         return false;
     }
 }
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/authentication/AuthenticationExceptionTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/authentication/AuthenticationExceptionTest.java
index 02defbd9..aa7cd6c5 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/authentication/AuthenticationExceptionTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/authentication/AuthenticationExceptionTest.java
@@ -18,33 +18,17 @@
  */
 package org.apache.maven.wagon.authentication;
 
-/*
- * 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.
- */
+import org.junit.jupiter.api.Test;
 
-import junit.framework.TestCase;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
  */
-public class AuthenticationExceptionTest extends TestCase {
-    public void testAuthenticationExceptionTest() {
+class AuthenticationExceptionTest {
+    @Test
+    void authenticationExceptionTest() {
         AuthenticationException ae = new AuthenticationException("message");
 
         assertEquals("message", ae.getMessage());
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/authentication/AuthenticationInfoTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/authentication/AuthenticationInfoTest.java
index ff7765b2..977ba645 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/authentication/AuthenticationInfoTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/authentication/AuthenticationInfoTest.java
@@ -18,27 +18,19 @@
  */
 package org.apache.maven.wagon.authentication;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
  * @todo test defaults
  */
-public class AuthenticationInfoTest extends TestCase {
-    public AuthenticationInfoTest(final String name) {
-        super(name);
-    }
-
-    public void setUp() throws Exception {
-        super.setUp();
-    }
-
-    public void tearDown() throws Exception {
-        super.tearDown();
-    }
+public class AuthenticationInfoTest {
 
-    public void testAuthenticationInfoProperties() {
+    @Test
+    void authenticationInfoProperties() {
         final AuthenticationInfo authenticationInfo = new AuthenticationInfo();
 
         authenticationInfo.setUserName("username");
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/SessionEventSupportTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/SessionEventSupportTest.java
index f554a466..5b7d4959 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/SessionEventSupportTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/SessionEventSupportTest.java
@@ -18,26 +18,32 @@
  */
 package org.apache.maven.wagon.events;
 
-import junit.framework.TestCase;
 import org.apache.maven.wagon.Wagon;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
 
-import static org.easymock.EasyMock.*;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.createNiceMock;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 /**
  * @author <a href="[email protected]">Michal Maczka</a>
  *
  */
-public class SessionEventSupportTest extends TestCase {
+class SessionEventSupportTest {
 
     private SessionEventSupport eventSupport;
 
     private Wagon wagon;
 
     /**
-     * @see junit.framework.TestCase#setUp()
+     * @see
      */
-    protected void setUp() throws Exception {
-        super.setUp();
+    @BeforeEach
+    void setUp() {
 
         eventSupport = new SessionEventSupport();
 
@@ -45,7 +51,8 @@ protected void setUp() throws Exception {
         wagon = createNiceMock(Wagon.class);
     }
 
-    public void testSessionListenerRegistration() {
+    @Test
+    void sessionListenerRegistration() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
@@ -73,7 +80,8 @@ public void testSessionListenerRegistration() {
         assertFalse(eventSupport.hasSessionListener(mock1));
     }
 
-    public void testFireSessionDisconnected() {
+    @Test
+    void fireSessionDisconnected() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
@@ -94,7 +102,8 @@ public void testFireSessionDisconnected() {
         verify(mock1, mock2);
     }
 
-    public void testFireSessionDisconneting() {
+    @Test
+    void fireSessionDisconneting() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
@@ -115,7 +124,8 @@ public void testFireSessionDisconneting() {
         verify(mock1, mock2);
     }
 
-    public void testFireSessionLoggedIn() {
+    @Test
+    void fireSessionLoggedIn() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
@@ -136,7 +146,8 @@ public void testFireSessionLoggedIn() {
         verify(mock1, mock2);
     }
 
-    public void testFireSessionLoggedOff() {
+    @Test
+    void fireSessionLoggedOff() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
@@ -157,7 +168,8 @@ public void testFireSessionLoggedOff() {
         verify(mock1, mock2);
     }
 
-    public void testFireSessionOpened() {
+    @Test
+    void fireSessionOpened() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
@@ -178,7 +190,8 @@ public void testFireSessionOpened() {
         verify(mock1, mock2);
     }
 
-    public void testFireSessionOpenning() {
+    @Test
+    void fireSessionOpenning() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
@@ -199,7 +212,8 @@ public void testFireSessionOpenning() {
         verify(mock1, mock2);
     }
 
-    public void testFireSessionRefused() {
+    @Test
+    void fireSessionRefused() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
@@ -220,7 +234,8 @@ public void testFireSessionRefused() {
         verify(mock1, mock2);
     }
 
-    public void testFireDebug() {
+    @Test
+    void fireDebug() {
         SessionListener mock1 = createMock(SessionListener.class);
 
         eventSupport.addSessionListener(mock1);
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/SessionEventTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/SessionEventTest.java
index 16c95bcf..821d1a20 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/SessionEventTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/SessionEventTest.java
@@ -18,26 +18,31 @@
  */
 package org.apache.maven.wagon.events;
 
-import junit.framework.TestCase;
-import org.apache.maven.wagon.ConnectionException;
 import org.apache.maven.wagon.Wagon;
 import org.apache.maven.wagon.authentication.AuthenticationException;
 import org.apache.maven.wagon.repository.Repository;
 import org.easymock.EasyMock;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotSame;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.fail;
 
 /**
  * @author <a href="[email protected]">Michal Maczka</a>
  *
  */
-public class SessionEventTest extends TestCase {
+class SessionEventTest {
     /*
      * Class to test for void SESSIONEvent(Wagon, Repository, String, int,
      * int)
      */
-    public void testSessionEventProperties() throws ConnectionException, 
AuthenticationException {
+    @Test
+    void sessionEventProperties() throws Exception {
 
         final Wagon wagon = EasyMock.createMock(Wagon.class);
-        final Repository repo = new Repository();
+        final Repository repo = new Repository("fake", "http://fake";);
 
         wagon.connect(repo);
 
@@ -57,7 +62,7 @@ public void testSessionEventProperties() throws 
ConnectionException, Authenticat
         assertEquals(exception, event.getException());
 
         event.setException(null);
-        assertEquals(null, event.getException());
+        assertNull(event.getException());
 
         event.setException(exception);
         assertEquals(exception, event.getException());
@@ -95,12 +100,12 @@ public void testSessionEventProperties() throws 
ConnectionException, Authenticat
         try {
             event.setEventType(-1);
             fail("Exception expected");
-        } catch (IllegalArgumentException e) {
-            assertTrue(true);
+        } catch (IllegalArgumentException ignored) {
         }
     }
 
-    public void testConstantValueConflict() {
+    @Test
+    void constantValueConflict() {
         final int[] values = {
             SessionEvent.SESSION_CLOSED, SessionEvent.SESSION_DISCONNECTED,
             SessionEvent.SESSION_DISCONNECTING, 
SessionEvent.SESSION_ERROR_OCCURRED,
@@ -113,7 +118,7 @@ public void testConstantValueConflict() {
             for (int j = i + 1; j < values.length; j++) {
 
                 final String msg = "Value confict at [i,j]=[" + i + "," + j + 
"]";
-                assertTrue(msg, values[i] != values[j]);
+                assertNotSame(values[i], values[j], msg);
             }
         }
     }
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/TransferEventSupportTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/TransferEventSupportTest.java
index 147aadf7..214b15c5 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/TransferEventSupportTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/TransferEventSupportTest.java
@@ -18,26 +18,31 @@
  */
 package org.apache.maven.wagon.events;
 
-import junit.framework.TestCase;
 import org.apache.maven.wagon.Wagon;
 import org.apache.maven.wagon.resource.Resource;
 import org.easymock.EasyMock;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
 
-import static org.easymock.EasyMock.*;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 /**
  * @author <a href="[email protected]">Michal Maczka</a>
  */
-public class TransferEventSupportTest extends TestCase {
+class TransferEventSupportTest {
     private TransferEventSupport eventSupport;
 
     private Wagon wagon;
 
     /**
-     * @see junit.framework.TestCase#setUp()
+     * @see
      */
-    protected void setUp() throws Exception {
-        super.setUp();
+    @BeforeEach
+    void setUp() {
 
         eventSupport = new TransferEventSupport();
 
@@ -45,7 +50,8 @@ protected void setUp() throws Exception {
         wagon = EasyMock.createNiceMock(Wagon.class);
     }
 
-    public void testTransferListenerRegistration() {
+    @Test
+    void transferListenerRegistration() {
         TransferListener mock1 = createMock(TransferListener.class);
         eventSupport.addTransferListener(mock1);
 
@@ -68,7 +74,8 @@ public void testTransferListenerRegistration() {
         assertFalse(eventSupport.hasTransferListener(mock1));
     }
 
-    public void testFireTransferStarted() {
+    @Test
+    void fireTransferStarted() {
         TransferListener mock1 = createMock(TransferListener.class);
         eventSupport.addTransferListener(mock1);
 
@@ -87,7 +94,8 @@ public void testFireTransferStarted() {
         verify(mock1, mock2);
     }
 
-    public void testFireTransferProgress() {
+    @Test
+    void fireTransferProgress() {
         TransferListener mock1 = createMock(TransferListener.class);
 
         eventSupport.addTransferListener(mock1);
@@ -109,7 +117,8 @@ public void testFireTransferProgress() {
         verify(mock1, mock2);
     }
 
-    public void testFireTransferCompleted() {
+    @Test
+    void fireTransferCompleted() {
         TransferListener mock1 = createMock(TransferListener.class);
 
         eventSupport.addTransferListener(mock1);
@@ -130,7 +139,8 @@ public void testFireTransferCompleted() {
         verify(mock1, mock2);
     }
 
-    public void testFireTransferError() {
+    @Test
+    void fireTransferError() {
         TransferListener mock1 = createMock(TransferListener.class);
 
         eventSupport.addTransferListener(mock1);
@@ -151,7 +161,8 @@ public void testFireTransferError() {
         verify(mock1, mock2);
     }
 
-    public void testFireDebug() {
+    @Test
+    void fireDebug() {
         TransferListener mock1 = createMock(TransferListener.class);
 
         eventSupport.addTransferListener(mock1);
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/TransferEventTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/TransferEventTest.java
index e53cfc53..83cb9a85 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/TransferEventTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/events/TransferEventTest.java
@@ -18,27 +18,32 @@
  */
 package org.apache.maven.wagon.events;
 
-import junit.framework.TestCase;
-import org.apache.maven.wagon.ConnectionException;
 import org.apache.maven.wagon.Wagon;
 import org.apache.maven.wagon.authentication.AuthenticationException;
 import org.apache.maven.wagon.repository.Repository;
 import org.apache.maven.wagon.resource.Resource;
 import org.easymock.EasyMock;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotSame;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.fail;
 
 /**
  * @author <a href="[email protected]">Michal Maczka</a>
  *
  */
-public class TransferEventTest extends TestCase {
+class TransferEventTest {
     /*
      * Class to test for void TransferEvent(Wagon, Repository, String, int,
      * int)
      */
-    public void testTransferEventProperties() throws ConnectionException, 
AuthenticationException {
+    @Test
+    void transferEventProperties() throws Exception {
         final Wagon wagon = EasyMock.createMock(Wagon.class);
 
-        final Repository repo = new Repository();
+        final Repository repo = new Repository("fake", "http://fake";);
 
         wagon.connect(repo);
 
@@ -79,7 +84,7 @@ public void testTransferEventProperties() throws 
ConnectionException, Authentica
 
         event.setResource(null);
 
-        assertEquals(null, event.getResource());
+        assertNull(event.getResource());
 
         res.setName("/foo/baa");
 
@@ -103,8 +108,7 @@ public void testTransferEventProperties() throws 
ConnectionException, Authentica
             event.setRequestType(-1);
 
             fail("Exception expected");
-        } catch (IllegalArgumentException e) {
-            assertTrue(true);
+        } catch (IllegalArgumentException ignored) {
         }
 
         event.setEventType(TransferEvent.TRANSFER_COMPLETED);
@@ -127,12 +131,12 @@ public void testTransferEventProperties() throws 
ConnectionException, Authentica
             event.setEventType(-1);
 
             fail("Exception expected");
-        } catch (IllegalArgumentException e) {
-            assertTrue(true);
+        } catch (IllegalArgumentException ignored) {
         }
     }
 
-    public void testConstantValueConflict() {
+    @Test
+    void constantValueConflict() {
         final int[] values = {
             TransferEvent.TRANSFER_COMPLETED, TransferEvent.TRANSFER_ERROR,
             TransferEvent.TRANSFER_STARTED, TransferEvent.TRANSFER_PROGRESS,
@@ -144,7 +148,7 @@ public void testConstantValueConflict() {
 
                 final String msg = "Value confict at [i,j]=[" + i + "," + j + 
"]";
 
-                assertTrue(msg, values[i] != values[j]);
+                assertNotSame(values[i], values[j], msg);
             }
         }
     }
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/observers/ChecksumObserverTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/observers/ChecksumObserverTest.java
index 911ad1c3..7e97b354 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/observers/ChecksumObserverTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/observers/ChecksumObserverTest.java
@@ -19,40 +19,40 @@
 package org.apache.maven.wagon.observers;
 
 import java.io.File;
-import java.io.IOException;
-import java.security.NoSuchAlgorithmException;
 
-import junit.framework.TestCase;
-import org.apache.maven.wagon.ResourceDoesNotExistException;
 import org.apache.maven.wagon.TransferFailedException;
 import org.apache.maven.wagon.Wagon;
 import org.apache.maven.wagon.WagonMock;
-import org.apache.maven.wagon.authorization.AuthorizationException;
 import org.apache.maven.wagon.events.TransferEvent;
 import org.apache.maven.wagon.events.TransferListener;
 import org.apache.maven.wagon.repository.Repository;
 import org.apache.maven.wagon.resource.Resource;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
 
-public class ChecksumObserverTest extends TestCase {
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.fail;
+
+class ChecksumObserverTest {
     private Wagon wagon;
 
-    public void setUp() throws Exception {
-        super.setUp();
+    @BeforeEach
+    void setUp() throws Exception {
 
         wagon = new WagonMock(true);
 
-        Repository repository = new Repository();
+        Repository repository = new Repository("fake", "http://fake";);
         wagon.connect(repository);
     }
 
-    public void tearDown() throws Exception {
+    @AfterEach
+    void tearDown() throws Exception {
         wagon.disconnect();
-
-        super.tearDown();
     }
 
-    public void testSubsequentTransfersAfterTransferError()
-            throws NoSuchAlgorithmException, ResourceDoesNotExistException, 
AuthorizationException, IOException {
+    @Test
+    void subsequentTransfersAfterTransferError() throws Exception {
         TransferListener listener = new ChecksumObserver();
 
         wagon.addTransferListener(listener);
@@ -63,21 +63,20 @@ public void testSubsequentTransfersAfterTransferError()
         try {
             wagon.get("resource", testFile);
             fail();
-        } catch (TransferFailedException e) {
-            assertTrue(true);
+        } catch (TransferFailedException ignored) {
         }
 
         try {
             wagon.get("resource", testFile);
             fail();
-        } catch (TransferFailedException e) {
-            assertTrue(true);
+        } catch (TransferFailedException ignored) {
         }
 
         testFile.delete();
     }
 
-    public void testChecksum() throws NoSuchAlgorithmException {
+    @Test
+    void checksum() throws Exception {
         ChecksumObserver listener = new ChecksumObserver("SHA-1");
 
         Resource resource = new Resource("resource");
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/proxy/ProxyInfoTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/proxy/ProxyInfoTest.java
index 4ea306d1..a6448582 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/proxy/ProxyInfoTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/proxy/ProxyInfoTest.java
@@ -18,26 +18,18 @@
  */
 package org.apache.maven.wagon.proxy;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
  */
-public class ProxyInfoTest extends TestCase {
-    public ProxyInfoTest(final String name) {
-        super(name);
-    }
-
-    public void setUp() throws Exception {
-        super.setUp();
-    }
-
-    public void tearDown() throws Exception {
-        super.tearDown();
-    }
+public class ProxyInfoTest {
 
-    public void testProxyInfoProperties() {
+    @Test
+    void proxyInfoProperties() {
 
         final ProxyInfo proxyInfo = new ProxyInfo();
 
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/proxy/ProxyInfoUtilsTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/proxy/ProxyInfoUtilsTest.java
index 717f22eb..290fc3f6 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/proxy/ProxyInfoUtilsTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/proxy/ProxyInfoUtilsTest.java
@@ -18,29 +18,23 @@
  */
 package org.apache.maven.wagon.proxy;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 /**
  * @author <a href="mailto:[email protected]";>Thomas Champagne</a>
  */
-public class ProxyInfoUtilsTest extends TestCase {
-    public ProxyInfoUtilsTest(final String name) {
-        super(name);
-    }
-
-    public void setUp() throws Exception {
-        super.setUp();
-    }
-
-    public void tearDown() throws Exception {
-        super.tearDown();
-    }
+public class ProxyInfoUtilsTest {
 
-    public void testValidateNonProxyHostsWithNullProxy() {
-        assertFalse("www.ibiblio.org", ProxyUtils.validateNonProxyHosts(null, 
"maven.apache.org"));
+    @Test
+    void validateNonProxyHostsWithNullProxy() {
+        assertFalse(ProxyUtils.validateNonProxyHosts(null, 
"maven.apache.org"), "www.ibiblio.org");
     }
 
-    public void testValidateNonProxyHostsWithUniqueHost() {
+    @Test
+    void validateNonProxyHostsWithUniqueHost() {
 
         final ProxyInfo proxyInfo = new ProxyInfo();
         proxyInfo.setUserName("username");
@@ -50,20 +44,21 @@ public void testValidateNonProxyHostsWithUniqueHost() {
         proxyInfo.setType("SOCKSv4");
         proxyInfo.setNonProxyHosts("*.apache.org");
 
-        assertTrue("maven.apache.org", 
ProxyUtils.validateNonProxyHosts(proxyInfo, "maven.apache.org"));
+        assertTrue(ProxyUtils.validateNonProxyHosts(proxyInfo, 
"maven.apache.org"), "maven.apache.org");
 
-        assertFalse("www.ibiblio.org", 
ProxyUtils.validateNonProxyHosts(proxyInfo, "www.ibiblio.org"));
+        assertFalse(ProxyUtils.validateNonProxyHosts(proxyInfo, 
"www.ibiblio.org"), "www.ibiblio.org");
 
-        assertFalse("null", ProxyUtils.validateNonProxyHosts(proxyInfo, null));
+        assertFalse(ProxyUtils.validateNonProxyHosts(proxyInfo, null), "null");
 
         proxyInfo.setNonProxyHosts(null);
-        assertFalse("NonProxyHosts = null", 
ProxyUtils.validateNonProxyHosts(proxyInfo, "maven.apache.org"));
+        assertFalse(ProxyUtils.validateNonProxyHosts(proxyInfo, 
"maven.apache.org"), "NonProxyHosts = null");
 
         proxyInfo.setNonProxyHosts("");
-        assertFalse("NonProxyHosts = \"\"", 
ProxyUtils.validateNonProxyHosts(proxyInfo, "maven.apache.org"));
+        assertFalse(ProxyUtils.validateNonProxyHosts(proxyInfo, 
"maven.apache.org"), "NonProxyHosts = \"\"");
     }
 
-    public void testValidateNonProxyHostsWithMultipleHost() {
+    @Test
+    void validateNonProxyHostsWithMultipleHost() {
 
         final ProxyInfo proxyInfo = new ProxyInfo();
         proxyInfo.setUserName("username");
@@ -73,9 +68,9 @@ public void testValidateNonProxyHostsWithMultipleHost() {
         proxyInfo.setType("SOCKSv4");
         proxyInfo.setNonProxyHosts("*.apache.org|*.codehaus.org");
 
-        assertTrue("maven.apache.org", 
ProxyUtils.validateNonProxyHosts(proxyInfo, "maven.apache.org"));
-        assertTrue("wiki.codehaus.org", 
ProxyUtils.validateNonProxyHosts(proxyInfo, "wiki.codehaus.org"));
+        assertTrue(ProxyUtils.validateNonProxyHosts(proxyInfo, 
"maven.apache.org"), "maven.apache.org");
+        assertTrue(ProxyUtils.validateNonProxyHosts(proxyInfo, 
"wiki.codehaus.org"), "wiki.codehaus.org");
 
-        assertFalse("www.ibiblio.org", 
ProxyUtils.validateNonProxyHosts(proxyInfo, "www.ibiblio.org"));
+        assertFalse(ProxyUtils.validateNonProxyHosts(proxyInfo, 
"www.ibiblio.org"), "www.ibiblio.org");
     }
 }
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/repository/RepositoryPermissionsTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/repository/RepositoryPermissionsTest.java
index b6356366..1dcb35f5 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/repository/RepositoryPermissionsTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/repository/RepositoryPermissionsTest.java
@@ -18,27 +18,19 @@
  */
 package org.apache.maven.wagon.repository;
 
-import junit.framework.TestCase;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Brett Porter</a>
  *
  * @todo test defaults
  */
-public class RepositoryPermissionsTest extends TestCase {
-    public RepositoryPermissionsTest(final String name) {
-        super(name);
-    }
-
-    public void setUp() throws Exception {
-        super.setUp();
-    }
-
-    public void tearDown() throws Exception {
-        super.tearDown();
-    }
+public class RepositoryPermissionsTest {
 
-    public void testAuthenticationInfoProperties() {
+    @Test
+    void authenticationInfoProperties() {
         final RepositoryPermissions repositoryPermissions = new 
RepositoryPermissions();
 
         repositoryPermissions.setDirectoryMode("directoryMode");
diff --git 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/repository/RepositoryTest.java
 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/repository/RepositoryTest.java
index 4f6beba3..8ff5edbf 100644
--- 
a/wagon-provider-api/src/test/java/org/apache/maven/wagon/repository/RepositoryTest.java
+++ 
b/wagon-provider-api/src/test/java/org/apache/maven/wagon/repository/RepositoryTest.java
@@ -18,28 +18,20 @@
  */
 package org.apache.maven.wagon.repository;
 
-import junit.framework.TestCase;
 import org.apache.maven.wagon.WagonConstants;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 /**
  * @author <a href="mailto:[email protected]";>Jason van Zyl</a>
  *
  */
-public class RepositoryTest extends TestCase {
-    public RepositoryTest(final String name) {
-        super(name);
-    }
-
-    public void setUp() throws Exception {
-        super.setUp();
-    }
-
-    public void tearDown() throws Exception {
-        super.tearDown();
-    }
+public class RepositoryTest {
 
-    public void testRepositoryProperties() throws Exception {
-        Repository repository = new Repository();
+    @Test
+    void repositoryProperties() {
+        Repository repository = new Repository("fake", "http://fake";);
 
         repository.setBasedir("directory");
 
@@ -94,7 +86,8 @@ public void testRepositoryProperties() throws Exception {
         assertEquals("http://www.ibiblio.org";, repository.getUrl());
     }
 
-    public void testIPv6() {
+    @Test
+    void iPv6() {
         assertRepository(
                 "http://user:password@[fff:::1]:7891/oo/rest/users";,
                 "http://[fff:::1]:7891/oo/rest/users";,

Reply via email to