Author: bago
Date: Mon Apr 10 15:47:08 2006
New Revision: 393109
URL: http://svn.apache.org/viewcvs?rev=393109&view=rev
Log:
Port allocation improvements in unit-tests (JAMES-427)
Patch provided by Bernd Fondermann
Modified:
james/server/trunk/src/test/org/apache/james/pop3server/POP3ServerTest.java
james/server/trunk/src/test/org/apache/james/remotemanager/RemoteManagerTest.java
james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java
james/server/trunk/src/test/org/apache/james/test/util/Util.java
Modified:
james/server/trunk/src/test/org/apache/james/pop3server/POP3ServerTest.java
URL:
http://svn.apache.org/viewcvs/james/server/trunk/src/test/org/apache/james/pop3server/POP3ServerTest.java?rev=393109&r1=393108&r2=393109&view=diff
==============================================================================
--- james/server/trunk/src/test/org/apache/james/pop3server/POP3ServerTest.java
(original)
+++ james/server/trunk/src/test/org/apache/james/pop3server/POP3ServerTest.java
Mon Apr 10 15:47:08 2006
@@ -55,7 +55,7 @@
* Tests the org.apache.james.smtpserver.SMTPServer unit
*/
public class POP3ServerTest extends TestCase {
- private int m_pop3ListenerPort = Util.getRandomNonPrivilegedPort();
+ private int m_pop3ListenerPort = Util.getNonPrivilegedPort();
private MockMailServer m_mailServer;
Modified:
james/server/trunk/src/test/org/apache/james/remotemanager/RemoteManagerTest.java
URL:
http://svn.apache.org/viewcvs/james/server/trunk/src/test/org/apache/james/remotemanager/RemoteManagerTest.java?rev=393109&r1=393108&r2=393109&view=diff
==============================================================================
---
james/server/trunk/src/test/org/apache/james/remotemanager/RemoteManagerTest.java
(original)
+++
james/server/trunk/src/test/org/apache/james/remotemanager/RemoteManagerTest.java
Mon Apr 10 15:47:08 2006
@@ -56,7 +56,7 @@
public static final String LINE_SEPARATOR =
System.getProperties().getProperty("line.separator");
- protected int m_remoteManagerListenerPort =
Util.getRandomNonPrivilegedPort();
+ protected int m_remoteManagerListenerPort = Util.getNonPrivilegedPort();
protected RemoteManager m_remoteManager;
protected RemoteManagerTestConfiguration m_testConfiguration;
protected String m_host = "127.0.0.1";
Modified:
james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java
URL:
http://svn.apache.org/viewcvs/james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java?rev=393109&r1=393108&r2=393109&view=diff
==============================================================================
--- james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java
(original)
+++ james/server/trunk/src/test/org/apache/james/smtpserver/SMTPServerTest.java
Mon Apr 10 15:47:08 2006
@@ -61,7 +61,7 @@
* Tests the org.apache.james.smtpserver.SMTPServer unit
*/
public class SMTPServerTest extends TestCase {
- private int m_smtpListenerPort = Util.getRandomNonPrivilegedPort();
+ private int m_smtpListenerPort = Util.getNonPrivilegedPort();
private MockMailServer m_mailServer;
private SMTPTestConfiguration m_testConfiguration;
private SMTPServer m_smtpServer;
Modified: james/server/trunk/src/test/org/apache/james/test/util/Util.java
URL:
http://svn.apache.org/viewcvs/james/server/trunk/src/test/org/apache/james/test/util/Util.java?rev=393109&r1=393108&r2=393109&view=diff
==============================================================================
--- james/server/trunk/src/test/org/apache/james/test/util/Util.java (original)
+++ james/server/trunk/src/test/org/apache/james/test/util/Util.java Mon Apr 10
15:47:08 2006
@@ -20,10 +20,39 @@
import org.apache.avalon.framework.configuration.DefaultConfiguration;
import org.apache.james.smtpserver.*;
+/**
+ * some utilities for James unit testing
+ */
public class Util {
- public static int getRandomNonPrivilegedPort() {
- return ((int)( Math.random() * 3000) + 8000);
+ private static final int PORT_RANGE_START = 8000; // the lowest possible
port number assigned for testing
+ private static final int PORT_RANGE_END = 11000; // the highest possible
port number assigned for testing
+ private static int PORT_LAST_USED = PORT_RANGE_START;
+
+ /**
+ * assigns a port from the range of test ports
+ * @return port number
+ */
+ public static int getNonPrivilegedPort() {
+ return getNextNonPrivilegedPort(); // uses sequential assignment of
ports
+ }
+
+ /**
+ * assigns a random port from the range of test ports
+ * @return port number
+ */
+ protected static int getRandomNonPrivilegedPortInt() {
+ return ((int)( Math.random() * (PORT_RANGE_END - PORT_RANGE_START) +
PORT_RANGE_START));
+ }
+
+ /**
+ * assigns ports sequentially from the range of test ports
+ * @return port number
+ */
+ protected synchronized static int getNextNonPrivilegedPort() {
+ PORT_LAST_USED++;
+ if (PORT_LAST_USED > PORT_RANGE_END) PORT_LAST_USED = PORT_RANGE_START;
+ return PORT_LAST_USED;
}
public static Configuration getValuedConfiguration(String name, String
value) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]