/hg/icedtea-web: Fix CodeBaseClassLoaderTest.testParentClassLoad...
adomurad at icedtea.classpath.org
adomurad at icedtea.classpath.org
Thu Jan 3 10:17:40 PST 2013
changeset b758667cc17c in /hg/icedtea-web
details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=b758667cc17c
author: Adam Domurad <adomurad at redhat.com>
date: Thu Jan 03 13:17:37 2013 -0500
Fix CodeBaseClassLoaderTest.testParentClassLoaderIsAskedForClassesApplication
diffstat:
ChangeLog | 13 ++++++++++
netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java | 11 ++++++--
tests/reproducers/custom/AppletExtendsFromOutsideJar/srcs/AppletReferenceOutOfJar.java | 3 +-
tests/reproducers/custom/AppletExtendsFromOutsideJar/testcases/AppletExtendsFromOutsideJarTests.java | 3 +-
4 files changed, 25 insertions(+), 5 deletions(-)
diffs (87 lines):
diff -r 9549226afa8f -r b758667cc17c ChangeLog
--- a/ChangeLog Thu Jan 03 09:54:16 2013 +0100
+++ b/ChangeLog Thu Jan 03 13:17:37 2013 -0500
@@ -1,3 +1,16 @@
+2013-01-03 Adam Domurad <adomurad at redhat.com>
+
+ Fix breakage in unit test CodeBaseClassLoaderTest.testParentClassLoaderIsAskedForClassesApplication
+ * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
+ (CodeBaseClassLoader#findClassNonRecursive): New, call into
+ URLClassLoader#findClass
+ (CodeBaseClassLoader#findClass): Delegate JNLPClassLoader#findClass
+ (JNLPClassLoader#findClass): Call CodeBaseClassLoader#findClassNonRecursive
+ * tests/reproducers/custom/AppletExtendsFromOutsideJar/srcs/AppletReferenceOutOfJar.java
+ (init): Add applet finish message.
+ * tests/reproducers/custom/AppletExtendsFromOutsideJar/testcases/AppletExtendsFromOutsideJarTests.java
+ (testClassInAppletFolder): Close quickly on applet finish message.
+
2013-01-02 Jiri Vanek <jvanek at redhat.com>
Fixed unittest for InformationElement.
diff -r 9549226afa8f -r b758667cc17c netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
--- a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Thu Jan 03 09:54:16 2013 +0100
+++ b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Thu Jan 03 13:17:37 2013 -0500
@@ -1704,7 +1704,7 @@
// Try codebase loader
if (codeBaseLoader != null)
- return codeBaseLoader.findClass(name);
+ return codeBaseLoader.findClassNonRecursive(name);
// All else failed. Throw CNFE
throw new ClassNotFoundException(name);
@@ -2287,8 +2287,7 @@
super.addURL(url);
}
- @Override
- public Class<?> findClass(String name) throws ClassNotFoundException {
+ Class<?> findClassNonRecursive(String name) throws ClassNotFoundException {
// If we have searched this path before, don't try again
if (Arrays.equals(super.getURLs(), notFoundResources.get(name)))
throw new ClassNotFoundException(name);
@@ -2310,6 +2309,12 @@
}
}
+ @Override
+ public Class<?> findClass(String name) throws ClassNotFoundException {
+ // Calls JNLPClassLoader#findClass which may call into this.findClassNonRecursive
+ return getParentJNLPClassLoader().findClass(name);
+ }
+
/**
* Returns the output of super.findLoadedClass().
*
diff -r 9549226afa8f -r b758667cc17c tests/reproducers/custom/AppletExtendsFromOutsideJar/srcs/AppletReferenceOutOfJar.java
--- a/tests/reproducers/custom/AppletExtendsFromOutsideJar/srcs/AppletReferenceOutOfJar.java Thu Jan 03 09:54:16 2013 +0100
+++ b/tests/reproducers/custom/AppletExtendsFromOutsideJar/srcs/AppletReferenceOutOfJar.java Thu Jan 03 13:17:37 2013 -0500
@@ -42,6 +42,7 @@
Referenced outOfJarReference = new Referenced();
public void init() {
- System.out.println("My simple applet is running.");
+ System.out.println("My simple applet is running.");
+ System.out.println("*** APPLET FINISHED ***");
}
}
diff -r 9549226afa8f -r b758667cc17c tests/reproducers/custom/AppletExtendsFromOutsideJar/testcases/AppletExtendsFromOutsideJarTests.java
--- a/tests/reproducers/custom/AppletExtendsFromOutsideJar/testcases/AppletExtendsFromOutsideJarTests.java Thu Jan 03 09:54:16 2013 +0100
+++ b/tests/reproducers/custom/AppletExtendsFromOutsideJar/testcases/AppletExtendsFromOutsideJarTests.java Thu Jan 03 13:17:37 2013 -0500
@@ -36,6 +36,7 @@
*/
import net.sourceforge.jnlp.ProcessResult;
+import net.sourceforge.jnlp.ServerAccess.AutoClose;
import net.sourceforge.jnlp.annotations.Bug;
import net.sourceforge.jnlp.annotations.NeedsDisplay;
import net.sourceforge.jnlp.annotations.TestInBrowsers;
@@ -55,7 +56,7 @@
@TestInBrowsers(testIn = { Browsers.one })
@Bug(id = "PR920")
public void testClassInAppletFolder() throws Exception {
- ProcessResult pr = server.executeBrowser("/AppletExtendsFromOutsideJar.html");
+ ProcessResult pr = server.executeBrowser("/AppletExtendsFromOutsideJar.html", AutoClose.CLOSE_ON_BOTH);
Assert.assertFalse("Linkage error should not occur but did!", pr.stderr.contains(LINKAGE_ERROR_OCCURRENCE));
Assert.assertTrue("Expected '" + APPLET_RUNNING + "', stdout was: " + pr.stdout, pr.stdout.contains(APPLET_RUNNING));
More information about the distro-pkg-dev
mailing list