Browse Source

Matt's proof my bug doesnt exist, as a unit test. Given the bug doesnt exist, w.t.f. is wrong with my task?

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@386329 13f79535-47bb-0310-9956-ffa450edef68
master
Steve Loughran 19 years ago
parent
commit
33d6bd4ce0
2 changed files with 85 additions and 0 deletions
  1. +42
    -0
      src/etc/testcases/core/extended-taskdef.xml
  2. +43
    -0
      src/testcases/org/apache/tools/ant/ExtendedTaskdefTest.java

+ 42
- 0
src/etc/testcases/core/extended-taskdef.xml View File

@@ -0,0 +1,42 @@
<project name="extended-taskdef" default="testRun">

<description>
Try and replicate a reported problem.

</description>
<property name="src" value="Foo.java"/>

<target name="write" >
<echo file="${src}">
import org.apache.tools.ant.BuildException;

public class Foo extends org.apache.tools.ant.taskdefs.WaitFor {

public void execute() {
throw new BuildException("executing the Foo task");
}
}
</echo>
</target>

<target name="compile" depends="write">
<javac srcdir="${basedir}" includes="${src}"/>
</target>

<target name="testRun" depends="compile">
<taskdef name="foo" classname="Foo"
classpath="${basedir}"/>
<foo maxwait="5" maxwaitunit="second"
timeoutproperty="foo">
<or/>
</foo>
</target>

<target name="teardown">
<delete>
<fileset dir="${basedir}"
includes="${src},*.class"/>
</delete>
</target>

</project>

+ 43
- 0
src/testcases/org/apache/tools/ant/ExtendedTaskdefTest.java View File

@@ -0,0 +1,43 @@
/*
* Copyright 2006 The Apache Software Foundation
*
* Licensed 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;

/**
* created 16-Mar-2006 12:25:12
*/

public class ExtendedTaskdefTest extends BuildFileTest {

/**
* Constructor for the BuildFileTest object.
*
* @param name string to pass up to TestCase constructor
*/
public ExtendedTaskdefTest(String name) {
super(name);
}

public void setUp() {
configureProject("src/etc/testcases/core/extended-taskdef.xml");
}

public void testRun() throws Exception {
expectBuildExceptionContaining("testRun",
"exception thrown by the subclass",
"executing the Foo task");
}
}

Loading…
Cancel
Save