<?xml version="1.0"?>

<project
	name="testsuite"
	default="run"
	basedir=".">
	<!-- The property ${eclipse-home} should be passed into this script -->
	<!-- Set a meaningful default value for when it is not. -->
	<!-- <property name="eclipse-home" value="${basedir}\..\.." /> -->

	<!-- sets the properties plugin-name, and library-file -->
	<property
		name="plugin-name"
		value="org.eclipse.jst.jsp.core.tests" />
	<property
		name="library-file"
		value="${eclipse-home}/plugins/org.eclipse.test_3.1.0/library.xml" />

	<echo message="basedir ${basedir}" />
	<echo message="eclipse place ${eclipse-home}" />

	<!-- This target holds all initialization code that needs to be done for -->
	<!-- all tests that are to be run. Initialization for individual tests -->
	<!-- should be done within the body of the suite target. -->
	<target name="init">
		<tstamp />
		<delete>
			<fileset
				dir="${eclipse-home}"
				includes="org.eclipse.jst.jsp.core.tests.*xml" />
		</delete>
	</target>

	<!-- This target defines the tests that need to be run. -->
	<target name="suite">
		<property
			name="wst-folder"
			value="${eclipse-home}/wst_folder" />
		<delete
			dir="${wst-folder}"
			quiet="true" />
		<ant
			target="core-test"
			antfile="${library-file}"
			dir="${eclipse-home}">
			<property
				name="data-dir"
				value="${wst-folder}" />
			<property
				name="plugin-name"
				value="${plugin-name}" />
			<property
				name="classname"
				value="org.eclipse.jst.jsp.core.tests.JSPCoreTestSuite" />
			<property
				name="plugin-path"
				value="${eclipse-home}/plugins/${plugin-name}" />
			<property
				name="workspace"
				value="${eclipse-home}/junitworkspace-${plugin-name}" />
		</ant>
	</target>

	<!-- This target holds code to cleanup the testing environment after -->
	<!-- after all of the tests have been run. You can use this target to -->
	<!-- delete temporary files that have been created. -->
	<target name="cleanup">
		<!-- <delete dir="${workspace}" quiet="true" /> -->
	</target>

	<!-- This target runs the test suite. Any actions that need to happen -->
	<!-- after all the tests have been run should go here. -->
	<target
		name="run"
		depends="init,suite,cleanup">
		<ant
			target="collect"
			antfile="${library-file}"
			dir="${eclipse-home}">
			<property
				name="includes"
				value="org.eclipse.jst.jsp.core.tests.*xml" />
			<property
				name="output-file"
				value="${plugin-name}.xml" />
		</ant>
	</target>

</project>