<project name="testng" default="dev" basedir=".">
  
  <!-- ====================================================================== -->
  <!-- TestNG build file                                                      -->
  <!-- Created cbeust, April 26th, 2004                                       -->
  <!-- ====================================================================== -->

  <property file="build.properties" />
  <property name="optimize" value="false" />
  <property name="build.compiler" value="javac1.5" />

  <!-- ====================================================================== -->
  <!-- PREPARE                                                                -->
  <!-- ====================================================================== -->
  <target name="prepare"
          description="Performs all preparations required to build.">
    <tstamp />
    <mkdir dir="${build.jdk14.dir}" />
    <mkdir dir="${build.jdk15.dir}" />
  </target>

  <!-- ====================================================================== -->
  <!-- DUMP                                                                   -->
  <!-- ====================================================================== -->
  <target name="dump" description="Dumps all properties." depends="prepare">
    <echoproperties />
  </target>

  <!-- ====================================================================== -->
  <!-- VALIDATE                                                               -->
  <!-- ====================================================================== -->

  <target name="validate" description="Validates the build environment.">
    <!-- java greater than 1.5 required to build -->
    <condition property="requiredJavaVersion">
    	<or>
   			<equals arg1="${ant.java.version}" arg2="1.5" />
    		<equals arg1="${ant.java.version}" arg2="1.6" />
    	</or>
    </condition>
    <fail unless="requiredJavaVersion"
          message="Java version 1.5 required." />
    <!-- validate ant version too ... -->
  </target>

  <!-- ==================================================================== -->
  <!-- COPY-RESOURCES                                                       -->
  <!-- ==================================================================== -->

  <target name="copy-resources" description="Copies resources.">
    <copy verbose="false"
          file="src/main/testng-1.0.dtd"
          todir="${build.jdk15.dir}" />
    <copy verbose="false"
          file="src/main/testng-1.0.dtd"
          todir="${build.jdk14.dir}" />
    <copy verbose="false"
          file="src/testngtasks"
          todir="${build.jdk15.dir}" />
    <copy verbose="false"
          file="src/testngtasks"
          todir="${build.jdk14.dir}" />
    <copy todir="${build.jdk15.dir}">
      <fileset dir="./resources">
        <exclude name="**/.*" />
        <exclude name="**/CVS/*" />
      </fileset>
    </copy>
    <copy todir="${build.jdk14.dir}">
      <fileset dir="./resources">
        <exclude name="**/.*" />
        <exclude name="**/CVS/*" />
      </fileset>
    </copy>
  </target>


  <target name="dev"
          depends="prepare,validate,copy-resources,build,dist-jar,test-15,test-15-jdk14,test-14,test-ant" />

  <target name="all"
          depends="prepare,validate,copy-resources,build,dist-jar,test-15,test-15-jdk14,test-14,test-ant,javadocs,dist" />

  <target name="build" depends="compile-14,compile-15,dist-jar" />

  <target name="single">
    <ant antfile="test/build.xml" target="run:single"/>
  </target>

  <target name="single-14">
    <ant antfile="test-14/build.xml" target="run:single"/>
  </target>

  <!-- ==================================================================== -->
  <!-- Compile                                                              -->
  <!-- ==================================================================== -->

  <target name="compile-14"
          depends="prepare,copy-resources"
          description="Compiles source for 1.4">
    <echo message="                                 -- Compiling 1.4 sources --" />
    <path id="compile.cp">
      <fileset dir="${lib.dir}">
        <include name="${beanshell.jar}" />
        <include name="junit.jar" />
        <include name="${qdox.jar}" />
      	<include name="${concurrent.jar}" />
      </fileset>
    </path>

    <javac classpathref="compile.cp"
           target="jsr14"
           debug="true"
           optimize="${optimize}"
           destdir="${build.jdk14.dir}">
      <src path="${src.dir}/main" />
      <src path="${src.dir}/jdk14" />
    </javac>

  </target>

  <target name="compile-15"
          depends="prepare,copy-resources"
          description="Compiles source for 15">
    <echo message="                                 -- Compiling 1.5 sources --" />

    <path id="compile2.cp">
      <fileset dir="${lib.dir}">
        <include name="junit.jar" />
        <include name="${qdox.jar}" />
        <include name="${beanshell.jar}" />
      </fileset>
    </path>
  	<echo message="${compile2.cp}" />

    <javac classpathref="compile2.cp"
           verbose="false"
           target="1.5"
           debug="true"
           optimize="${optimize}"
           destdir="${build.jdk15.dir}">
      <src path="${src.dir}/main" />
      <src path="${src.dir}/jdk15" />
    </javac>
  </target>

  <target name="compile:all" depends="compile-14,compile-15" />

  <target name="examples">
    <ant inheritall="no" antfile="examples/build.xml" />
  </target>

  <target name="test-15" depends="compile-15" description="runs all JDK5 tests with JDK5 distro">
  	<ant inheritall="no" antfile="test/build.xml" />
  	<ant inheritall="no" antfile="test/v4/build.xml" />
  </target>
	
  <target name="test-15-jdk14" depends="compile-15,compile-14" description="runs javadoc-tests with JDK5 distro">
		<ant inheritall="no" antfile="test-14/build.xml" target="compile" />
		<ant inheritall="no" antfile="test/build.xml" target="run-jdk14" />
		<ant inheritall="no" antfile="test-14/v4/build.xml" target="compile" />
    <ant inheritall="no" antfile="test/v4/build.xml" target="run-jdk14" />
  </target>
	
  <target name="test-14" depends="compile-14" description="runs javadoc-based tests with JDK1.4 distro">
    <ant inheritall="no" antfile="test-14/build.xml" />
    <ant inheritall="no" antfile="test-14/v4/build.xml" />
  </target>

	<!--
  <target name="tmp">
    <ant inheritall="no" antfile="test/v4/build.xml" target="run-jdk14" />
  </target>
  -->

  <target name="test-ant">
    <echo message="                                 -- Testing ant testng task functionality --" />
  	<ant inheritall="no" antfile="test/ant/build.xml" />
  </target>

  <!-- ==================================================================== -->
  <!-- Documentation                                                        -->
  <!-- ==================================================================== -->

  <target name="javadocs">
    <javadoc destdir="javadocs" source="1.5" windowtitle="TestNG">
      <fileset dir="${src.dir}/main" defaultexcludes="yes">
        <include name="org/testng/*.java" />
      </fileset>
      <fileset dir="${src.dir}/main" defaultexcludes="yes">
        <include name="org/testng/xml/Xml*.java" />
      </fileset>
      <fileset dir="${src.dir}/jdk15" defaultexcludes="yes">
        <include name="org/testng/annotations/**" />
      </fileset>
    </javadoc>
  </target>

  <!-- ==================================================================== -->
  <!-- Distribution                                                         -->
  <!-- ==================================================================== -->

  <target name="dist" depends="maven-plugin,dist-all-zip,eclipse" />

  <target name="dist-jar" depends="dist-14,dist-15" />

  <target name="dist-14" depends="compile-14,dist-14-bsh" >
   </target>

  <target name="dist-14-bsh">
    <antcall target="clean-unjar" />
    <antcall target="extract-qdox-jar" />
    <antcall target="extract-beanshell-jar" />
    <antcall target="extract-concurrent-jar" />
    <delete quiet="true" file="${jdk14.testng.jar}" />
    <jar destfile="${jdk14.testng.jar}" update="true">
      <manifest>
        <attribute name="Main-Class" value="org.testng.TestNG" />
      	<attribute name="Implementation-Version" value="${testng.version}-${DSTAMP}${TSTAMP}" />
      </manifest>
      <fileset dir="${build.3rdparty.dir}" />
      <fileset dir="${build.jdk14.dir}" />
    </jar>
  </target>
  
  <target name="dist-14-nobsh">
    <antcall target="clean-unjar" />
    <antcall target="extract-concurrent-jar" />
    <jar destfile="${other.jars.dir}/${jdk14.testng.nobsh.jar}" update="true">
      <manifest>
        <attribute name="Main-Class" value="org.testng.TestNG" />
      	<attribute name="Implementation-Version" value="${testng.version}-${DSTAMP}${TSTAMP}" />
      </manifest>
      <fileset dir="${build.3rdparty.dir}" />
      <fileset dir="${build.jdk14.dir}" />
    </jar>
  </target>

  <target name="clean-unjar">
    <delete quiet="true" dir="${build.3rdparty.dir}" includeemptydirs="true" />
    <mkdir dir="${build.3rdparty.dir}" />
  </target>

  <target name="extract-beanshell-jar">
    <unjar src="3rdparty/${beanshell.jar}"
           dest="${build.3rdparty.dir}"
           overwrite="true" />
  </target>

  <target name="extract-qdox-jar">
    <unjar src="3rdparty/${qdox.jar}"
           dest="${build.3rdparty.dir}"
           overwrite="true" />
  </target>

  <target name="extract-concurrent-jar">
    <unjar src="3rdparty/${concurrent.jar}"
           dest="${build.3rdparty.dir}"
           overwrite="true" />
  </target>

  <target name="dist-15" depends="compile-15, dist-15-bsh">
  </target>
    
  <target name="dist-15-bsh">
    <antcall target="clean-unjar" />
    <antcall target="extract-qdox-jar" />
    <antcall target="extract-beanshell-jar" />
    <delete file="${jdk15.testng.jar}" />
    <jar destfile="${jdk15.testng.jar}">
      <manifest>
        <attribute name="Main-Class" value="org.testng.TestNG" />
      	<attribute name="Implementation-Version" value="${testng.version}-${DSTAMP}${TSTAMP}" />
      </manifest>
      <fileset dir="${build.jdk15.dir}" />
      <fileset dir="${build.3rdparty.dir}" />
    </jar>
  </target>
  
  <target name="dist-15-nobsh">
    <antcall target="clean-unjar" />
    <antcall target="extract-qdox-jar" />
    <jar destfile="${other.jars.dir}/${jdk15.testng.nobsh.jar}" update="true">
      <manifest>
        <attribute name="Main-Class" value="org.testng.TestNG" />
      	<attribute name="Implementation-Version" value="${testng.version}-${DSTAMP}${TSTAMP}" />
      </manifest>
      <fileset dir="${build.jdk15.dir}" />
      <fileset dir="${build.3rdparty.dir}" />
    </jar>
  </target>

  <target name="dist-all-zip" depends="dist-prepare,dist-jar,javadocs">
    <zip zipfile="${testng.zip}">
      <zipfileset dir="${basedir}" includesfile="FILES" />
      <zipfileset dir="${basedir}">
        <include name="${jdk14.testng.jar}" />
        <include name="${jdk15.testng.jar}" />
      </zipfileset>
      <zipfileset dir="${other.jars.dir}" prefix="${other.jars.dir}"/>
      <zipfileset dir="javadocs" prefix="javadocs" />
      <zipfileset dir="src" prefix="src" />
      <zipfileset dir="doc" prefix="doc" />
    	<zipfileset dir="resources"
    							prefix="resources" 
    							includes="**/*.css"/>
      <zipfileset dir="test"
                  prefix="test"
                  includes="**/*.properties,**/*.java,build.xml,testng.xml"
                  excludes="test-output/**,report/**,v4/**" />
      <zipfileset dir="test-14"
                  prefix="test-14"
                  includes="**/*.properties,**/*.java,build.xml,testng.xml"
                  excludes="test-output/**,report/**,v4/**" />
      <zipfileset dir="3rdparty"
                  prefix="3rdparty"
                  includes="${qdox.jar},${beanshell.jar},${concurrent.jar}" />
    </zip>
  </target>
  
  <target name="dist-prepare">
    <delete quiet="true" file="${other.jars.dir}/${jdk14.testng.nobsh.jar}" />
    <mkdir dir="${other.jars.dir}" />
    <delete file="{other.jars.dir}/${jdk15.testng.nobsh.jar}" />
    <mkdir dir="${other.jars.dir}" />
  </target>

  <target name="eclipse" description="Used by Cedric to build distributions">
    <property name="jdk14.jar"
              value="${testng-eclipse.dir}/lib/testng-jdk14.jar" />
    <property name="jdk15.jar"
              value="${testng-eclipse.dir}/lib/testng-jdk15.jar" />

    <delete file="${jdk14.jar}" />
    <delete file="${jdk15.jar}" />
    <copy file="${jdk14.testng.jar}" tofile="${jdk14.jar}" />
    <copy file="${jdk15.testng.jar}" tofile="${jdk15.jar}" />
  </target>

  <target name="ftp">
    <!--
          <ftp action="put"
             server="beust.com"
             remotedir="w/testng/test-output"
             userid="cedric"
             password="${password}">
              <fileset dir="c:\weblogic\dev\sandbox\cbeust\testng\test\test-output">
                <include name="index.html" />
                <include name="main.html" />
                <include name="toc.html" />
                <include name="*egression*" />
             </fileset>
        </ftp>
      -->
    <ftp action="put"
         server="beust.com"
         remotedir="w/testng"
         userid="cedric"
         password="${password}">
      <fileset dir="${root.dir}">
        <include name="${testng.zip}" />
        <include name="javadocs/**" />
        <include name="testng-1.0.dtd" />
      </fileset>
      <fileset dir="${root.dir}/doc">
        <include name="*.html" />
      </fileset>
    </ftp>

  </target>

  <target name="ftp2">
    <ftp action="put"
         server="beust.com"
         remotedir="w/testng"
         userid="cedric"
         password="${password}">
      <fileset dir="${root.dir}/test">
        <include name="test-output/*" />
      </fileset>
      <fileset dir="${root.dir}/test">
        <include name="test-report/*" />
      </fileset>
    </ftp>
  </target>

  <target name="clean">
    <delete failonerror="false">
      <fileset dir="${build.jdk14.dir}" includes="**/*" />
      <fileset dir="${build.jdk15.dir}" includes="**/*" />
      <fileset dir="." includes="*.jar,*.zip" />
    </delete>
    <ant antfile="test/build.xml" target="clean" />
    <ant antfile="test/v4/build.xml" target="clean" />
    <ant antfile="test-14/build.xml" target="clean" />
    <ant antfile="test-14/v4/build.xml" target="clean" />
    <ant dir="examples" target="clean" />
  </target>

  <!-- ==================================================================== -->
  <!-- Maven1/2 Distribution                                                -->
  <!-- ==================================================================== -->

  <target name="maven-plugin">
    <jar destfile="maven-testng-plugin-${testng-maven.version}.jar"
         basedir="./maven/" />
  </target>
  
</project>
