<project name="helloworld-webapp" default="test" basedir=".">
    <description>
        jersey helloworld-webapp
    </description>

    <property name="test-src" value="src/test/java"/>
    <property name="src" value="src/main/java"/>
    <property name="test-build" value="target/test-build"/>
    <property name="test-lib" value="target/test-lib"/>
    <property name="test-report" value="target/test-report"/>

    <target name="test-download-libs">
        <mkdir dir="${test-lib}"/>
        
        <get src="http://repo1.maven.org/maven2/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/javax/ws/rs/jsr311-api/1.1.1/jsr311-api-1.1.1.jar" dest="${test-lib}" />
        <get src="http://repo1.maven.org/maven2/asm/asm/3.1/asm-3.1.jar" dest="${test-lib}" />
        <get src="http://repo1.maven.org/maven2/javax/activation/activation/1.1/activation-1.1.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/grizzly/grizzly-framework/1.9.18-i/grizzly-framework-1.9.18-i.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/grizzly/grizzly-utils/1.9.18-i/grizzly-utils-1.9.18-i.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/grizzly/grizzly-rcm/1.9.18-i/grizzly-rcm-1.9.18-i.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/grizzly/grizzly-portunif/1.9.18-i/grizzly-portunif-1.9.18-i.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/grizzly/grizzly-servlet-webserver/1.9.18-i/grizzly-servlet-webserver-1.9.18-i.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/grizzly/grizzly-http/1.9.18-i/grizzly-http-1.9.18-i.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/grizzly/grizzly-http-servlet/1.9.18-i/grizzly-http-servlet-1.9.18-i.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/jersey/jersey-core/1.5-SNAPSHOT/jersey-core-1.5-SNAPSHOT.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/jersey/jersey-server/1.5-SNAPSHOT/jersey-server-1.5-SNAPSHOT.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/jersey/jersey-client/1.5-SNAPSHOT/jersey-client-1.5-SNAPSHOT.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/jersey/jersey-test-framework/jersey-test-framework-core/1.5-SNAPSHOT/jersey-test-framework-core-1.5-SNAPSHOT.jar" dest="${test-lib}" />
        <get src="http://download.java.net/maven/2/com/sun/jersey/jersey-test-framework/jersey-test-framework-grizzly/1.5-SNAPSHOT/jersey-test-framework-grizzly-1.5-SNAPSHOT.jar" dest="${test-lib}" />

        <get src="http://repo1.maven.org/maven2/junit/junit/4.5/junit-4.5.jar" dest="${test-lib}" />
    </target>

    <target name="test-compile" depends="test-download-libs">
        <mkdir dir="${test-build}"/>
        <javac srcdir="${src}" destdir="${test-build}">
            <classpath>
                <fileset dir="${test-lib}">
                  <include name="**/*.jar"/>
                </fileset>
            </classpath>
        </javac>
        <javac srcdir="${test-src}" destdir="${test-build}">
            <classpath>
                <fileset dir="${test-lib}">
                  <include name="**/*.jar"/>
                </fileset>
            </classpath>
        </javac>
    </target>

    <target name="test" depends="test-compile">
        <mkdir dir="${test-report}"/>
        <junit printsummary="yes" haltonfailure="yes">
            <classpath>
                <fileset dir="${test-lib}">
                  <include name="**/*.jar"/>
                </fileset>
                <dirset dir=".">
                    <include name="${test-build}" />
                </dirset>
            </classpath>

            <formatter type="plain"/>

            <!--<test name="com.sun.jersey.samples.helloworld.HelloWorldWebAppTest"/>-->

            <batchtest fork="yes" todir="${test-report}">
                <fileset dir="${test-src}">
                    <include name="**/*Test*.java"/>
                </fileset>
            </batchtest>
        </junit>
    </target>

    <target name="clean">
        <delete includeemptydirs="true">
          <fileset dir=".">
              <include name="${test-build}" />
              <include name="${test-report}" />
              <include name="${test-lib}" />
          </fileset>
        </delete>
    </target>

</project>

