You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2019/04/20 09:52:25 UTC
[maven-wagon] branch master updated: Remove getTestRepositoryPort()
from WagonTestCase,
wagon doesn't always require a port Test with port range for http + ftp
server Upgrade maven-enforcer-plugin (defaults is corrupt on one of
jenkins-nodes at ASF)
This is an automated email from the ASF dual-hosted git repository.
rfscholte pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-wagon.git
The following commit(s) were added to refs/heads/master by this push:
new 35ff402 Remove getTestRepositoryPort() from WagonTestCase, wagon doesn't always require a port Test with port range for http + ftp server Upgrade maven-enforcer-plugin (defaults is corrupt on one of jenkins-nodes at ASF)
35ff402 is described below
commit 35ff4024b9694edd9860d3d47011f55947735ace
Author: rfscholte <rf...@apache.org>
AuthorDate: Sat Apr 20 11:52:17 2019 +0200
Remove getTestRepositoryPort() from WagonTestCase, wagon doesn't always require a port
Test with port range for http + ftp server
Upgrade maven-enforcer-plugin (defaults is corrupt on one of jenkins-nodes at ASF)
---
pom.xml | 1 +
.../java/org/apache/maven/wagon/WagonTestCase.java | 23 ++++++++++----
.../apache/maven/wagon/http/HttpWagonTestCase.java | 1 -
.../maven/wagon/providers/file/FileWagonTest.java | 6 ----
wagon-providers/wagon-ftp/pom.xml | 2 +-
.../maven/wagon/providers/ftp/FtpWagonTest.java | 35 ++++++++++++++++------
.../http/HttpWagonHttpServerTestCase.java | 19 +++++++++++-
.../wagon/providers/http/HugeFileDownloadTest.java | 5 ++--
.../wagon/providers/scm/AbstractScmWagonTest.java | 6 ----
.../ssh/AbstractEmbeddedScpWagonTest.java | 2 --
.../ssh/AbstractEmbeddedScpWagonWithKeyTest.java | 2 --
.../apache/maven/wagon/providers/ssh/TestData.java | 5 ++++
.../ssh/external/ScpExternalWagonTest.java | 9 +-----
.../ScpWagonWithSshPrivateKeySearchTest.java | 9 +-----
.../wagon/providers/ssh/jsch/ScpWagonTest.java | 8 +----
.../jsch/ScpWagonWithSshPrivateKeySearchTest.java | 5 ----
.../wagon/providers/ssh/jsch/SftpWagonTest.java | 5 ----
.../wagon/providers/webdav/WebDavWagonTest.java | 20 ++++++-------
18 files changed, 83 insertions(+), 80 deletions(-)
diff --git a/pom.xml b/pom.xml
index 30e5b40..c2b7626 100644
--- a/pom.xml
+++ b/pom.xml
@@ -428,6 +428,7 @@ under the License.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
+ <version>3.0.0-M2</version>
<executions>
<execution>
<goals>
diff --git a/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java b/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java
index 9d26555..cdcdc67 100644
--- a/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java
+++ b/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java
@@ -42,6 +42,7 @@ import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.IOException;
+import java.net.ServerSocket;
import java.nio.charset.StandardCharsets;
import java.security.NoSuchAlgorithmException;
import java.text.SimpleDateFormat;
@@ -135,12 +136,22 @@ public abstract class WagonTestCase
*/
protected abstract String getProtocol();
- /**
- * The number of the port which should get used to start the test server
- *
- * @return the port number for the test server
- */
- protected abstract int getTestRepositoryPort();
+ public static ServerSocket newServerSocket( int... ports )
+ {
+ for ( int port : ports )
+ {
+ try
+ {
+ return new ServerSocket( port );
+ }
+ catch ( IOException ex )
+ {
+ continue;
+ }
+ }
+
+ throw new RuntimeException( "no port available" );
+ }
// ----------------------------------------------------------------------
// 1. Create a local file repository which mimic a users local file
diff --git a/wagon-provider-test/src/main/java/org/apache/maven/wagon/http/HttpWagonTestCase.java b/wagon-provider-test/src/main/java/org/apache/maven/wagon/http/HttpWagonTestCase.java
index b71ac55..16a777c 100644
--- a/wagon-provider-test/src/main/java/org/apache/maven/wagon/http/HttpWagonTestCase.java
+++ b/wagon-provider-test/src/main/java/org/apache/maven/wagon/http/HttpWagonTestCase.java
@@ -127,7 +127,6 @@ public abstract class HttpWagonTestCase
testRepository.setUrl( getTestRepositoryUrl() );
}
- @Override
protected final int getTestRepositoryPort()
{
if ( server == null )
diff --git a/wagon-providers/wagon-file/src/test/java/org/apache/maven/wagon/providers/file/FileWagonTest.java b/wagon-providers/wagon-file/src/test/java/org/apache/maven/wagon/providers/file/FileWagonTest.java
index a26ef98..ce48b81 100644
--- a/wagon-providers/wagon-file/src/test/java/org/apache/maven/wagon/providers/file/FileWagonTest.java
+++ b/wagon-providers/wagon-file/src/test/java/org/apache/maven/wagon/providers/file/FileWagonTest.java
@@ -50,12 +50,6 @@ public class FileWagonTest
return file.toPath().toUri().toASCIIString();
}
- @Override
- protected int getTestRepositoryPort() {
- // file transfer dont needs a port
- return 0;
- }
-
/**
* This test is introduced to allow for null file wagons.
* Which is used heavily in the maven component ITs.
diff --git a/wagon-providers/wagon-ftp/pom.xml b/wagon-providers/wagon-ftp/pom.xml
index 03be4b0..5b14c3c 100644
--- a/wagon-providers/wagon-ftp/pom.xml
+++ b/wagon-providers/wagon-ftp/pom.xml
@@ -43,7 +43,7 @@ under the License.
<dependency>
<groupId>org.apache.ftpserver</groupId>
<artifactId>ftpserver-core</artifactId>
- <version>1.0.6</version>
+ <version>1.1.1</version>
<scope>test</scope>
</dependency>
<dependency>
diff --git a/wagon-providers/wagon-ftp/src/test/java/org/apache/maven/wagon/providers/ftp/FtpWagonTest.java b/wagon-providers/wagon-ftp/src/test/java/org/apache/maven/wagon/providers/ftp/FtpWagonTest.java
index 6c8f401..d5f74b9 100644
--- a/wagon-providers/wagon-ftp/src/test/java/org/apache/maven/wagon/providers/ftp/FtpWagonTest.java
+++ b/wagon-providers/wagon-ftp/src/test/java/org/apache/maven/wagon/providers/ftp/FtpWagonTest.java
@@ -19,6 +19,12 @@ package org.apache.maven.wagon.providers.ftp;
* under the License.
*/
+import java.io.File;
+import java.io.IOException;
+import java.net.ServerSocket;
+import java.util.ArrayList;
+import java.util.List;
+
import org.apache.commons.io.FileUtils;
import org.apache.ftpserver.FtpServer;
import org.apache.ftpserver.FtpServerFactory;
@@ -36,11 +42,6 @@ import org.apache.maven.wagon.authentication.AuthenticationInfo;
import org.apache.maven.wagon.repository.Repository;
import org.apache.maven.wagon.resource.Resource;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-
/**
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
*
@@ -49,15 +50,31 @@ public class FtpWagonTest
extends StreamingWagonTestCase
{
static private FtpServer server;
-
+
+// private static final int testRepositoryPort = 10023 + new Random().nextInt( 16 );
+
+ private static int testRepositoryPort;
+
protected String getProtocol()
{
return "ftp";
}
+
+ static
+ {
+ // claim number, release it again so it can be reclaimed by ftp server
+ try (ServerSocket socket = newServerSocket( 10023, 10024, 10025, 10026 ))
+ {
+ testRepositoryPort = socket.getLocalPort();
+ }
+ catch ( IOException e )
+ {
+ e.printStackTrace();
+ }
+ }
- @Override
protected int getTestRepositoryPort() {
- return 10023;
+ return testRepositoryPort;
}
protected void setupWagonTestingFixtures()
@@ -77,7 +94,7 @@ public class FtpWagonTest
// set the port of the listener
factory.setPort(getTestRepositoryPort());
-
+
// replace the default listener
serverFactory.addListener("default", factory.createListener());
diff --git a/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonHttpServerTestCase.java b/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonHttpServerTestCase.java
index 5e7e72b..b257659 100644
--- a/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonHttpServerTestCase.java
+++ b/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpWagonHttpServerTestCase.java
@@ -1,5 +1,8 @@
package org.apache.maven.wagon.providers.http;
+import java.io.IOException;
+import java.net.ServerSocket;
+
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
@@ -20,6 +23,7 @@ package org.apache.maven.wagon.providers.http;
*/
import org.apache.maven.wagon.Wagon;
+import org.apache.maven.wagon.WagonTestCase;
import org.codehaus.plexus.PlexusTestCase;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.ResourceHandler;
@@ -31,7 +35,7 @@ import org.eclipse.jetty.servlet.ServletContextHandler;
public abstract class HttpWagonHttpServerTestCase
extends PlexusTestCase
{
- protected final int httpServerPort = 10008;
+ protected static int httpServerPort;
private Server server;
@@ -39,6 +43,19 @@ public abstract class HttpWagonHttpServerTestCase
protected ServletContextHandler context;
+ static
+ {
+ // claim number, release it again so it can be reclaimed by ftp server
+ try ( ServerSocket socket = WagonTestCase.newServerSocket( 10008, 10009, 10010, 10011 ) )
+ {
+ httpServerPort = socket.getLocalPort();
+ }
+ catch ( IOException e )
+ {
+ e.printStackTrace();
+ }
+ }
+
protected void setUp()
throws Exception
{
diff --git a/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HugeFileDownloadTest.java b/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HugeFileDownloadTest.java
index a32ce5b..ce75714 100644
--- a/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HugeFileDownloadTest.java
+++ b/wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HugeFileDownloadTest.java
@@ -19,7 +19,6 @@ package org.apache.maven.wagon.providers.http;
* under the License.
*/
-import junit.framework.Assert;
import org.apache.maven.wagon.Wagon;
import org.apache.maven.wagon.observers.Debug;
import org.apache.maven.wagon.repository.Repository;
@@ -106,7 +105,7 @@ public class HugeFileDownloadTest
LOGGER.info( "Fetching 'hugefile.txt' with content length" );
wagon.get( "hugefile.txt", dest );
- Assert.assertTrue( dest.length() >= HUGE_FILE_SIZE );
+ assertTrue( dest.length() >= HUGE_FILE_SIZE );
LOGGER.info( "The file was successfully fetched" );
wagon.disconnect();
@@ -163,7 +162,7 @@ public class HugeFileDownloadTest
LOGGER.info( "Fetching 'hugefile.txt' in chunks" );
wagon.get( "hugefile.txt", dest );
- Assert.assertTrue( dest.length() >= HUGE_FILE_SIZE );
+ assertTrue( dest.length() >= HUGE_FILE_SIZE );
LOGGER.info( "The file was successfully fetched" );
wagon.disconnect();
diff --git a/wagon-providers/wagon-scm/src/test/java/org/apache/maven/wagon/providers/scm/AbstractScmWagonTest.java b/wagon-providers/wagon-scm/src/test/java/org/apache/maven/wagon/providers/scm/AbstractScmWagonTest.java
index b34cede..9b4d448 100644
--- a/wagon-providers/wagon-scm/src/test/java/org/apache/maven/wagon/providers/scm/AbstractScmWagonTest.java
+++ b/wagon-providers/wagon-scm/src/test/java/org/apache/maven/wagon/providers/scm/AbstractScmWagonTest.java
@@ -100,12 +100,6 @@ public abstract class AbstractScmWagonTest
return null;
}
- @Override
- protected int getTestRepositoryPort()
- {
- return 0; // not used
- }
-
protected Wagon getWagon()
throws Exception
{
diff --git a/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/AbstractEmbeddedScpWagonTest.java b/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/AbstractEmbeddedScpWagonTest.java
index 0c01331..8593d87 100644
--- a/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/AbstractEmbeddedScpWagonTest.java
+++ b/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/AbstractEmbeddedScpWagonTest.java
@@ -67,13 +67,11 @@ public abstract class AbstractEmbeddedScpWagonTest
protected abstract String getProtocol();
- @Override
protected int getTestRepositoryPort()
{
return sshServer.getPort();
}
-
public String getTestRepositoryUrl()
{
return TestData.getTestRepositoryUrl( sshServer.getPort() );
diff --git a/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/AbstractEmbeddedScpWagonWithKeyTest.java b/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/AbstractEmbeddedScpWagonWithKeyTest.java
index 3651fc1..f35ffbc 100644
--- a/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/AbstractEmbeddedScpWagonWithKeyTest.java
+++ b/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/AbstractEmbeddedScpWagonWithKeyTest.java
@@ -65,13 +65,11 @@ public abstract class AbstractEmbeddedScpWagonWithKeyTest
protected abstract String getProtocol();
- @Override
protected int getTestRepositoryPort()
{
return sshServerEmbedded.getPort();
}
-
public String getTestRepositoryUrl()
{
return TestData.getTestRepositoryUrl( sshServerEmbedded.getPort() );
diff --git a/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/TestData.java b/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/TestData.java
index 39a71c1..71b36c0 100644
--- a/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/TestData.java
+++ b/wagon-providers/wagon-ssh-common-test/src/main/java/org/apache/maven/wagon/providers/ssh/TestData.java
@@ -40,6 +40,11 @@ public class TestData
return "scp://" + getHostname() + ":" + port + getRepoPath();
}
+ public static String getTestRepositoryUrl()
+ {
+ return "scp://" + getHostname() + getRepoPath();
+ }
+
public static String getRepoPath()
{
return getTempDirectory() + "/wagon-ssh-test/" + getUserName();
diff --git a/wagon-providers/wagon-ssh-external/src/test/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagonTest.java b/wagon-providers/wagon-ssh-external/src/test/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagonTest.java
index 41b5ab1..9b2e4ed 100644
--- a/wagon-providers/wagon-ssh-external/src/test/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagonTest.java
+++ b/wagon-providers/wagon-ssh-external/src/test/java/org/apache/maven/wagon/providers/ssh/external/ScpExternalWagonTest.java
@@ -55,16 +55,9 @@ public class ScpExternalWagonTest
return "scpexe";
}
- @Override
- protected int getTestRepositoryPort()
- {
- return 0; // not used
- }
-
-
public String getTestRepositoryUrl()
{
- return TestData.getTestRepositoryUrl( getTestRepositoryPort() );
+ return TestData.getTestRepositoryUrl();
}
protected AuthenticationInfo getAuthInfo()
diff --git a/wagon-providers/wagon-ssh-external/src/test/java/org/apache/maven/wagon/providers/ssh/external/ScpWagonWithSshPrivateKeySearchTest.java b/wagon-providers/wagon-ssh-external/src/test/java/org/apache/maven/wagon/providers/ssh/external/ScpWagonWithSshPrivateKeySearchTest.java
index 8ee5635..85c8d08 100644
--- a/wagon-providers/wagon-ssh-external/src/test/java/org/apache/maven/wagon/providers/ssh/external/ScpWagonWithSshPrivateKeySearchTest.java
+++ b/wagon-providers/wagon-ssh-external/src/test/java/org/apache/maven/wagon/providers/ssh/external/ScpWagonWithSshPrivateKeySearchTest.java
@@ -53,16 +53,9 @@ public class ScpWagonWithSshPrivateKeySearchTest
return "scpexe";
}
- @Override
- protected int getTestRepositoryPort()
- {
- return 0; // not used
- }
-
-
public String getTestRepositoryUrl()
{
- return TestData.getTestRepositoryUrl( getTestRepositoryPort() );
+ return TestData.getTestRepositoryUrl();
}
diff --git a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagonTest.java b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagonTest.java
index 250c88b..d1bddeb 100644
--- a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagonTest.java
+++ b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagonTest.java
@@ -40,15 +40,9 @@ public class ScpWagonTest
return "scp";
}
- @Override
- protected int getTestRepositoryPort()
- {
- return 0; // not used
- }
-
public String getTestRepositoryUrl()
{
- return TestData.getTestRepositoryUrl( getTestRepositoryPort() );
+ return TestData.getTestRepositoryUrl();
}
protected AuthenticationInfo getAuthInfo()
diff --git a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagonWithSshPrivateKeySearchTest.java b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagonWithSshPrivateKeySearchTest.java
index 60e1083..f86c5eb 100644
--- a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagonWithSshPrivateKeySearchTest.java
+++ b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/ScpWagonWithSshPrivateKeySearchTest.java
@@ -42,11 +42,6 @@ public class ScpWagonWithSshPrivateKeySearchTest
return "scp";
}
- @Override
- protected int getTestRepositoryPort() {
- return 0; // not used
- }
-
public String getTestRepositoryUrl()
{
return TestData.getTestRepositoryUrl(0);
diff --git a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/SftpWagonTest.java b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/SftpWagonTest.java
index 154224e..04182cc 100644
--- a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/SftpWagonTest.java
+++ b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/SftpWagonTest.java
@@ -39,11 +39,6 @@ public class SftpWagonTest
return "sftp";
}
- @Override
- protected int getTestRepositoryPort() {
- return 0; // not used
- }
-
public String getTestRepositoryUrl()
{
return TestData.getTestRepositoryUrl(0);
diff --git a/wagon-providers/wagon-webdav-jackrabbit/src/test/java/org/apache/maven/wagon/providers/webdav/WebDavWagonTest.java b/wagon-providers/wagon-webdav-jackrabbit/src/test/java/org/apache/maven/wagon/providers/webdav/WebDavWagonTest.java
index bbe2807..cf9fbdd 100644
--- a/wagon-providers/wagon-webdav-jackrabbit/src/test/java/org/apache/maven/wagon/providers/webdav/WebDavWagonTest.java
+++ b/wagon-providers/wagon-webdav-jackrabbit/src/test/java/org/apache/maven/wagon/providers/webdav/WebDavWagonTest.java
@@ -108,8 +108,8 @@ public class WebDavWagonTest
*/
public void testGetURLDavHttp()
{
- assertURL( "dav:http://localhost:" + getTestRepositoryPort() + "/dav/",
- "http://localhost:" + getTestRepositoryPort() + "/dav/" );
+ assertURL( "dav:http://localhost:9080/dav/",
+ "http://localhost:9080/dav/" );
}
/**
@@ -117,8 +117,8 @@ public class WebDavWagonTest
*/
public void testGetURLDavHttps()
{
- assertURL( "dav:https://localhost:" + getTestRepositoryPort() + "/dav/",
- "https://localhost:" + getTestRepositoryPort() + "/dav/" );
+ assertURL( "dav:https://localhost:9443/dav/",
+ "https://localhost:9443/dav/" );
}
/**
@@ -126,8 +126,8 @@ public class WebDavWagonTest
*/
public void testGetURLDavUri()
{
- assertURL( "dav://localhost:" + getTestRepositoryPort() + "/dav/",
- "http://localhost:" + getTestRepositoryPort() + "/dav/" );
+ assertURL( "dav://localhost:9080/dav/",
+ "http://localhost:9080/dav/" );
}
/**
@@ -135,8 +135,8 @@ public class WebDavWagonTest
*/
public void testGetURLDavUriWithSsl()
{
- assertURL( "davs://localhost:" + getTestRepositoryPort() + "/dav/",
- "https://localhost:" + getTestRepositoryPort() + "/dav/" );
+ assertURL( "davs://localhost:9443/dav/",
+ "https://localhost:9443/dav/" );
}
/**
@@ -153,8 +153,8 @@ public class WebDavWagonTest
*/
public void testGetURLDavPlusHttps()
{
- assertURL( "dav+https://localhost:" + getTestRepositoryPort() + "/dav/",
- "https://localhost:" + getTestRepositoryPort() + "/dav/" );
+ assertURL( "dav+https://localhost:9443/dav/",
+ "https://localhost:9443/dav/" );
}
public void testMkdirs()