aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/types/selectors/BaseSelectorTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/types/selectors/BaseSelectorTest.java')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/types/selectors/BaseSelectorTest.java295
1 files changed, 0 insertions, 295 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/types/selectors/BaseSelectorTest.java b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/types/selectors/BaseSelectorTest.java
deleted file mode 100644
index 2332778e..00000000
--- a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/types/selectors/BaseSelectorTest.java
+++ /dev/null
@@ -1,295 +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.types.selectors;
-
-import java.io.File;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.BuildFileTest;
-import org.apache.tools.ant.Project;
-
-/**
- * Base test case for Selectors. Provides a shared test as well as
- * a test bed for selecting on, and a helper method for determining
- * whether selections are correct.
- *
- * @deprecated as of 1.9.4. Use {@link org.apache.tools.ant.types.selectors.BaseSelectorRule} instead.
- */
-@Deprecated
-public abstract class BaseSelectorTest extends BuildFileTest {
-
- private Project project;
- private TaskdefForMakingBed tbed = null;
- protected File basedir;
- protected File beddir;
- protected File mirrordir;
- protected String[] filenames = {".","asf-logo.gif.md5","asf-logo.gif.bz2",
- "asf-logo.gif.gz","copy.filterset.filtered","zip/asf-logo.gif.zip",
- "tar/asf-logo.gif.tar","tar/asf-logo-huge.tar.gz",
- "tar/gz/asf-logo.gif.tar.gz","tar/bz2/asf-logo.gif.tar.bz2",
- "tar/bz2/asf-logo-huge.tar.bz2","tar/bz2"};
- protected File[] files = new File[filenames.length];
- protected File[] mirrorfiles = new File[filenames.length];
-
- public BaseSelectorTest(String name) {
- super(name);
- }
-
- public void setUp() {
- configureProject("src/etc/testcases/types/selectors.xml");
- executeTarget("setUp");
- beddir = new File(super.getProject().getProperty("test.dir"));
- mirrordir = new File(super.getProject().getProperty("mirror.dir"));
- basedir = getProjectDir();
- project = new Project();
- project.init();
- project.setBaseDir(basedir);
- for (int x = 0; x < files.length; x++) {
- files[x] = new File(beddir,filenames[x]);
- mirrorfiles[x] = new File(mirrordir,filenames[x]);
- }
- }
-
- /**
- * Override this in child classes to return a specific Selector
- */
- public abstract BaseSelector getInstance();
-
-
- /**
- * Return a preconfigured selector (with a set reference to
- * project instance).
- * @return the selector
- */
- public BaseSelector getSelector() {
- BaseSelector selector = getInstance();
- selector.setProject( getProject() );
- return selector;
- }
-
-
- public Project getProject() {
- return project;
- }
-
- /**
- * This is a test that all Selectors derived from BaseSelector can
- * use. It calls the setError() method and checks to ensure that a
- * BuildException is thrown as a result.
- */
- public void testRespondsToError() {
- BaseSelector s = getInstance();
- if (s == null) {
- return;
- }
- s.setError("test error");
- try {
- s.isSelected(beddir,filenames[0],files[0]);
- fail("Cannot cause BuildException when setError() is called");
- } catch (BuildException be) {
- assertEquals("test error",
- be.getMessage());
- }
- }
-
-
- /**
- * This is a helper method that takes a selector and calls its
- * isSelected() method on each file in the testbed. It returns
- * a string of "T"s amd "F"s
- */
- public String selectionString(FileSelector selector) {
- return selectionString(beddir,files,selector);
- }
-
- /**
- * This is a helper method that takes a selector and calls its
- * isSelected() method on each file in the mirror testbed. This
- * variation is used for dependency checks and to get around the
- * limitations in the touch task when running JDK 1.1. It returns
- * a string of "T"s amd "F"s.
- */
- public String mirrorSelectionString(FileSelector selector) {
- return selectionString(mirrordir,mirrorfiles,selector);
- }
-
- /**
- * Worker method for the two convenience methods above. Applies a
- * selector on a set of files passed in and returns a string of
- * "T"s amd "F"s from applying the selector to each file.
- */
- public String selectionString(File basedir, File[] files, FileSelector selector) {
- StringBuffer buf = new StringBuffer();
- for (int x = 0; x < files.length; x++) {
- if (selector.isSelected(basedir,filenames[x],files[x])) {
- buf.append('T');
- }
- else {
- buf.append('F');
- }
- }
- return buf.toString();
- }
-
- /**
- * Does the selection test for a given selector and prints the
- * filenames of the differing files (selected but shouldn't,
- * not selected but should).
- * @param selector The selector to test
- * @param expected The expected result
- */
- public void performTests(FileSelector selector, String expected) {
- String result = selectionString(selector);
- String diff = diff(expected, result);
- String resolved = resolve(diff);
- assertEquals("Differing files: " + resolved, result, expected);
- }
-
- /**
- * Checks which files are selected and shouldn't be or which
- * are not selected but should.
- * @param expected String containing 'F's and 'T's
- * @param result String containing 'F's and 'T's
- * @return Difference as String containing '-' (equal) and
- * 'X' (difference).
- */
- public String diff(String expected, String result) {
- int length1 = expected.length();
- int length2 = result.length();
- int min = (length1 > length2) ? length2 : length1;
- StringBuffer sb = new StringBuffer();
- for (int i=0; i<min; i++) {
- sb.append(
- (expected.charAt(i) == result.charAt(i))
- ? "-"
- : "X"
- );
- }
- return sb.toString();
- }
-
-
- /**
- * Resolves a diff-String (@see diff()) against the (inherited) filenames-
- * and files arrays.
- * @param filelist Diff-String
- * @return String containing the filenames for all differing files,
- * separated with semicolons ';'
- */
- public String resolve(String filelist) {
- StringBuffer sb = new StringBuffer();
- int min = (filenames.length > filelist.length())
- ? filelist.length()
- : filenames.length;
- for (int i=0; i<min; i++) {
- if ('X'==filelist.charAt(i)) {
- sb.append(filenames[i]);
- sb.append(";");
- }
- }
- return sb.toString();
- }
-
-
- /**
- * <p>Creates a testbed. We avoid the dreaded "test" word so that we
- * don't falsely identify this as a test to be run. The actual
- * setting up of the testbed is done in the
- * <code>src/etc/testcases/types/selectors.xml</code> build file.</p>
- *
- * <p>Note that the right way to call this is within a try block,
- * with a finally clause that calls cleanupBed(). You place tests of
- * the isSelected() method within the try block.</p>
- */
- protected void makeBed() {
- tbed = new TaskdefForMakingBed("setupfiles");
- tbed.setUp();
- tbed.makeTestbed();
- }
-
- /**
- * Cleans up the testbed by calling a target in the
- * <code>src/etc/testcases/types/selectors.xml</code> file.
- */
- protected void cleanupBed() {
- if (tbed != null) {
- tbed.tearDown();
- tbed = null;
- }
- }
-
-
- /**
- * <p>Creates a mirror of the testbed for use in dependency checks.</p>
- *
- * <p>Note that the right way to call this is within a try block,
- * with a finally clause that calls cleanupMirror(). You place tests of
- * the isSelected() method within the try block.</p>
- */
- protected void makeMirror() {
- tbed = new TaskdefForMakingBed("mirrorfiles");
- tbed.setUp();
- tbed.makeMirror();
- }
-
- /**
- * Cleans up the mirror testbed by calling a target in the
- * <code>src/etc/testcases/types/selectors.xml</code> file.
- */
- protected void cleanupMirror() {
- if (tbed != null) {
- tbed.deleteMirror();
- tbed = null;
- }
- }
-
- private class TaskdefForMakingBed extends BuildFileTest {
-
- TaskdefForMakingBed(String name) {
- super(name);
- }
-
- public void setUp() {
- configureProject("src/etc/testcases/types/selectors.xml");
- }
-
- public void tearDown() {
- try {
- super.tearDown();
- } catch (Exception exc) {
- // ignore
- }
- }
-
- public void makeTestbed() {
- executeTarget("setupfiles");
- }
-
- public void makeMirror() {
- executeTarget("mirrorfiles");
- }
-
- public void deleteMirror() {
- executeTarget("tearDown");
- }
- }
-
-
-
-}