You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by jo...@apache.org on 2013/02/19 16:09:41 UTC

svn commit: r1447755 - /commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/provider/https/test/GetContentInfoFunctionalTest.java

Author: joehni
Date: Tue Feb 19 15:09:41 2013
New Revision: 1447755

URL: http://svn.apache.org/r1447755
Log:
Support https_proxy environment variable to pass test.

Modified:
    commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/provider/https/test/GetContentInfoFunctionalTest.java

Modified: commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/provider/https/test/GetContentInfoFunctionalTest.java
URL: http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/provider/https/test/GetContentInfoFunctionalTest.java?rev=1447755&r1=1447754&r2=1447755&view=diff
==============================================================================
--- commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/provider/https/test/GetContentInfoFunctionalTest.java (original)
+++ commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/provider/https/test/GetContentInfoFunctionalTest.java Tue Feb 19 15:09:41 2013
@@ -1,10 +1,16 @@
 package org.apache.commons.vfs2.provider.https.test;
 
+import java.net.MalformedURLException;
+import java.net.URL;
+
 import org.apache.commons.vfs2.FileContent;
 import org.apache.commons.vfs2.FileObject;
 import org.apache.commons.vfs2.FileSystemException;
 import org.apache.commons.vfs2.FileSystemManager;
+import org.apache.commons.vfs2.FileSystemOptions;
 import org.apache.commons.vfs2.VFS;
+import org.apache.commons.vfs2.provider.http.HttpFileSystemConfigBuilder;
+
 import org.junit.Assert;
 import org.junit.Test;
 
@@ -21,12 +27,34 @@ public class GetContentInfoFunctionalTes
      *
      * @throws FileSystemException
      *             thrown when the getContentInfo API fails.
+     * @throws MalformedURLException 
+     *             thrown when the System environment contains an invalid URL for an HTTPS proxy.
      */
     @Test
-    public void testGoogle() throws FileSystemException
+    public void testGoogle() throws FileSystemException, MalformedURLException
     {
+    	String httpsProxyHost = null;
+    	int httpsProxyPort = -1;
+        final String httpsProxy = System.getenv("https_proxy");
+        if (httpsProxy != null) {
+        	final URL url = new URL(httpsProxy);
+        	httpsProxyHost = url.getHost();
+        	httpsProxyPort = url.getPort();
+        }
+        final FileSystemOptions opts;
+        if (httpsProxyHost != null) {
+            opts = new FileSystemOptions();
+            final HttpFileSystemConfigBuilder builder = HttpFileSystemConfigBuilder.getInstance();
+            builder.setProxyHost(opts, httpsProxyHost);
+            if (httpsProxyPort >= 0) {
+            	builder.setProxyPort(opts, httpsProxyPort);
+            }
+        } else {
+        	opts = null;
+        }
+        
         final FileSystemManager fsManager = VFS.getManager();
-        final FileObject fo = fsManager.resolveFile("https://www.google.com/images/logos/ps_logo2.png");
+        final FileObject fo = fsManager.resolveFile("https://www.google.com/images/logos/ps_logo2.png", opts);
         final FileContent content = fo.getContent();
         Assert.assertNotNull(content);
         // Used to NPE before fix: