summaryrefslogtreecommitdiffstats
path: root/src/test/java/com/btr/proxy/search/browser/FirefoxTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/com/btr/proxy/search/browser/FirefoxTest.java')
-rw-r--r--src/test/java/com/btr/proxy/search/browser/FirefoxTest.java144
1 files changed, 144 insertions, 0 deletions
diff --git a/src/test/java/com/btr/proxy/search/browser/FirefoxTest.java b/src/test/java/com/btr/proxy/search/browser/FirefoxTest.java
new file mode 100644
index 0000000..2a45140
--- /dev/null
+++ b/src/test/java/com/btr/proxy/search/browser/FirefoxTest.java
@@ -0,0 +1,144 @@
+package com.btr.proxy.search.browser;
+
+import static org.junit.Assert.*;
+
+import java.net.Proxy;
+import java.net.ProxySelector;
+import java.net.URISyntaxException;
+import java.util.List;
+
+import org.junit.BeforeClass;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import com.btr.proxy.TestUtil;
+import com.btr.proxy.search.browser.firefox.FirefoxProxySearchStrategy;
+import com.btr.proxy.util.ProxyException;
+
+/*****************************************************************************
+ * Unit tests for the firefox search.
+ *
+ * @author Bernd Rosstauscher (proxyvole@rosstauscher.de) Copyright 2009
+ ****************************************************************************/
+
+@Ignore
+public class FirefoxTest {
+
+ /*************************************************************************
+ * Setup environment for tests.
+ ************************************************************************/
+ @BeforeClass
+ public static void setup() {
+ // Fake the OS for this tests.
+ System.setProperty("os.name", "Linux");
+ }
+
+ /*************************************************************************
+ * Test method.
+ * @throws ProxyException on error.
+ ************************************************************************/
+ @Test
+ public void testNone() throws ProxyException {
+ TestUtil.setTestDataFolder("ff3_none");
+
+ FirefoxProxySearchStrategy ff = new FirefoxProxySearchStrategy();
+ ProxySelector ps = ff.getProxySelector();
+
+ List<Proxy> result = ps.select(TestUtil.HTTPS_TEST_URI);
+ assertEquals(Proxy.NO_PROXY , result.get(0));
+
+ }
+
+ /*************************************************************************
+ * Test method
+ * @throws ProxyException on proxy detection error.
+ * @throws URISyntaxException on invalid URL syntax.
+ ************************************************************************/
+ @Test
+ public void testManualHttp() throws ProxyException, URISyntaxException {
+ TestUtil.setTestDataFolder("ff3_manual");
+
+ ProxySelector ps = new FirefoxProxySearchStrategy().getProxySelector();
+
+ List<Proxy> result = ps.select(TestUtil.HTTP_TEST_URI);
+ assertEquals(TestUtil.HTTP_TEST_PROXY, result.get(0));
+ }
+
+ /*************************************************************************
+ * Test method
+ * @throws ProxyException on proxy detection error.
+ * @throws URISyntaxException on invalid URL syntax.
+ ************************************************************************/
+ @Test
+ public void testManualHttps() throws ProxyException, URISyntaxException {
+ TestUtil.setTestDataFolder("ff3_manual");
+
+ ProxySelector ps = new FirefoxProxySearchStrategy().getProxySelector();
+
+ List<Proxy> result = ps.select(TestUtil.HTTPS_TEST_URI);
+ assertEquals(TestUtil.HTTPS_TEST_PROXY, result.get(0));
+ }
+
+ /*************************************************************************
+ * Test method
+ * @throws ProxyException on proxy detection error.
+ * @throws URISyntaxException on invalid URL syntax.
+ ************************************************************************/
+ @Test
+ public void testManualFtp() throws ProxyException, URISyntaxException {
+ TestUtil.setTestDataFolder("ff3_manual");
+
+ ProxySelector ps = new FirefoxProxySearchStrategy().getProxySelector();
+
+ List<Proxy> result = ps.select(TestUtil.FTP_TEST_URI);
+ assertEquals(TestUtil.FTP_TEST_PROXY, result.get(0));
+ }
+
+ /*************************************************************************
+ * Test method
+ * @throws ProxyException on proxy detection error.
+ * @throws URISyntaxException on invalid URL syntax.
+ ************************************************************************/
+ @Test
+ public void testManualSocks() throws ProxyException, URISyntaxException {
+ TestUtil.setTestDataFolder("ff3_manual");
+
+ ProxySelector ps = new FirefoxProxySearchStrategy().getProxySelector();
+
+ List<Proxy> result = ps.select(TestUtil.SOCKS_TEST_URI);
+ assertEquals(TestUtil.SOCKS_TEST_PROXY, result.get(0));
+ }
+
+
+ /*************************************************************************
+ * Test method
+ * @throws ProxyException on proxy detection error.
+ * @throws URISyntaxException on invalid URL syntax.
+ ************************************************************************/
+ @Test
+ public void testPac() throws ProxyException, URISyntaxException {
+ TestUtil.setTestDataFolder("ff3_pac_script");
+
+ ProxySelector ps = new FirefoxProxySearchStrategy().getProxySelector();
+
+ List<Proxy> result = ps.select(TestUtil.HTTP_TEST_URI);
+ assertEquals(TestUtil.HTTP_TEST_PROXY, result.get(0));
+ }
+
+ /*************************************************************************
+ * Test method
+ * @throws ProxyException on proxy detection error.
+ * @throws URISyntaxException on invalid URL syntax.
+ ************************************************************************/
+ @Test
+ public void testWhiteList() throws ProxyException, URISyntaxException {
+ TestUtil.setTestDataFolder("ff3_white_list");
+
+ ProxySelector ps = new FirefoxProxySearchStrategy().getProxySelector();
+
+ List<Proxy> result = ps.select(TestUtil.NO_PROXY_TEST_URI);
+ assertEquals(Proxy.NO_PROXY, result.get(0));
+ }
+
+}
+