<?xml version="1.0" encoding="UTF-8"?>

<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 eclipse-home, and library-file -->
  <property name="plugin-name" value="org.eclipse.core.expressions.tests"/>
  <property name="library-file"
            value="${eclipse-home}/plugins/org.eclipse.test/library.xml"/>

  <!-- 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*.xml"/>
    </delete>
  </target>

  <!-- This target defines the tests that need to be run. -->
  <target name="suite">
    <property name="expressions-folder" 
              value="${eclipse-home}/expressions_folder"/>
    <delete dir="${expressions-folder}" quiet="true"/>
    <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
      <property name="data-dir" value="${expressions-folder}"/>
      <property name="plugin-name" value="${plugin-name}"/>
      <property name="classname" 
                value="org.eclipse.core.internal.expressions.tests.AllExpressionTests"/>
    </ant>
  </target>
	
  <!-- Plug-in unloading tests. -->
  <target name="pluginUnloading-suite">
  	<property name="expressions-folder" 
              value="${eclipse-home}/expressions_folder"/>
    <delete dir="${expressions-folder}" quiet="true"/>
    <ant target="core-test" antfile="${library-file}" dir="${eclipse-home}">
      <property name="data-dir" value="${expressions-folder}"/>
      <property name="plugin-name" value="${plugin-name}"/>
      <property name="classname" 
                value="org.eclipse.core.internal.expressions.tests.ExpressionTestsPluginUnloading"/>
    </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">
  </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,pluginUnloading-suite,cleanup">
    <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
      <property name="includes" value="org*.xml"/>
      <property name="output-file" value="${plugin-name}.xml"/>
    </ant>
  </target>

  <!-- This target runs the performance test suites.
  Disabled for bug 442531: We should not have empty performance targets
  <target name="performance">
  </target>
  -->
	
</project>
