<?xml version="1.0"?>
<!--DOCTYPE project PUBLIC "-//ANT//DTD project//EN" "/usr/src/ant/project.dtd"-->

<project name="assert" default="compile" basedir=".">

  <property file="${user.home}/.ant.properties" />

  <property name="app.name"   value="JonsAssert" />
  <property name="instrument.dir"  value="instrumented" />
  
  <target name="init">
    <tstamp />
    <available property="junit.present" classname="junit.framework.TestCase" />
    <available property="assert.present" classname="net.mtu.eggplant.assert.JonsAssert" />
  </target>

  <path id="base.classpath">
    <pathelement location="${basedir}"/>
    <pathelement location="${basedir}/lib/JonsInfra-0.4.jar"/>
    <pathelement location="${basedir}/lib/antlr.jar"/>
    <pathelement location="${basedir}/lib/commons-cli-1.0.jar"/>
    <pathelement location="${basedir}/lib/junit-3.8.jar"/>
    <pathelement location="${basedir}/lib/log4j-1.2.8.jar"/>
  </path>
  
  <target name="compile" depends="init,instrument">
    <javac srcdir="${instrument.dir}" destdir="${basedir}" >
      <classpath>
        <path refid="base.classpath"/>
      </classpath>
      <include name="net/**/*.java"/>
      <exclude name="net/mtu/eggplant/assert/testcases/**"/>
    </javac>
  </target>

  <target name="jar" depends="compile">
    <jar jarfile="${app.name}.jar"
	 basedir="${basedir}/src" includes="**" />
  </target>

  <target name="runtests" depends="compile" if="junit.present">
    <java fork="yes" classname="junit.textui.TestRunner" 
	  taskname="junit" failonerror="true">
      <arg value="net.mtu.eggplant.assert.test.AllTests"/>
      <classpath>
        <path refid="base.classpath"/>
      </classpath>
    </java>
  </target>

  <target name="instrument" depends="init" if="assert.present">
    <java fork="no" classname="net.mtu.eggplant.dbcassert.JonsAssert"
	  taskname="DBC" failonerror="true">
      <arg value="-d ${basedir}/${instrument.dir}" />
      <arg value="${basedir}/src/net" />
    </java>
  </target>
  
</project>

