Mercurial > hg > release > icedtea-web-1.8
changeset 1252:ad35d90a0ee9
Cache reproducer adapted to newest state
* tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.html: used correct query,a s test rely on it
* tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.jnlp: same
* tests/reproducers/simple/AbsolutePathsAndQueryStrings/testcases/AbsolutePathsAndQueryStrings.java: (testCaching) adapted to query in cache and correclty made depndent on testAbsolutePathAndQueryStringWebstart
author | Jiri Vanek <jvanek@redhat.com> |
---|---|
date | Fri, 19 Jun 2015 16:00:59 +0200 |
parents | a5561b460631 |
children | 6f6aa0416960 |
files | ChangeLog tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.html tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.jnlp tests/reproducers/simple/AbsolutePathsAndQueryStrings/testcases/AbsolutePathsAndQueryStrings.java |
diffstat | 4 files changed, 68 insertions(+), 47 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Fri Jun 19 14:21:55 2015 +0200 +++ b/ChangeLog Fri Jun 19 16:00:59 2015 +0200 @@ -1,3 +1,15 @@ +2015-06-19 Jiri Vanek <jvanek@redhat.com> + + Cache reproducer adapted to newest state + * tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.html: + used correct query,a s test rely on it + * tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.jnlp: + same + * tests/reproducers/simple/AbsolutePathsAndQueryStrings/testcases/AbsolutePathsAndQueryStrings.java: + (testCaching) adapted to query in cache and correclty made depndent on + testAbsolutePathAndQueryStringWebstart + + 2015-06-19 Jiri Vanek <jvanek@redhat.com> Added experimental usage of headless dialogues to reproducers suite
--- a/tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.html Fri Jun 19 14:21:55 2015 +0200 +++ b/tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.html Fri Jun 19 16:00:59 2015 +0200 @@ -39,7 +39,7 @@ <head></head> <body> <embed code="StripHttpPathParams" - archive="/StripHttpPathParams.jar?i=1234abcd" + archive="/StripHttpPathParams.jar?i=abcd" type="application/x-java-applet;version=1.6" width="800" height="600">
--- a/tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.jnlp Fri Jun 19 14:21:55 2015 +0200 +++ b/tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.jnlp Fri Jun 19 16:00:59 2015 +0200 @@ -46,7 +46,8 @@ </information> <resources> <j2se version="1.4+"/> - <jar href="/StripHttpPathParams.jar?i=1234abcd"/> + <jar href="/StripHttpPathParams.jar?i=abcd"/> + <jar href="/StripHttpPathParams.jar?"/> </resources> <application-desc main-class="StripHttpPathParams"> </application-desc>
--- a/tests/reproducers/simple/AbsolutePathsAndQueryStrings/testcases/AbsolutePathsAndQueryStrings.java Fri Jun 19 14:21:55 2015 +0200 +++ b/tests/reproducers/simple/AbsolutePathsAndQueryStrings/testcases/AbsolutePathsAndQueryStrings.java Fri Jun 19 16:00:59 2015 +0200 @@ -1,38 +1,38 @@ /* AbsolutePathsAndQueryStrings.java -Copyright (C) 2013 Red Hat, Inc. + Copyright (C) 2013 Red Hat, Inc. -This file is part of IcedTea. + This file is part of IcedTea. -IcedTea is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, version 2. + IcedTea is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License as published by + the Free Software Foundation, version 2. -IcedTea is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. + IcedTea is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. -You should have received a copy of the GNU General Public License -along with IcedTea; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. + You should have received a copy of the GNU General Public License + along with IcedTea; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. + Linking this library statically or dynamically with other modules is + making a combined work based on this library. Thus, the terms and + conditions of the GNU General Public License cover the whole + combination. -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. + As a special exception, the copyright holders of this library give you + permission to link this library with independent modules to produce an + executable, regardless of the license terms of these independent + modules, and to copy and distribute the resulting executable under + terms of your choice, provided that you also meet, for each linked + independent module, the terms and conditions of the license of that + module. An independent module is a module which is not derived from + or based on this library. If you modify this library, you may extend + this exception to your version of the library, but you are not + obligated to do so. If you do not wish to do so, delete this + exception statement from your version. */ import java.io.File; @@ -40,36 +40,33 @@ import net.sourceforge.jnlp.ProcessResult; import net.sourceforge.jnlp.ServerAccess.AutoClose; import net.sourceforge.jnlp.annotations.Bug; -import net.sourceforge.jnlp.annotations.KnownToFail; import net.sourceforge.jnlp.annotations.NeedsDisplay; import net.sourceforge.jnlp.annotations.TestInBrowsers; import net.sourceforge.jnlp.browsertesting.BrowserTest; import net.sourceforge.jnlp.browsertesting.Browsers; import net.sourceforge.jnlp.closinglisteners.AutoOkClosingListener; -import net.sourceforge.jnlp.ServerAccess; import net.sourceforge.jnlp.cache.CacheUtil; import net.sourceforge.jnlp.runtime.JNLPRuntime; import net.sourceforge.jnlp.config.DeploymentConfiguration; import org.junit.Assert; import org.junit.Test; -import org.junit.AfterClass; public class AbsolutePathsAndQueryStrings extends BrowserTest { private static final String appletCloseString = AutoOkClosingListener.MAGICAL_OK_CLOSING_STRING; - @Bug(id="PR1204") + @Bug(id = "PR1204") @NeedsDisplay @Test - @TestInBrowsers(testIn={Browsers.one}) + @TestInBrowsers(testIn = {Browsers.one}) public void testAbsolutePathAndQueryStringBrowser() throws Exception { /* HTML specifies absolute path and path params, ensure that this is able to launch correctly */ ProcessResult pr = server.executeBrowser("/AbsolutePathsAndQueryStrings.html", AutoClose.CLOSE_ON_BOTH); Assert.assertTrue("stdout should contain " + appletCloseString + " but did not", pr.stdout.contains(appletCloseString)); } - @Bug(id="PR1204") + @Bug(id = "PR1204") @NeedsDisplay @Test public void testAbsolutePathAndQueryStringWebstart() throws Exception { @@ -78,9 +75,11 @@ Assert.assertTrue("stdout should contain \"running\"but did not", pr.stdout.contains("running")); } - @Bug(id="PR1204") + @Bug(id = "PR1204") @Test public void testCaching() throws Exception { + //prepare cached files + testAbsolutePathAndQueryStringWebstart(); /* Test that caching ignores path parameters and double-slash issue from absolute codebase paths */ URL plainLocation = new URL("http://localhost:1234/StripHttpPathParams.jar"); @@ -94,23 +93,32 @@ File cacheDir = new File(cacheLocation); Assert.assertTrue(cacheDir.isDirectory()); - boolean hasCachedCopy = false; + int hasCachedCopy = 0; for (File cache : cacheDir.listFiles()) { - File[] cacheFiles = new File[] { + File[] cacheFiles1 = new File[]{ CacheUtil.urlToPath(plainLocation, cache.getPath()), + CacheUtil.urlToPath(absoluteLocation, cache.getPath()),}; + File[] cacheFiles2 = new File[]{ CacheUtil.urlToPath(paramLocation, cache.getPath()), - CacheUtil.urlToPath(absoluteLocation, cache.getPath()), - CacheUtil.urlToPath(absoluteParamLocation, cache.getPath()), - }; - for (File f : cacheFiles) { - if (f.isFile()) - hasCachedCopy = true; - for (File g : cacheFiles) { + CacheUtil.urlToPath(absoluteParamLocation, cache.getPath()),}; + for (File f : cacheFiles1) { + if (f.isFile()) { + hasCachedCopy ++; + } + for (File g : cacheFiles1) { + Assert.assertEquals(f.getPath(), g.getPath()); + } + } + for (File f : cacheFiles2) { + if (f.isFile()) { + hasCachedCopy ++; + } + for (File g : cacheFiles2) { Assert.assertEquals(f.getPath(), g.getPath()); } } } - Assert.assertTrue(hasCachedCopy); + Assert.assertTrue(hasCachedCopy>=4); } }