All pastes #400835 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-03-18 22:53 UTC
rendered paste body
<project name="Run automated Tests" default="run" basedir=".">

	<property file="../../build_local.properties" />
	<property file="run-tests.properties" />

	<import file="../build_shared.xml"/>
	
	<target name="-init">
		<antcall target="-purgeTestEclipseHost" />
		<property name="eclipse.installation.dir" value="${test.eclipse.base}/eclipse"/>
		<property name="eclipse.local.tar.non.server" value="${test.eclipse.zip}"/>
		<antcall target="-installTestEclipseHost" />
	</target>

	<target name="-purgeTestEclipseHost">
		<delete dir="${test.eclipse.base}" failOnError="false" />
	</target>

	<target name="-installTestEclipseHost" description="Install Eclipse and all required plug-ins for testing" unless="isEclipseInstallationAvailable">
		<echo message="Installing plug-ins for testing" />
		
		<unzip dest="${test.eclipse.base}">
			<fileset dir="." includes="eclipse-test-framework*.zip" />
		</unzip>
		<unzip dest="${test.eclipse.host}">
			<fileset dir="." includes="org.pluginbuilder.autotestsuite*.zip" />
		</unzip>
		<condition property="buildResultZipDest" value="${test.eclipse.base}" else="${test.eclipse.host}">
			<equals arg1="${archivePrefix}" arg2="eclipse" />
		</condition>
		<unzip dest="${buildResultZipDest}">
			<fileset dir="${buildDirectory}" includes="${buildType}-**/*.zip" excludes="**/${archiveNamePrefix}-*"/>
		</unzip>
		<!-- unpack eclipse after the features because there might be product features extracted which contain a config.ini -->
	 	<antcall target="unpack.eclipse">
			<param name="unpack.eclipse" value="true"/>
		</antcall>
	</target>

	<target name="-runSuite">
		<delete dir="${test.workspace}" quiet="true" />
		<property name="eclipse-home" value="${test.eclipse.host}" />
		<antcall target="runAll" />
	</target>

	<target name="runTestSuite" description="Should be called from allTests.xml only">
		<ant target="core-test" antfile="${test.library.xml}" dir="${test.eclipse.host}">
			<!-- use -clean because plug-ins have been unzipped into the eclipse folder -->
			<property name="data-dir" value="${test.workspace} -clean" />
			<property name="vmargs" value="-Dnet.sourceforge.cobertura.datafile=${cobertura.ser}" />
		</ant>
	</target>
	
	<target name="runRSSOwlTestSuite" description="Run all Tests from RSSOwl">
		<antcall target="runTestSuite">
		    <param name="plugin-name" value="org.rssowl.core.tests" />
		    <param name="classname" value="org.rssowl.core.tests.AllTests" />
		</antcall>
	</target>

	<target name="runAllTestSuite" description="Should be called from allTests.xml only">
		<ant target="core-test" antfile="${test.library.xml}" dir="${test.eclipse.host}">
			<!-- use -clean because plug-ins have been unzipped into the eclipse folder -->
			<property name="data-dir" value="${test.workspace} -clean" />
			<property name="test-output" value="all.autotestsuite.xml" />
			<property name="plugin-name" value="org.pluginbuilder.autotestsuite" />
			<property name="classname" value="org.pluginbuilder.autotestsuite.AllTestSuite" />
			<property name="eclipse-home" value="${test.eclipse.host}" />

			<property name="vmargs" value="-Dautotest.debug=${autotestsuite.trace} -Dautotestsuite.plugin.inclusions=${autotestsuite.plugin.inclusions} -Dautotestsuite.plugin.exclusions=${autotestsuite.plugin.exclusions} -Dautotestsuite.class.inclusions=${autotestsuite.class.inclusions} -Dautotestsuite.class.exclusions=${autotestsuite.class.exclusions}  -Dnet.sourceforge.cobertura.datafile=${cobertura.ser}" />
		</ant>
	</target>

	<target name="run" depends="-init,runRSSOwlTestSuite" description="Run all tests and create a report.">
		<delete dir="${test.result.dir}" />
		<mkdir dir="${test.result.dir}/xml" />
		<!-- collect creates an aggregated report file in ${test.eclipse.host} -->
		<ant target="collect" antfile="${test.library.xml}" dir="${test.eclipse.host}">
			<property name="includes" value="*.xml" />
			<property name="output-file" value="${test.aggregated.report}" />
		</ant>
		<copy file="${test.eclipse.host}/${test.aggregated.report}" todir="${test.result.dir}/xml" />
		<style style="${basedir}/JUNIT.XSL" basedir="${test.result.dir}/xml" destdir="${test.result.dir}/html" />

	</target>

</project>