aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/AntClassLoaderDelegationTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/AntClassLoaderDelegationTest.java')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/AntClassLoaderDelegationTest.java124
1 files changed, 0 insertions, 124 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/AntClassLoaderDelegationTest.java b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/AntClassLoaderDelegationTest.java
deleted file mode 100644
index ae5ce627..00000000
--- a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/AntClassLoaderDelegationTest.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.tools.ant;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.List;
-import org.apache.tools.ant.types.Path;
-import org.apache.tools.ant.util.FileUtils;
-import org.junit.Before;
-import org.junit.Test;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-/**
- * Test case for ant class loader
- *
- */
-public class AntClassLoaderDelegationTest {
-
- /** Instance of a utility class to use for file operations. */
- private static final FileUtils FILE_UTILS = FileUtils.getFileUtils();
-
- private Project p;
-
- @Before
- public void setUp() {
- p = new Project();
- p.init();
- }
-
- /** Sample resource present in build/testcases/ */
- private static final String TEST_RESOURCE
- = "apache/tools/ant/IncludeTest.class";
-
- @Test
- public void testFindResources() throws Exception {
- // This path should contain the class files for these testcases:
- String buildTestcases = System.getProperty("build.tests");
- assertNotNull("defined ${build.tests}", buildTestcases);
- assertTrue("have a dir " + buildTestcases,
- new File(buildTestcases).isDirectory());
- Path path = new Path(p, buildTestcases + "/org");
- // A special parent loader which is not the system class loader:
- ClassLoader parent = new ParentLoader();
- // An AntClassLoader which is supposed to delegate to
- // the parent and then to the disk path:
- ClassLoader acl = new AntClassLoader(parent, p, path, true);
- // The intended result URLs:
- URL urlFromPath = new URL(
- FILE_UTILS.toURI(buildTestcases) + "org/" + TEST_RESOURCE);
- URL urlFromParent = new URL("http://ant.apache.org/" + TEST_RESOURCE);
- assertEquals("correct resources (regular delegation order)",
- Arrays.asList(new URL[] {urlFromParent, urlFromPath}),
- enum2List(acl.getResources(TEST_RESOURCE)));
- acl = new AntClassLoader(parent, p, path, false);
- assertEquals("correct resources (reverse delegation order)",
- Arrays.asList(new URL[] {urlFromPath, urlFromParent}),
- enum2List(acl.getResources(TEST_RESOURCE)));
- }
-
- @Test
- public void testFindIsolateResources() throws Exception {
- String buildTestcases = System.getProperty("build.tests");
- assertNotNull("defined ${build.tests}", buildTestcases);
- assertTrue("have a dir " + buildTestcases,
- new File(buildTestcases).isDirectory());
- Path path = new Path(p, buildTestcases + "/org");
- // A special parent loader which is not the system class loader:
- ClassLoader parent = new ParentLoader();
-
- URL urlFromPath = new URL(
- FILE_UTILS.toURI(buildTestcases) + "org/" + TEST_RESOURCE);
- AntClassLoader acl = new AntClassLoader(parent, p, path, false);
- acl.setIsolated(true);
- assertEquals("correct resources (reverse delegation order)",
- Arrays.asList(new URL[] {urlFromPath}),
- enum2List(acl.getResources(TEST_RESOURCE)));
- }
-
- private static List enum2List(Enumeration e) {
- return Collections.list(e);
- }
-
- /** Special loader that just knows how to find TEST_RESOURCE. */
- private static final class ParentLoader extends ClassLoader {
-
- public ParentLoader() {}
-
- protected Enumeration findResources(String name) throws IOException {
- if (name.equals(TEST_RESOURCE)) {
- return Collections.enumeration(
- Collections.singleton(
- new URL("http://ant.apache.org/" + name)));
- } else {
- return Collections.enumeration(Collections.EMPTY_SET);
- }
- }
-
- }
-
-}