blob: 240dfa581c3749e194a9973a04bb26f19c0e2bca [file] [log] [blame]
<project default="antunit" xmlns:au="antlib:org.apache.ant.antunit">
<import file="../antunit-base.xml" />
<property name="ant-build" location="../../../../build"/>
<property name="javac-dir" location="${ant-build}/ant-unit/javac-dir"/>
<property name="build-dir" location="${javac-dir}/build"/>
<target name="test-includeDestClasses">
<property name="DATE" value="09/10/1999 4:30 pm"/>
<delete dir="${javac-dir}/src"/>
<mkdir dir="${javac-dir}/src"/>
<echo file="${javac-dir}/src/A.java">
public class A { B b;}
</echo>
<echo file="${javac-dir}/src/B.java">
public class B { }
</echo>
<delete dir="${javac-dir}/classes" quiet="yes"/>
<mkdir dir="${javac-dir}/classes"/>
<javac srcdir="${javac-dir}/src" destdir="${javac-dir}/classes"/>
<touch file="${javac-dir}/src/B.java" datetime="${DATE}"/>
<touch file="${javac-dir}/classes/B.class" datetime="${DATE}"/>
<!-- following should not update B.class -->
<delete quiet="yes" file="${javac-dir}/classes/A.class"/>
<javac srcdir="${javac-dir}/src" destdir="${javac-dir}/classes"/>
<au:assertTrue>
<isfileselected file="${javac-dir}/classes/B.class">
<date datetime="${DATE}" when="equal"/>
</isfileselected>
</au:assertTrue>
<!-- following should update B.class -->
<delete quiet="yes" file="${javac-dir}/classes/A.class"/>
<javac srcdir="${javac-dir}/src"
destdir="${javac-dir}/classes" includeDestClasses="no"/>
<au:assertFalse>
<isfileselected file="${javac-dir}/classes/B.class">
<date datetime="${DATE}" when="equal"/>
</isfileselected>
</au:assertFalse>
</target>
<target name="test-updated-property">
<delete quiet="yes" dir="${build-dir}"/>
<mkdir dir="${build-dir}"/>
<javac srcdir="javac-dir/good-src" destdir="${build-dir}"
updatedProperty="classes-updated"/>
<au:assertTrue>
<equals arg1="${classes-updated}" arg2="true"/>
</au:assertTrue>
<javac srcdir="javac-dir/good-src" destdir="${build-dir}"
updatedProperty="classes-updated-2"/>
<au:assertFalse>
<isset property="classes-updated-2"/>
</au:assertFalse>
</target>
<target name="test-error-property">
<delete quiet="yes" dir="${build-dir}"/>
<mkdir dir="${build-dir}"/>
<javac srcdir="javac-dir/good-src" destdir="${build-dir}"
failOnError="false"
errorProperty="compile-failed"/>
<au:assertTrue>
<equals arg1="${compile-failed}" arg2="${compile-failed}"/>
</au:assertTrue>
<javac srcdir="javac-dir/bad-src" destdir="${build-dir}"
failOnError="false"
errorProperty="compile-failed"/>
<au:assertTrue>
<equals arg1="${compile-failed}" arg2="true"/>
</au:assertTrue>
</target>
</project>