From 670a91ad2a855185e5d46827c81b4f2ac9680f36 Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Wed, 29 Jul 2009 04:49:18 +0000 Subject: [PATCH] passing testcase for PR 47593 git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@798782 13f79535-47bb-0310-9956-ffa450edef68 --- src/etc/testcases/core/antclassloader.xml | 3 +++ .../apache/tools/ant/AntClassLoaderTest.java | 21 +++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/src/etc/testcases/core/antclassloader.xml b/src/etc/testcases/core/antclassloader.xml index 96f040587..541f70152 100644 --- a/src/etc/testcases/core/antclassloader.xml +++ b/src/etc/testcases/core/antclassloader.xml @@ -72,4 +72,7 @@ public class Foo {} storepass="apacheant" jar="${tmp.dir}/test.jar"/> + + + diff --git a/src/tests/junit/org/apache/tools/ant/AntClassLoaderTest.java b/src/tests/junit/org/apache/tools/ant/AntClassLoaderTest.java index 7a414d069..48db07248 100644 --- a/src/tests/junit/org/apache/tools/ant/AntClassLoaderTest.java +++ b/src/tests/junit/org/apache/tools/ant/AntClassLoaderTest.java @@ -19,6 +19,7 @@ package org.apache.tools.ant; import java.io.File; +import java.io.IOException; import org.apache.tools.ant.types.Path; /** @@ -147,6 +148,26 @@ public class AntClassLoaderTest extends BuildFileTest { assertNotNull("should be signed", foo.getSigners()); } + /** + * @see https://issues.apache.org/bugzilla/show_bug.cgi?id=47593 + */ + public void testInvalidZipException() throws Exception { + executeTarget("createNonJar"); + File jar = new File(getProject().getProperty("tmp.dir") + + "/foo.jar"); + + Path myPath = new Path(getProject()); + myPath.setLocation(jar); + getProject().setUserProperty("build.sysclasspath","ignore"); + loader = getProject().createClassLoader(myPath); + loader.getResource("foo.txt"); + String log = getLog(); + int startMessage = log.indexOf("Unable to obtain resource from "); + assertTrue(startMessage >= 0); + assertTrue(log.indexOf("foo.jar", startMessage) > 0); + + } + private static class GetPackageWrapper extends ClassLoader { GetPackageWrapper(ClassLoader parent) { super(parent);