<project name="user" default="build" basedir=".">
	<property name="gwt.root" location=".." />
	<property name="project.tail" value="user" />
	<property name="test.args" value="" />
	<import file="${gwt.root}/common.ant.xml" />

	<!--
		Default hosted mode test cases
	-->
	<fileset id="default.hosted.tests" dir="${javac.junit.out}" 
			 includes="${gwt.junit.testcase.includes}" />

	<!--
		Default web mode test cases
	-->
	<fileset id="default.web.tests" dir="${javac.junit.out}"
 		 	 includes="${gwt.junit.testcase.includes}" />

	<!-- Platform shouldn't matter here, just picking one -->
	<property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-linux.jar" />

	<target name="compile" description="Compile all class files">
		<mkdir dir="${javac.out}" />
		<gwt.javac>
			<classpath>
				<pathelement location="${gwt.tools.lib}/tomcat/servlet-api-2.4.jar" />
				<pathelement location="${gwt.tools.lib}/junit/junit-3.8.1.jar" />
				<pathelement location="${gwt.tools.lib}/jfreechart/jfreechart-1.0.3.jar" />
				<pathelement location="${gwt.dev.jar}" />
			</classpath>
		</gwt.javac>

		<!-- Build the BrowserManagerServer_Stub to allow remote browser testing -->
		<rmic base="${javac.out}"
                  classname="com.google.gwt.junit.remote.BrowserManagerServer"
                  stubversion="1.2"/>
	</target>

	<target name="compile.tests" description="Compiles the test code for this project">
		<mkdir dir="${javac.junit.out}" />
		<gwt.javac srcdir="test" excludes="com/google/gwt/langtest/**" destdir="${javac.junit.out}">
			<classpath>
				<pathelement location="${javac.out}" />
				<pathelement location="${gwt.tools.lib}/junit/junit-3.8.1.jar" />
				<pathelement location="${gwt.dev.staging.jar}" />
			</classpath>
		</gwt.javac>
	</target>

	<target name="build" depends="compile" description="Build and package this project">
		<mkdir dir="${gwt.build.lib}" />
		<gwt.jar>
			<fileset dir="src" excludes="**/package.html" />
			<fileset dir="super" excludes="**/package.html" />
			<fileset dir="${javac.out}" />
			<zipfileset src="${gwt.tools.lib}/tomcat/servlet-api-2.4.jar" />
		</gwt.jar>
	</target>

	<target name="checkstyle" description="Static analysis of source">
		<gwt.checkstyle>
			<fileset dir="src" />
			<fileset dir="super/com/google/gwt/emul" />
			<fileset dir="super/com/google/gwt/junit/translatable" />
		</gwt.checkstyle>
	</target>

	<target name="remoteweb-test" description="Run a remoteweb test at the given host and path" if="gwt.remote.browsers">
		<echo message="Performing remote browser testing at ${gwt.remote.browsers}" />
		<gwt.junit test.args="${test.args} -out www -web -remoteweb ${gwt.remote.browsers}" test.out="${junit.out}/remoteweb" test.cases="default.web.tests" />
	</target>

	<target name="test.hosted" depends="compile, compile.tests" description="Run only hosted-mode tests for this project.">
		<gwt.junit test.args="${test.args}" test.out="${junit.out}/${build.host.platform}-hosted-mode" test.cases="default.hosted.tests" />
	</target>

	<target name="test.web" depends="compile, compile.tests" description="Run only web-mode tests for this project.">
		<gwt.junit test.args="${test.args} -out www -web" test.out="${junit.out}/${build.host.platform}-web-mode" test.cases="default.web.tests" />
	</target>

	<target name="test" depends="compile, compile.tests" description="Run hosted-mode, web-mode and remoteweb tests for this project.">
		<property.ensure name="distro.built" location="${gwt.dev.staging.jar}" message="GWT must be built before performing any tests.  This can be fixed by running ant in the ${gwt.root} directory." />

		<!--
			Run hosted and web mode tests for the platform on which this build
			is executing
		-->
		<limit failonerror="true" hours="2">
		<parallel threadsPerProcessor="1">
			<!-- remoteweb-test is a no-op unless gwt.remote.browsers is defined -->
			<antcall target="remoteweb-test"/>
			<antcall target="test.hosted"/>
			<antcall target="test.web"/>
		</parallel>
		</limit>
	</target>

	<target name="clean" description="Cleans this project's intermediate and output files">
		<delete dir="${project.build}" />
		<delete file="${project.lib}" />
	</target>

</project>
