changeset 453:8f7e65f53eb6

Fixed resource tests and Browsers.none behavior
author Jiri Vanek <jvanek@redhat.com>
date Fri, 29 Jun 2012 10:43:51 +0200
parents 924a83097ed7
children 8c02af104d7e
files ChangeLog tests/netx/jnlp_testsengine/net/sourceforge/jnlp/ResourcesTest.java tests/netx/jnlp_testsengine/net/sourceforge/jnlp/ServerAccess.java tests/netx/jnlp_testsengine/net/sourceforge/jnlp/browsertesting/BrowserTestRunner.java
diffstat 4 files changed, 44 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Thu Jun 28 14:53:07 2012 -0400
+++ b/ChangeLog	Fri Jun 29 10:43:51 2012 +0200
@@ -1,3 +1,12 @@
+2012-06-29  Jiri Vanek  <jvanek@redhat.com>
+
+	Fixed resource tests and Browsers.none behavior
+	* tests/netx/jnlp_testsengine/net/sourceforge/jnlp/ResourcesTest.java:
+	Added slash into all executeBrowsers urls.
+	Added midori and epiphany to simple proxies test.
+	* tests/netx/jnlp_testsengine/net/sourceforge/jnlp/browsertesting/BrowserTestRunner.java:
+	Corrected handling of Browsers.none together with -Dmodified.browsers.run switch
+
 2012-06-28  Omair Majid  <omajid@redhat.com>
 
 	* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
--- a/tests/netx/jnlp_testsengine/net/sourceforge/jnlp/ResourcesTest.java	Thu Jun 28 14:53:07 2012 -0400
+++ b/tests/netx/jnlp_testsengine/net/sourceforge/jnlp/ResourcesTest.java	Fri Jun 29 10:43:51 2012 +0200
@@ -40,7 +40,9 @@
 import java.io.FileFilter;
 import java.io.FileInputStream;
 import java.io.IOException;
+import java.net.MalformedURLException;
 import java.net.URI;
+import java.net.URL;
 import java.util.Arrays;
 import java.util.List;
 import net.sourceforge.jnlp.browsertesting.Browser;
@@ -48,7 +50,6 @@
 import net.sourceforge.jnlp.browsertesting.BrowserTest;
 import net.sourceforge.jnlp.browsertesting.Browsers;
 import net.sourceforge.jnlp.annotations.NeedsDisplay;
-import net.sourceforge.jnlp.annotations.TestInBrowsers;
 import net.sourceforge.jnlp.browsertesting.browsers.LinuxBrowser;
 import net.sourceforge.jnlp.annotations.TestInBrowsers;
 import org.junit.Assert;
@@ -62,7 +63,7 @@
     @NeedsDisplay
     public void testNonExisitngBrowserWillNotDeadlock() throws Exception {
         server.setCurrentBrowser(Browsers.none);
-        ServerAccess.ProcessResult pr = server.executeBrowser("simpletest1.jnlp");
+        ServerAccess.ProcessResult pr = server.executeBrowser("/simpletest1.jnlp");
         Assert.assertNull(pr.process);
         Assert.assertEquals(pr.stderr, "");
         Assert.assertEquals(pr.stdout, "");
@@ -85,9 +86,16 @@
     }
 
     @Test
+    public void testGetUrlUponThisInstance() throws MalformedURLException{
+        URL u1=server.getUrlUponThisInstance("simple.jsp");
+        URL u2=server.getUrlUponThisInstance("/simple.jsp");
+        Assert.assertEquals(u1, u2);
+    }
+
+    @Test
     @TestInBrowsers(testIn=Browsers.none)
     public void testNonExisitngBrowserWillNotCauseMess() throws Exception {
-        ServerAccess.ProcessResult pr = server.executeBrowser("simpletest1.jnlp");
+        ServerAccess.ProcessResult pr = server.executeBrowser("/simpletest1.jnlp");
         Assert.assertNull(pr.process);
         Assert.assertEquals(pr.stderr, "");
         Assert.assertEquals(pr.stdout, "");
@@ -175,15 +183,15 @@
         expected = 2;
         Assert.assertTrue("Created from  " + s + "there must be " + expected + " browsers in factory. Is" + bf.getAllBrowsers().size(), bf.getAllBrowsers().size() == expected);
 
-        s = Browsers.firefox.toExec() + ":" + Browsers.chromiumBrowser + ":" + Browsers.googleChrome.toExec() + ":" + Browsers.opera;
+        s = Browsers.firefox.toExec() + ":" + Browsers.chromiumBrowser + ":" + Browsers.googleChrome.toExec() + ":" + Browsers.opera + ":" + Browsers.epiphany + ":" + Browsers.midori;
         bf = new BrowserFactory(s);
-        expected = 4;
+        expected = 6;
         Assert.assertTrue("Created from  " + s + "there must be " + expected + " browsers in factory. Is" + bf.getAllBrowsers().size(), bf.getAllBrowsers().size() == expected);
         testFullFactory(bf);
 
-        s = "fgfd/" + Browsers.firefox.toExec() + ":" + "/fgfd/" + Browsers.chromiumBrowser + ":" + "fgfd/dfsdf/" + Browsers.googleChrome.toExec() + ":" + "/g/fgfd/" + Browsers.opera;
+        s = "fgfd/" + Browsers.firefox.toExec() + ":" + "/fgfd/" + Browsers.chromiumBrowser + ":" + "fgfd/dfsdf/" + Browsers.googleChrome.toExec() + ":" + "/g/fgfd/" + Browsers.opera + ":" + Browsers.epiphany + ":" + Browsers.midori;
         bf = new BrowserFactory(s);
-        expected = 4;
+        expected = 6;
         Assert.assertTrue("Created from  " + s + "there must be " + expected + " browsers in factory. Is" + bf.getAllBrowsers().size(), bf.getAllBrowsers().size() == expected);
         testFullFactory(bf);
 
@@ -289,7 +297,7 @@
                 e2.append(s).append("\n");
             }
         };
-       ServerAccess.ProcessResult pr=server.executeBrowser("simpletest1.jnlp",le,lo);
+        ServerAccess.ProcessResult pr = server.executeBrowser("/simpletest1.jnlp", le, lo);
         server.setCurrentBrowser(BrowserFactory.getFactory().getFirst().getID());
         Assert.assertNotNull(server.getCurrentBrowsers());
         Assert.assertNotNull(server.getCurrentBrowser());
@@ -310,6 +318,8 @@
         Assert.assertEquals(bf.getBrowser(Browsers.googleChrome).getID(), Browsers.googleChrome);
         Assert.assertEquals(bf.getBrowser(Browsers.firefox).getID(), Browsers.firefox);
         Assert.assertEquals(bf.getBrowser(Browsers.opera).getID(), Browsers.opera);
+        Assert.assertEquals(bf.getBrowser(Browsers.epiphany).getID(), Browsers.epiphany);
+        Assert.assertEquals(bf.getBrowser(Browsers.midori).getID(), Browsers.midori);
     }
 
     private void testBrowser(Browser browser) throws IOException {
--- a/tests/netx/jnlp_testsengine/net/sourceforge/jnlp/ServerAccess.java	Thu Jun 28 14:53:07 2012 -0400
+++ b/tests/netx/jnlp_testsengine/net/sourceforge/jnlp/ServerAccess.java	Fri Jun 29 10:43:51 2012 +0200
@@ -906,7 +906,10 @@
      * @return
      * @throws MalformedURLException
      */
-    private URL getUrlUponThisInstance(String resource) throws MalformedURLException {
+    public URL getUrlUponThisInstance(String resource) throws MalformedURLException {
+        if (!resource.startsWith("/")) {
+            resource = "/" + resource;
+        }
         return new URL("http", server.getServerName(), getPort(), resource);
     }
 
--- a/tests/netx/jnlp_testsengine/net/sourceforge/jnlp/browsertesting/BrowserTestRunner.java	Thu Jun 28 14:53:07 2012 -0400
+++ b/tests/netx/jnlp_testsengine/net/sourceforge/jnlp/browsertesting/BrowserTestRunner.java	Fri Jun 29 10:43:51 2012 +0200
@@ -36,12 +36,16 @@
                 String mbr = System.getProperty("modified.browsers.run");
                 if (mbr != null) {
                     if (mbr.equalsIgnoreCase("all")) {
-                        testableBrowsers = BrowserFactory.getFactory().getBrowsers(new Browsers[]{Browsers.all});
+                        if (!isBrowsersNoneSet(tib)) {
+                            testableBrowsers = BrowserFactory.getFactory().getBrowsers(new Browsers[]{Browsers.all});
+                        }
                     } else if (mbr.equalsIgnoreCase("one")) {
                         //this complication here is for case like
                         // namely enumerated concrete browsers, so we want to pick up
                         // random one from those already enumerated
-                        testableBrowsers = Arrays.asList(new Browsers[]{testableBrowsers.get(new Random().nextInt(testableBrowsers.size()))});
+                        if (isBrowsersNoneSet(tib)) {
+                            testableBrowsers = Arrays.asList(new Browsers[]{testableBrowsers.get(new Random().nextInt(testableBrowsers.size()))});
+                        }
                     } else if (mbr.equalsIgnoreCase("ignore")) {
                         testableBrowsers = BrowserFactory.getFactory().getBrowsers(new Browsers[]{Browsers.none});
                         browserIgnoration = true;
@@ -66,6 +70,13 @@
         }
     }
 
+    private boolean isBrowsersNoneSet(TestInBrowsers tib) {
+        if (tib.testIn().length == 1 && tib.testIn()[0] == Browsers.none) {
+            return true;
+        }
+        return false;
+    }
+
     private void injectBrowserCatched(FrameworkMethod method, Browsers browser) {
         try {
             injcetBrowser(method, browser);