Author: matthieu
Date: Fri Dec 11 10:04:19 2015
New Revision: 1719300

URL: http://svn.apache.org/viewvc?rev=1719300&view=rev
Log:
JAMES-1639 Test fixed port

Modified:
    
james/project/trunk/server/container/jetty/src/main/java/org/apache/james/http/jetty/JettyHttpServer.java
    
james/project/trunk/server/container/jetty/src/test/java/org/apache/james/http/jetty/JettyHttpServerTest.java

Modified: 
james/project/trunk/server/container/jetty/src/main/java/org/apache/james/http/jetty/JettyHttpServer.java
URL: 
http://svn.apache.org/viewvc/james/project/trunk/server/container/jetty/src/main/java/org/apache/james/http/jetty/JettyHttpServer.java?rev=1719300&r1=1719299&r2=1719300&view=diff
==============================================================================
--- 
james/project/trunk/server/container/jetty/src/main/java/org/apache/james/http/jetty/JettyHttpServer.java
 (original)
+++ 
james/project/trunk/server/container/jetty/src/main/java/org/apache/james/http/jetty/JettyHttpServer.java
 Fri Dec 11 10:04:19 2015
@@ -40,10 +40,14 @@ public class JettyHttpServer implements
 
     private JettyHttpServer(Configuration configuration) {
         server = new Server();
+        server.addConnector(buildServerConnector(configuration));
+        server.setHandler(buildServletHandler(configuration));
+    }
+
+    private ServerConnector buildServerConnector(Configuration configuration) {
         serverConnector = new ServerConnector(server);
-        server.addConnector(serverConnector);
-        ServletHandler servletHandler = buildServletHandler(configuration);
-        server.setHandler(servletHandler);
+        configuration.getPort().ifPresent(serverConnector::setPort);
+        return serverConnector;
     }
 
     private ServletHandler buildServletHandler(Configuration configuration) {

Modified: 
james/project/trunk/server/container/jetty/src/test/java/org/apache/james/http/jetty/JettyHttpServerTest.java
URL: 
http://svn.apache.org/viewvc/james/project/trunk/server/container/jetty/src/test/java/org/apache/james/http/jetty/JettyHttpServerTest.java?rev=1719300&r1=1719299&r2=1719300&view=diff
==============================================================================
--- 
james/project/trunk/server/container/jetty/src/test/java/org/apache/james/http/jetty/JettyHttpServerTest.java
 (original)
+++ 
james/project/trunk/server/container/jetty/src/test/java/org/apache/james/http/jetty/JettyHttpServerTest.java
 Fri Dec 11 10:04:19 2015
@@ -23,6 +23,7 @@ import static com.jayway.restassured.Res
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.io.IOException;
+import java.util.Random;
 
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
@@ -74,6 +75,21 @@ public class JettyHttpServerTest {
             assertThat(first.getPort()).isNotEqualTo(second.getPort());
         }
     }
+    
+    @Test
+    public void shouldStartOnConfiguredPort() throws Exception {
+        int port = generateValidUnprivilegedPort();
+        testee = 
JettyHttpServer.start(configurationBuilder.port(port).build());
+        assertThat(testee.getPort()).isEqualTo(port);
+    }
+    
+
+    private int generateValidUnprivilegedPort() {
+        int portBound = 65535;
+        int privilegedPortBound = 1024;
+        return new Random().nextInt(portBound - privilegedPortBound) + 
privilegedPortBound;
+    }
+    
     @Test
     public void shouldReturn404WhenNoServletConfigured() throws Exception {
         testee = JettyHttpServer.start(configurationBuilder.build());



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to