blob: e2e44b11d0b4b00c21afd59d7fe2b0dbaa3c2e04 [file] [log] [blame]
<?xml version="1.0"?>
<!-- $Id$ -->
<project name="Tapestry Framework JUnit Test Suite" default="run">
<property name="root.dir" value="../"/>
<property file="${root.dir}/config/Version.properties"/>
<property file="${root.dir}/config/build.properties"/>
<property file="${root.dir}/config/common.properties"/>
<property name="framework.src.dir" value="${root.dir}/framework/src"/>
<property name="clover-classes.dir" value=".clover-classes"/>
<property name="clover-db.dir" value=".clover-db"/>
<property name="clover.initstring" location="${clover-db.dir}/clover_db"/>
<property name="clover.report.dir" value="../web/doc/clover"/>
<property name="local.lib.dir" value="lib"/>
<property name="jdom.jar" value="jdom-b8.jar"/>
<path id="compile-tests.class.path">
<pathelement location="${framework.jar}"/>
<path refid="base.class.path"/>
</path>
<path id="base.class.path">
<pathelement location="${lib.ext.dir}/ejb.jar"/>
<pathelement location="${lib.ext.dir}/javax.servlet.jar"/>
<pathelement location="${lib.ext.dir}/${commons-logging.jar}"/>
<pathelement location="${lib.ext.dir}/${commons-lang.jar}"/>
<pathelement location="${lib.ext.dir}/javax.xml.jaxp.jar"/>
<pathelement location="${lib.ext.dir}/org.apache.crimson.jar"/>
<pathelement location="${lib.ext.dir}/junit.jar"/>
<pathelement location="${lib.ext.dir}/${jakarta-oro.jar}"/>
<pathelement location="${lib.ext.dir}/${ognl.jar}"/>
<pathelement location="${local.lib.dir}/${jdom.jar}"/>
</path>
<target name="init">
<mkdir dir="${classes.dir}"/>
</target>
<target name="clean">
<delete dir="${classes.dir}" quiet="true"/>
<delete dir="${clover-classes.dir}" quiet="true"/>
<delete dir="${clover-db.dir}" quiet="true"/>
</target>
<target name="compile" depends="init" description="Compile all test classes.">
<javac srcdir="${src.dir}" destdir="${classes.dir}" debug="on" target="1.1">
<classpath refid="compile-tests.class.path"/>
</javac>
</target>
<path id="junit.class.path">
<path location="${classes.dir}"/>
<!-- Add the src directory back in, since package resources needed by
the tests are there. Also, ensure that the local copy
of junit/running/excluded.properties overrides the default
copy in junit.jar -->
<path location="${src.dir}"/>
<path refid="compile-tests.class.path"/>
<path location="${lib.ext.dir}/${log4j.jar}"/>
</path>
<target name="run" depends="compile" description="Run the test suite.">
<java fork="true" classname="junit.textui.TestRunner"
failonerror="true">
<classpath refid="junit.class.path"/>
<arg value="net.sf.tapestry.junit.TapestrySuite"/>
</java>
</target>
<target name="gui" depends="compile" description="Run the JUnit GUI.">
<java fork="true" classname="junit.swingui.TestRunner">
<classpath refid="junit.class.path"/>
<arg value="net.sf.tapestry.junit.TapestrySuite"/>
</java>
</target>
<path id="clover.class.path">
<pathelement location="${clover-classes.dir}"/>
<pathelement location="${clover.dir}/lib/clover.jar"/>
<path refid="junit.class.path"/>
</path>
<target name="clover" depends="compile" description="Run tests and construct Clover report.">
<mkdir dir="${clover-classes.dir}"/>
<mkdir dir="${clover-db.dir}"/>
<property name="build.compiler"
value="org.apache.tools.ant.taskdefs.CloverCompilerAdapter"/>
<javac srcdir="${framework.src.dir}" destdir="${clover-classes.dir}" debug="on" target="1.1">
<classpath refid="base.class.path"/>
</javac>
<echo>Clover Run #1: No logging enabled ...</echo>
<java fork="true" classname="junit.textui.TestRunner"
failonerror="true">
<classpath refid="clover.class.path"/>
<arg value="net.sf.tapestry.junit.TapestrySuite"/>
</java>
<echo>Clover Run #2: All logging enabled ...</echo>
<java fork="true" classname="junit.textui.TestRunner"
failonerror="true">
<classpath refid="clover.class.path"/>
<arg value="net.sf.tapestry.junit.TapestrySuite"/>
<sysproperty key="log4j.configuration" value="log4j-slow.properties"/>
</java>
<antcall target="clover-report"/>
</target>
<target name="clover-report">
<mkdir dir="${clover.report.dir}"/>
<java
classname="com.cortexeb.tools.clover.reporters.html.HtmlReporter"
fork="true">
<classpath>
<pathelement location="${clover.dir}/lib/clover.jar"/>
<pathelement location="${clover.dir}/lib/velocity.jar"/>
</classpath>
<arg line="--outputdir ${clover.report.dir}"/>
<arg line="--showSrc"/>
<arg line="--initstring ${clover.initstring}"/>
<arg line="--title 'Release ${framework.version}'"/>
</java>
</target>
</project>