You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2011/10/20 09:51:39 UTC

svn commit: r1186647 - in /maven/sandbox/trunk/wagon/wagon-benchmarks: wagon-benchmarks-ahc/src/test/ wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/ wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/ wagon-benc...

Author: olamy
Date: Thu Oct 20 07:51:38 2011
New Revision: 1186647

URL: http://svn.apache.org/viewvc?rev=1186647&view=rev
Log:
add test with large file download

Added:
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/apache-maven-3.0.3-bin.zip
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpAhcTest.java   (contents, props changed)
      - copied, changed from r1186646, maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/apache-maven-3.0.3-bin.zip
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientLigthTest.java   (contents, props changed)
      - copied, changed from r1186646, maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http/src/test/apache-maven-3.0.3-bin.zip
Removed:
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java
Modified:
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/AbstractWagonHttpClientTest.java
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/GetFileServlet.java
    maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/TestServer.java

Added: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/apache-maven-3.0.3-bin.zip
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/apache-maven-3.0.3-bin.zip?rev=1186647&view=auto
==============================================================================
Files maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/apache-maven-3.0.3-bin.zip (added) and maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/apache-maven-3.0.3-bin.zip Thu Oct 20 07:51:38 2011 differ

Copied: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpAhcTest.java (from r1186646, maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java)
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpAhcTest.java?p2=maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpAhcTest.java&p1=maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java&r1=1186646&r2=1186647&rev=1186647&view=diff
==============================================================================
--- maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java (original)
+++ maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpAhcTest.java Thu Oct 20 07:51:38 2011
@@ -24,7 +24,7 @@ import org.apache.maven.wagon.Wagon;
 /**
  * @author Olivier Lamy
  */
-public class WagonHttpClientTest
+public class WagonHttpAhcTest
     extends AbstractWagonHttpClientTest
 {
     @Override

Propchange: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpAhcTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-ahc/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpAhcTest.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Modified: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/AbstractWagonHttpClientTest.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/AbstractWagonHttpClientTest.java?rev=1186647&r1=1186646&r2=1186647&view=diff
==============================================================================
--- maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/AbstractWagonHttpClientTest.java (original)
+++ maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/AbstractWagonHttpClientTest.java Thu Oct 20 07:51:38 2011
@@ -24,6 +24,8 @@ import org.apache.maven.wagon.repository
 import org.junit.Test;
 
 import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
 import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.List;
@@ -89,11 +91,85 @@ public abstract class AbstractWagonHttpC
     private void smallFileGet( boolean compressResponse, boolean ssl )
         throws Exception
     {
+        GetFileServlet.compressResponse = compressResponse;
+
         InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream( "maven-metadata.xml" );
-        String content = IOUtils.toString( is );
+        GetFileServlet.responseContent = IOUtils.toByteArray( is );
+
+        final TestServer testServer = new TestServer();
+
+        testServer.ssl = ssl;
+
+        testServer.servletsPerPath.put( "/*", GetFileServlet.class );
+
+        testServer.start();
+
+        call( Integer.parseInt( System.getProperty( "getRequestThreadNumber" ) ),
+              Integer.parseInt( System.getProperty( "getRequestNumber" ) ), ssl, testServer.port, true );
+
+        testServer.stop();
+
+    }
+
+    @Test
+    public void getHugeFileHttpNotCompressed()
+        throws Exception
+    {
+        long start = System.currentTimeMillis();
+
+        hugeFileGet( false, false );
+
+        long end = System.currentTimeMillis();
+        log.info( getClass() + " getHugeFilesHttpNotCompressed time " + ( end - start ) );
+    }
+
+    @Test
+    public void getHugeFileHttpsNotCompressed()
+        throws Exception
+    {
+        long start = System.currentTimeMillis();
 
+        hugeFileGet( false, true );
+
+        long end = System.currentTimeMillis();
+        log.info( getClass() + " getHugeFileHttpsNotCompressed time " + ( end - start ) );
+    }
+
+    @Test
+    public void getHugeFileHttpCompressed()
+        throws Exception
+    {
+        long start = System.currentTimeMillis();
+
+        hugeFileGet( true, false );
+
+        long end = System.currentTimeMillis();
+        log.info( getClass() + " getHugeFileHttpCompressed time " + ( end - start ) );
+    }
+
+
+    @Test
+    public void getHugeFileHttpsCompressed()
+        throws Exception
+    {
+        long start = System.currentTimeMillis();
+
+        hugeFileGet( true, true );
+
+        long end = System.currentTimeMillis();
+        log.info( getClass() + " getHugeFileHttpsCompressed time " + ( end - start ) );
+    }
+
+
+    private void hugeFileGet( boolean compressResponse, boolean ssl )
+        throws Exception
+    {
         GetFileServlet.compressResponse = compressResponse;
-        GetFileServlet.responseContent = content;
+
+        File f = new File( "src/test/apache-maven-3.0.3-bin.zip" );
+        FileInputStream fileInputStream = new FileInputStream( f );
+
+        GetFileServlet.responseContent = IOUtils.toByteArray( fileInputStream );
 
         final TestServer testServer = new TestServer();
 
@@ -104,7 +180,7 @@ public abstract class AbstractWagonHttpC
         testServer.start();
 
         call( Integer.parseInt( System.getProperty( "getRequestThreadNumber" ) ),
-              Integer.parseInt( System.getProperty( "getRequestNumber" ) ), ssl, testServer.port );
+              Integer.parseInt( System.getProperty( "getRequestNumber" ) ), ssl, testServer.port, false );
 
         testServer.stop();
 
@@ -112,7 +188,7 @@ public abstract class AbstractWagonHttpC
     }
 
 
-    protected void call( int poolNumber, int requestNumber, boolean ssl, final int port )
+    protected void call( int poolNumber, int requestNumber, boolean ssl, final int port, boolean testcontent )
         throws Exception
     {
         List<Callable<Void>> callables = new ArrayList<Callable<Void>>();
@@ -148,7 +224,10 @@ public abstract class AbstractWagonHttpC
 
             wagon.getToStream( "foo", baos );
 
-            assertTrue( baos.toString().contains( "20110821162420" ) );
+            if ( testcontent )
+            {
+                assertTrue( baos.toString().contains( "20110821162420" ) );
+            }
         }
 
         ExecutorService executorService = Executors.newFixedThreadPool( 15 );

Modified: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/GetFileServlet.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/GetFileServlet.java?rev=1186647&r1=1186646&r2=1186647&view=diff
==============================================================================
--- maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/GetFileServlet.java (original)
+++ maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/GetFileServlet.java Thu Oct 20 07:51:38 2011
@@ -39,7 +39,7 @@ public class GetFileServlet
 
     public static boolean compressResponse;
 
-    public static String responseContent;
+    public static byte[] responseContent;
 
     @Override
     protected void doGet( HttpServletRequest req, HttpServletResponse res )
@@ -52,18 +52,17 @@ public class GetFileServlet
         }
         else
         {
-            res.getOutputStream().write( responseContent.getBytes() );
+            res.getOutputStream().write( responseContent );
             res.getOutputStream().flush();
         }
     }
 
-    public static byte[] compressStringWithGZIP( String str )
+    public static byte[] compressStringWithGZIP( byte[] unCompress )
         throws IOException
     {
 
         ByteArrayOutputStream buffer = new ByteArrayOutputStream();
         GZIPOutputStream out = new GZIPOutputStream( buffer );
-        byte[] unCompress = str.getBytes();
         out.write( unCompress );
         out.finish();
         ByteArrayInputStream bais = new ByteArrayInputStream( buffer.toByteArray() );

Modified: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/TestServer.java
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/TestServer.java?rev=1186647&r1=1186646&r2=1186647&view=diff
==============================================================================
--- maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/TestServer.java (original)
+++ maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-api/src/main/java/org/apache/maven/wagon/benchmarks/TestServer.java Thu Oct 20 07:51:38 2011
@@ -25,12 +25,14 @@ import org.eclipse.jetty.server.nio.Sele
 import org.eclipse.jetty.server.ssl.SslSocketConnector;
 import org.eclipse.jetty.servlet.ServletContextHandler;
 import org.eclipse.jetty.servlet.ServletHolder;
+import org.eclipse.jetty.util.thread.ExecutorThreadPool;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import javax.servlet.Servlet;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.concurrent.Executors;
 
 /**
  * @author Olivier Lamy
@@ -62,6 +64,8 @@ public class TestServer
     {
         server = new Server( 0 );
 
+        server.setThreadPool( new ExecutorThreadPool( Executors.newFixedThreadPool( 15 ) ) );
+
         ServletContextHandler context = new ServletContextHandler();
 
         context.setContextPath( "/" );

Added: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/apache-maven-3.0.3-bin.zip
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/apache-maven-3.0.3-bin.zip?rev=1186647&view=auto
==============================================================================
Files maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/apache-maven-3.0.3-bin.zip (added) and maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/apache-maven-3.0.3-bin.zip Thu Oct 20 07:51:38 2011 differ

Copied: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientLigthTest.java (from r1186646, maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java)
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientLigthTest.java?p2=maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientLigthTest.java&p1=maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java&r1=1186646&r2=1186647&rev=1186647&view=diff
==============================================================================
--- maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientTest.java (original)
+++ maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientLigthTest.java Thu Oct 20 07:51:38 2011
@@ -24,7 +24,7 @@ import org.apache.maven.wagon.Wagon;
 /**
  * @author Olivier Lamy
  */
-public class WagonHttpClientTest
+public class WagonHttpClientLigthTest
     extends AbstractWagonHttpClientTest
 {
     @Override

Propchange: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientLigthTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http-lightweight/src/test/java/org/apache/maven/wagon/benchmarks/WagonHttpClientLigthTest.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http/src/test/apache-maven-3.0.3-bin.zip
URL: http://svn.apache.org/viewvc/maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http/src/test/apache-maven-3.0.3-bin.zip?rev=1186647&view=auto
==============================================================================
Files maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http/src/test/apache-maven-3.0.3-bin.zip (added) and maven/sandbox/trunk/wagon/wagon-benchmarks/wagon-benchmarks-http/src/test/apache-maven-3.0.3-bin.zip Thu Oct 20 07:51:38 2011 differ