Browse Source

changing tests to adopt unique temporary directories

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@1585377 13f79535-47bb-0310-9956-ffa450edef68
master
Antoine Levy-Lambert 11 years ago
parent
commit
b56846282e
6 changed files with 97 additions and 129 deletions
  1. +38
    -39
      src/etc/testcases/taskdefs/optional/antlr/antlr.xml
  2. +25
    -25
      src/etc/testcases/taskdefs/optional/replaceregexp.xml
  3. +22
    -24
      src/etc/testcases/taskdefs/optional/xslt.xml
  4. +1
    -6
      src/tests/junit/org/apache/tools/ant/taskdefs/optional/ANTLRTest.java
  5. +11
    -17
      src/tests/junit/org/apache/tools/ant/taskdefs/optional/ReplaceRegExpTest.java
  6. +0
    -18
      src/tests/junit/org/apache/tools/ant/taskdefs/optional/XsltTest.java

+ 38
- 39
src/etc/testcases/taskdefs/optional/antlr/antlr.xml View File

@@ -18,11 +18,10 @@

<project name="antlr-test" basedir="." default="test1">

<property name="tmp.dir" location="antlr.tmp"/>
<import file="../../../buildfiletest-base.xml"/>


<target name="setup">
<mkdir dir="${tmp.dir}"/>
<target name="setUp">
<mkdir dir="${output}" />
</target>

<target name="test1">
@@ -30,17 +29,17 @@
</target>

<target name="test2">
<antlr target="antlr.g" outputdirectory="${tmp.dir}"/>
<antlr target="antlr.g" outputdirectory="${output}"/>
</target>

<target name="test3" depends="setup">
<antlr target="antlr.g" outputdirectory="${tmp.dir}"/>
<target name="test3" depends="setUp">
<antlr target="antlr.g" outputdirectory="${output}"/>
<fail>
<condition>
<!-- to prove each of these files exists;
ANTLR >= 2.7.6 leaves behind new (.smap) files as well. -->
<resourcecount when="ne" count="5">
<fileset dir="${tmp.dir}">
<fileset dir="${output}">
<include name="CalcParserTokenTypes.txt" />
<include name="CalcParserTokenTypes.java" />
<include name="CalcLexer.java" />
@@ -52,20 +51,20 @@
</fail>
</target>

<target name="test4" depends="setup">
<antlr target="java.g" outputdirectory="${tmp.dir}"/>
<antlr dir="${tmp.dir}" target="java.tree.g" outputdirectory="${tmp.dir}"/>
<target name="test4" depends="setUp">
<antlr target="java.g" outputdirectory="${output}"/>
<antlr dir="${output}" target="java.tree.g" outputdirectory="${output}"/>
</target>

<target name="test5" depends="setup">
<antlr target="java.tree.g" outputdirectory="${tmp.dir}" fork="yes"/>
<target name="test5" depends="setUp">
<antlr target="java.tree.g" outputdirectory="${output}" fork="yes"/>
</target>

<target name="test6" depends="setup">
<antlr target="java.g" outputdirectory="${tmp.dir}" />
<antlr dir="${tmp.dir}"
<target name="test6" depends="setUp">
<antlr target="java.g" outputdirectory="${output}" />
<antlr dir="${output}"
target="java.tree.g"
outputdirectory="${tmp.dir}"
outputdirectory="${output}"
fork="yes"/>
</target>

@@ -73,58 +72,58 @@
<antlr target="antlr.xml"/>
</target>

<target name="test8" depends="setup">
<antlr target="extended.calc.g" outputdirectory="${tmp.dir}" glib="non-existent-file.g"/>
<target name="test8" depends="setUp">
<antlr target="extended.calc.g" outputdirectory="${output}" glib="non-existent-file.g"/>
</target>

<target name="test9" depends="setup">
<target name="test9" depends="setUp">
<!-- Note that I had to copy the grammars over to the temporary directory. -->
<!-- This is because ANTLR expects the super grammar and its generated java -->
<!-- files to be in the same directory, which won't be the case if I use -->
<!-- the output directory option. -->
<copy file="antlr.g" todir="${tmp.dir}"/>
<copy file="extended.calc.g" todir="${tmp.dir}"/>
<antlr target="${tmp.dir}/antlr.g"/>
<antlr target="${tmp.dir}/extended.calc.g" glib="${tmp.dir}/antlr.g"/>
<copy file="antlr.g" todir="${output}"/>
<copy file="extended.calc.g" todir="${output}"/>
<antlr target="${output}/antlr.g"/>
<antlr target="${output}/extended.calc.g" glib="${output}/antlr.g"/>
</target>

<target name="test10" depends="setup">
<antlr target="antlr.g" outputdirectory="${tmp.dir}" html="yes"/>
<target name="test10" depends="setUp">
<antlr target="antlr.g" outputdirectory="${output}" html="yes"/>
</target>

<target name="test11" depends="setup">
<antlr target="antlr.g" outputdirectory="${tmp.dir}" diagnostic="yes"/>
<target name="test11" depends="setUp">
<antlr target="antlr.g" outputdirectory="${output}" diagnostic="yes"/>
</target>

<target name="test12" depends="setup">
<antlr target="antlr.g" outputdirectory="${tmp.dir}" trace="yes"/>
<target name="test12" depends="setUp">
<antlr target="antlr.g" outputdirectory="${output}" trace="yes"/>
</target>

<target name="test13" depends="setup">
<antlr target="antlr.g" outputdirectory="${tmp.dir}" traceLexer="yes" traceParser="yes" traceTreeWalker="yes"/>
<target name="test13" depends="setUp">
<antlr target="antlr.g" outputdirectory="${output}" traceLexer="yes" traceParser="yes" traceTreeWalker="yes"/>
</target>

<!-- test9 will have been run before that -->
<target name="noRecompile">
<antlr target="${tmp.dir}/extended.calc.g" glib="${tmp.dir}/antlr.g"/>
<antlr target="${output}/extended.calc.g" glib="${output}/antlr.g"/>
</target>

<!-- test9 will have been run before that -->
<target name="normalRecompile">
<sleep seconds="2"/>
<touch file="${tmp.dir}/extended.calc.g"/>
<antlr target="${tmp.dir}/extended.calc.g" glib="${tmp.dir}/antlr.g"/>
<touch file="${output}/extended.calc.g"/>
<antlr target="${output}/extended.calc.g" glib="${output}/antlr.g"/>
</target>

<!-- test9 will have been run before that -->
<target name="supergrammarChangeRecompile">
<sleep seconds="2"/>
<touch file="${tmp.dir}/antlr.g"/>
<antlr target="${tmp.dir}/extended.calc.g" glib="${tmp.dir}/antlr.g"/>
<touch file="${output}/antlr.g"/>
<antlr target="${output}/extended.calc.g" glib="${output}/antlr.g"/>
</target>

<target name="cleanup">
<delete dir="${tmp.dir}" />
<target name="tearDown">
<delete dir="${output}" />
<delete file="../../../../../../CalcParserTokenTypes.txt"/>
</target>



+ 25
- 25
src/etc/testcases/taskdefs/optional/replaceregexp.xml View File

@@ -16,68 +16,68 @@
limitations under the License.
-->
<project name="test" default="def" basedir=".">
<property name="tmpregexp" location="tmpregexp"/>
<target name="def">
<fail>This build file should only be run from within the testcase</fail>
<import file="../../buildfiletest-base.xml"/>

<property name="root" location="../../../../.."/>

<target name="setUp">
<mkdir dir="${output}" />
<copy file="replaceregexp.properties" tofile="${output}/test.properties" />
</target>

<target name="setup">
<copy file="replaceregexp.properties" tofile="test.properties" />
<target name="def">
<fail>This build file should only be run from within the testcase</fail>
</target>

<target name="setup-nl">
<copy file="replaceregexp2.properties" tofile="test.properties" />
<target name="setUp-nl">
<mkdir dir="${output}" />
<copy file="replaceregexp2.properties" tofile="${output}/test.properties" />
</target>

<target name="testReplace" depends="setup">
<replaceregexp file="test.properties" byline="true">
<target name="testReplace" depends="setUp">
<replaceregexp file="${output}/test.properties" byline="true">
<regexp pattern="Old(.*)=(.*)" />
<substitution expression="NewProp=\1\2" />
</replaceregexp>
</target>
<!-- use in conjunction with testDirectoryDateDoesNotChange to make sure something will happen -->
<target name="touchDirectory">
<mkdir dir="${tmpregexp}"/>
<copy file="replaceregexp.properties" tofile="${tmpregexp}/test.properties" />
<copy file="replaceregexp.properties" tofile="${output}/test.properties" />
<sleep seconds="2"/>
</target>
<target name="testDirectoryDateDoesNotChange">
<replaceregexp file="${tmpregexp}/test.properties" byline="true">
<replaceregexp file="${output}/test.properties" byline="true">
<regexp pattern="foo" />
<substitution expression="bar"/>
</replaceregexp>
</target>

<target name="testDontAddNewline1" depends="setup-nl">
<replaceregexp file="test.properties" byline="false">
<target name="testDontAddNewline1" depends="setUp-nl">
<replaceregexp file="${output}/test.properties" byline="false">
<regexp pattern="Old(.*)=(.*)" />
<substitution expression="NewProp=\1\2" />
</replaceregexp>
</target>

<target name="testDontAddNewline2" depends="setup-nl">
<replaceregexp file="test.properties" byline="true">
<target name="testDontAddNewline2" depends="setUp-nl">
<replaceregexp file="${output}/test.properties" byline="true">
<regexp pattern="Old(.*)=(.*)" />
<substitution expression="NewProp=\1\2" />
</replaceregexp>
</target>

<target name="lastModifiedSetup">
<mkdir dir="${tmpregexp}"/>
<echo file="${tmpregexp}/test.txt">Hello, world!</echo>
<echo file="${output}/test.txt">Hello, world!</echo>
</target>

<target name="testNoPreserve">
<replaceregexp match="world" replace="Ant" file="${tmpregexp}/test.txt"/>
<replaceregexp match="world" replace="Ant" file="${output}/test.txt"/>
</target>

<target name="testPreserve">
<replaceregexp match="world" replace="Ant" file="${tmpregexp}/test.txt"
<replaceregexp match="world" replace="Ant" file="${output}/test.txt"
preserveLastModified="true"/>
</target>

<target name="cleanup">
<delete file="test.properties" />
<delete dir="${tmpregexp}" quiet="true"/>
</target>

</project>


+ 22
- 24
src/etc/testcases/taskdefs/optional/xslt.xml View File

@@ -16,14 +16,17 @@
limitations under the License.
-->

<project name="xslt" default="xslt" basedir=".">
<property name="nonasciidir" value="xml/&#0227;nt"/>
<target name="init">
<mkdir dir="xml/out"/>
<project name="xslt" default="tearDown" basedir=".">

<import file="../../buildfiletest-base.xml"/>

<target name="setUp">
<mkdir dir="${output}" />
</target>

<target name="initNonAscii">
<mkdir dir="${nonasciidir}"/>
<target name="initNonAscii" depends="setUp">
<property name="nonasciidir" value="${output}/&#0227;nt"/>
<mkdir dir="${nonasciidir}"/>
<copy todir="${nonasciidir}">
<fileset dir="xml">
<include name="docwithentity.xml"/>
@@ -32,13 +35,8 @@
</copy>
</target>

<target name="teardown">
<delete dir="xml/out"/>
<delete dir="${nonasciidir}" quiet="true"/>
</target>
<target name="testCatchNoDtd" depends="init">
<xslt basedir="xml" destdir="xml/out"
<target name="testCatchNoDtd" depends="setUp">
<xslt basedir="xml" destdir="${output}"
includes="about.xml"
extension=".txt"
style="xml/doc.xsl">
@@ -50,8 +48,8 @@
location="xml/doc.dtd"/>
</xmlcatalog>
<target name="testCatalog" depends="init">
<xslt destdir="xml/out"
<target name="testCatalog" depends="setUp">
<xslt destdir="${output}"
includes="about.xml"
extension=".txt"
style="xml/doc.xsl">
@@ -59,9 +57,9 @@
</xslt>
</target>

<target name="testOutputProperty" depends="init">
<target name="testOutputProperty" depends="setUp">
<xslt in="xml/test.xml"
out="xml/out/test-out.xml"
out="${output}/test-out.xml"
style="xml/test.xsl">
<outputproperty name="method" value="xml"/>
<outputproperty name="standalone" value="yes"/>
@@ -71,17 +69,17 @@
</target>
<target name="testFactory" depends="init">
<target name="testFactory" depends="setUp">
<xslt in="xml/test.xml"
out="xml/out/test-out.xml"
out="${output}/test-out.xml"
style="xml/test.xsl">
<factory name="org.apache.xalan.processor.TransformerFactoryImpl"/>
</xslt>
</target>

<target name="testAttribute" depends="init">
<target name="testAttribute" depends="setUp">
<xslt in="xml/test.xml"
out="xml/out/test-out.xml"
out="${output}/test-out.xml"
style="xml/test.xsl">
<factory name="org.apache.xalan.processor.TransformerFactoryImpl">
<attribute name="http://xml.apache.org/xalan/features/optimize" value="true"/>
@@ -91,13 +89,13 @@
<!-- inspired by bug report 37348 -->
<target name="testXMLWithEntitiesInNonAsciiPath" depends="initNonAscii">
<xslt in="${nonasciidir}/docwithentity.xml"
out="xml/out/test-out.xml"
out="${output}/test-out.xml"
style="xml/apache.xsl">
</xslt>
</target>
<target name="testStyleSheetWithInclude" depends="init">
<target name="testStyleSheetWithInclude" depends="setUp">
<xslt in="xml/books.xml"
out="xml/out/test-out.xml"
out="${output}/test-out.xml"
style="xml/stylesheet_with_include.xsl">
</xslt>
</target>


+ 1
- 6
src/tests/junit/org/apache/tools/ant/taskdefs/optional/ANTLRTest.java View File

@@ -44,10 +44,6 @@ public class ANTLRTest extends BuildFileTest {
configureProject(TASKDEFS_DIR + "antlr.xml");
}

public void tearDown() {
executeTarget("cleanup");
}

public void test1() {
expectBuildException("test1", "required argument, target, missing");
}
@@ -99,8 +95,7 @@ public class ANTLRTest extends BuildFileTest {
*/
public void test10() {
executeTarget("test10");
File outputDirectory = new File(System.getProperty("root"), TASKDEFS_DIR + "antlr.tmp");
String[] calcFiles = outputDirectory.list(new HTMLFilter());
String[] calcFiles = getOutputDir().list(new HTMLFilter());
assertTrue(calcFiles.length > 0);
}



+ 11
- 17
src/tests/junit/org/apache/tools/ant/taskdefs/optional/ReplaceRegExpTest.java View File

@@ -41,15 +41,11 @@ public class ReplaceRegExpTest extends BuildFileTest {
configureProject(PROJECT_PATH + "/replaceregexp.xml");
}

public void tearDown() {
executeTarget("cleanup");
}

public void testReplace() throws IOException {
Properties original = new Properties();
FileInputStream propsFile = null;
try {
propsFile = new FileInputStream(new File(System.getProperty("root"), PROJECT_PATH + "/replaceregexp.properties"));
propsFile = new FileInputStream(new File(project.getBaseDir() + "/replaceregexp.properties"));
original.load(propsFile);
} finally {
if (propsFile != null) {
@@ -64,7 +60,7 @@ public class ReplaceRegExpTest extends BuildFileTest {

Properties after = new Properties();
try {
propsFile = new FileInputStream(new File(System.getProperty("root"), PROJECT_PATH + "/test.properties"));
propsFile = new FileInputStream(new File(getOutputDir(), "test.properties"));
after.load(propsFile);
} finally {
if (propsFile != null) {
@@ -79,7 +75,7 @@ public class ReplaceRegExpTest extends BuildFileTest {
// inspired by bug 22541
public void testDirectoryDateDoesNotChange() {
executeTarget("touchDirectory");
File myFile = new File(System.getProperty("root"), PROJECT_PATH + "/" + getProject().getProperty("tmpregexp"));
File myFile = getOutputDir();
long timeStampBefore = myFile.lastModified();
executeTarget("testDirectoryDateDoesNotChange");
long timeStampAfter = myFile.lastModified();
@@ -90,34 +86,32 @@ public class ReplaceRegExpTest extends BuildFileTest {
executeTarget("testDontAddNewline1");
assertTrue("Files match",
FILE_UTILS
.contentEquals(new File(System.getProperty("root"), PROJECT_PATH + "/test.properties"),
new File(System.getProperty("root"), PROJECT_PATH + "/replaceregexp2.result.properties")));
.contentEquals(new File(getOutputDir(), "test.properties"),
new File(getProjectDir(), "replaceregexp2.result.properties")));
}

public void testDontAddNewline2() throws IOException {
executeTarget("testDontAddNewline2");
assertTrue("Files match",
FILE_UTILS
.contentEquals(new File(System.getProperty("root"), PROJECT_PATH + "/test.properties"),
new File(System.getProperty("root"), PROJECT_PATH + "/replaceregexp2.result.properties")));
.contentEquals(new File(getOutputDir(), "test.properties"),
new File(getProjectDir(), "replaceregexp2.result.properties")));
}

public void testNoPreserveLastModified() throws Exception {
executeTarget("lastModifiedSetup");
String tmpdir = project.getProperty("tmpregexp");
long ts1 = new File(tmpdir, "test.txt").lastModified();
long ts1 = new File(getOutputDir(), "test.txt").lastModified();
Thread.sleep(3000);
executeTarget("testNoPreserve");
assertTrue(ts1 < new File(tmpdir, "test.txt").lastModified());
assertTrue(ts1 < new File(getOutputDir(), "test.txt").lastModified());
}

public void testPreserveLastModified() throws Exception {
executeTarget("lastModifiedSetup");
String tmpdir = project.getProperty("tmpregexp");
long ts1 = new File(tmpdir, "test.txt").lastModified();
long ts1 = new File(getOutputDir(), "test.txt").lastModified();
Thread.sleep(3000);
executeTarget("testPreserve");
assertTrue(ts1 == new File(tmpdir, "test.txt").lastModified());
assertTrue(ts1 == new File(getOutputDir(), "test.txt").lastModified());
}

}// ReplaceRegExpTest

+ 0
- 18
src/tests/junit/org/apache/tools/ant/taskdefs/optional/XsltTest.java View File

@@ -50,14 +50,6 @@ public class XsltTest extends BuildFileTest {
}


/**
* The teardown method for JUnit
*/
public void tearDown() {
executeTarget("teardown");
}



/**
* A unit test for JUnit
@@ -79,16 +71,6 @@ public class XsltTest extends BuildFileTest {
executeTarget("testOutputProperty");
}

/* Only runs if xalan.jar is in CP (not incl. Sun's JRE repackaging):
public void testFactory() throws Exception {
executeTarget("testFactory");
}

public void testAttribute() throws Exception {
executeTarget("testAttribute");
}
*/

public void testXMLWithEntitiesInNonAsciiPath() throws Exception {
executeTarget("testXMLWithEntitiesInNonAsciiPath");
}


Loading…
Cancel
Save