git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@1585377 13f79535-47bb-0310-9956-ffa450edef68master
@@ -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> | |||
@@ -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> | |||
@@ -16,14 +16,17 @@ | |||
limitations under the License. | |||
--> | |||
<project name="xslt" default="xslt" basedir="."> | |||
<property name="nonasciidir" value="xml/ã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}/ã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> | |||
@@ -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); | |||
} | |||
@@ -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 |
@@ -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"); | |||
} | |||