aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIgor Fedorenko2011-12-30 12:24:40 (EST)
committerIgor Fedorenko2011-12-30 12:24:40 (EST)
commita23c64f13f3b6e600033591ba0b55151689de51c (patch)
tree164379ae2ecce52c7bac2bd350b0951bb7017984
parent66c58d41051089e6f19453321d00e724a9d4a0ca (diff)
downloadeclipse.platform.releng.aggregator-a23c64f13f3b6e600033591ba0b55151689de51c.zip
eclipse.platform.releng.aggregator-a23c64f13f3b6e600033591ba0b55151689de51c.tar.gz
eclipse.platform.releng.aggregator-a23c64f13f3b6e600033591ba0b55151689de51c.tar.bz2
junit test framework packaging (work in progress)
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
-rwxr-xr-xTMP/eclipse-junit-tests/eclipse-junit-tests.product11
-rw-r--r--TMP/eclipse-junit-tests/pom.xml92
-rw-r--r--TMP/eclipse-junit-tests/src/main/assembly/assembly.xml21
-rw-r--r--TMP/eclipse-junit-tests/src/main/resources/label.properties4
-rwxr-xr-xTMP/eclipse-junit-tests/src/main/scripts/readme.html183
-rwxr-xr-xTMP/eclipse-junit-tests/src/main/scripts/runtests87
-rwxr-xr-xTMP/eclipse-junit-tests/src/main/scripts/runtests.bat63
-rwxr-xr-xTMP/eclipse-junit-tests/src/main/scripts/runtests.sh89
-rwxr-xr-xTMP/eclipse-junit-tests/src/main/scripts/test.xml1002
-rw-r--r--TMP/eclipse-junit-tests/testScripts/CVS/Entries5
-rw-r--r--TMP/eclipse-junit-tests/testScripts/CVS/Repository1
-rw-r--r--TMP/eclipse-junit-tests/testScripts/CVS/Root1
-rw-r--r--pom.xml1
13 files changed, 1560 insertions, 0 deletions
diff --git a/TMP/eclipse-junit-tests/eclipse-junit-tests.product b/TMP/eclipse-junit-tests/eclipse-junit-tests.product
new file mode 100755
index 0000000..9f53d3d
--- /dev/null
+++ b/TMP/eclipse-junit-tests/eclipse-junit-tests.product
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product uid="eclipse-junit-tests" name="eclipse-junit-tests" version="3.8.0.qualifier" useFeatures="true" includeLaunchers="false">
+
+ <features>
+ <feature id="org.eclipse.sdk.tests"/>
+ <feature id="org.eclipse.test"/>
+ </features>
+
+</product>
diff --git a/TMP/eclipse-junit-tests/pom.xml b/TMP/eclipse-junit-tests/pom.xml
new file mode 100644
index 0000000..380283a
--- /dev/null
+++ b/TMP/eclipse-junit-tests/pom.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse</groupId>
+ <artifactId>eclipse-parent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>eclipse-junit-tests</artifactId>
+ <packaging>eclipse-repository</packaging>
+
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <configuration>
+ <resolver>p2</resolver>
+ <environments>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>macosx</os>
+ <ws>cocoa</ws>
+ <arch>x86_64</arch>
+ </environment>
+ </environments>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-repository-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>archive-repository</id>
+ <phase>package</phase>
+ <goals>
+ <goal>archive-repository</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>src/main/assembly/assembly.xml</descriptor>
+ </descriptors>
+ </configuration>
+ <executions>
+ <execution>
+ <id>make-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/TMP/eclipse-junit-tests/src/main/assembly/assembly.xml b/TMP/eclipse-junit-tests/src/main/assembly/assembly.xml
new file mode 100644
index 0000000..3760543
--- /dev/null
+++ b/TMP/eclipse-junit-tests/src/main/assembly/assembly.xml
@@ -0,0 +1,21 @@
+<assembly>
+ <id>bundle</id>
+ <formats>
+ <format>zip</format>
+ </formats>
+ <includeBaseDirectory>false</includeBaseDirectory>
+ <fileSets>
+ <fileSet>
+ <directory>${project.basedir}/src/main/scripts</directory>
+ <outputDirectory>/</outputDirectory>
+ </fileSet>
+ </fileSets>
+ <files>
+ <file>
+ <source>${project.build.directory}/eclipse-junit-tests.zip</source>
+ <outputDirectory>/</outputDirectory>
+ <destName>eclipse-junit-tests-${unqualifiedVersion}.${buildQualifier}.zip</destName>
+ </file>
+ </files>
+</assembly>
+
diff --git a/TMP/eclipse-junit-tests/src/main/resources/label.properties b/TMP/eclipse-junit-tests/src/main/resources/label.properties
new file mode 100644
index 0000000..5cc35ae
--- /dev/null
+++ b/TMP/eclipse-junit-tests/src/main/resources/label.properties
@@ -0,0 +1,4 @@
+timestamp=201112091447
+buildType=I
+buildId=I20111209-1447
+buildLabel=I20111209-1447
diff --git a/TMP/eclipse-junit-tests/src/main/scripts/readme.html b/TMP/eclipse-junit-tests/src/main/scripts/readme.html
new file mode 100755
index 0000000..d1df078
--- /dev/null
+++ b/TMP/eclipse-junit-tests/src/main/scripts/readme.html
@@ -0,0 +1,183 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Automated Testing of Eclipse Builds</title>
+</head>
+
+<body bgcolor="#FFFFFF" text="#000000">
+<font size="+2"> Automated Testing of Eclipse Builds</font>
+<p>Last updated: March 2, 2011</p><p><font size="+1">Description</font></p><p>This document describes how to run Eclipse JUnit plugin tests from the command
+ line using Eclipse SDK JUnit test plug-ins and a testing framework. This method of running tests is intended
+ for anyone who wishes to automate their testing process or reproduce the testing
+ mechanism used in Eclipse builds by the Eclipse Platform Release Engineering team.</p><p>Click <a href="http://dev.eclipse.org/viewcvs/index.cgi/*checkout*/org.eclipse.test/testframework.html?rev=HEAD">here</a> for a description of the testing
+ framework, and how it can be used outside of the setup described here.</p><p>If you simply wish to write and run JUnit tests interactively from an Eclipse
+ workbench, try one of the links below:</p><p><a href="http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.jdt.doc.user/gettingStarted/qs-junit.htm">JUnit Support in Eclipse</a><br>
+<a href="http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.pde.doc.user/guide/tools/launchers/junit_launcher.htm">Testing Eclipse Plug-ins with JUnit</a></p><p><font size="+1">Requirements</font></p>
+<ol>
+ <li>All test machines will require 1.4 and 1.5 java runtime environments installed to run all tests. See <A HREF="#testtargets">test targets</A>
+ for details on which tests require a 1.5 level jre. All other tests can be executed with either jre levels.</li>
+
+ <li>A properties file containing the following key-value pair: J2SE-5.0=&lt;path to 1.5 java executable&gt;. On Windows, the path must be enclosed with double quotes if it contains any space characters, e.g. J2SE-5.0=&quot;c:/program files/jdk1.5.0/jre/bin/java&quot;.</li>
+
+ <li><a href="http://www.info-zip.org/pub/infozip/UnZip.html">Info-ZIP UnZip</a> version 5.41 or later installed and added to the path.</li>
+
+ <li>The JUnit Plugin Tests <code>eclipse-Automated-Tests-&lt;buildId&gt;.zip</code> from an Eclipse build (<a href="http://download.eclipse.org/eclipse/downloads/">http://download.eclipse.org/eclipse/downloads/</a>).
+ This ZIP contains this document, scripts to run the tests, the test framework plug-ins and the JUnit test plug-ins.</li>
+
+ <li>An Eclipse SDK distribution (<a href="http://download.eclipse.org/eclipse/downloads/">http://download.eclipse.org/eclipse/downloads/</a>)
+ to test. Usually you will want to test a particular Eclipse build using a matching
+ Automated Tests feature.
+
+ <li>To run the pde build tests you will need the eclipse-&lt;buildId&gt;delta-pack.zip.</li>
+
+ <li>To run the Team CVS tests you will need extssh access to a CVS repository.
+ The tests create a lot of junk modules and tags so you will want to keep the
+ test repository seperate from your development repository. While it is not necessary
+ to clean up the repository between each Team test run you will probably want
+ to clean it up periodically.</li>
+
+ <li>Some of the p2 tests require a copy of the Eclipse Platform Runtime Binary archive for the platform you
+ are testing. More information is available from the <a href="http://wiki.eclipse.org/Equinox/p2/Testing">Equinox Testing Wiki page</a>.</li>
+</ol>
+
+ <p><font size="+1">Setup</font></p>
+ <ol>
+ <li>Extract the eclipse-Automated-Tests-&lt;buildId&gt;.zip or tar.gz. On Window, extract this file close to the root of the drive to prevent some path names from exceeding
+ the 255 character limit. This will create a top-level directory <code>eclipse-testing</code>.</li>
+
+ <li>Place the Eclipse SDK distribution to test (and the Eclipse Platform Runtime Binary) in the eclipse-testing directory.
+ Do not extract these files as the test scripts will take care of this.</li>
+ <li>To run the Team CVS tests, edit the test.xml script to provide connection
+ information. Replace the following strings in the <strong>teamcvs</strong> target of the <code>test.xml</code> file with the information described below:
+ <ul>
+ <li>@cvs_user@ - the account used to connect to the cvs repository</li>
+ <li>@cvs_password@ - the account password</li><li>@cvs_host@- the name of the cvs server</li>
+ <li>@cvs_root@ - the repository path</li>
+ </ul>
+ These values are used at test time to automatically replace strings in
+ org.eclipse.team.tests.cvs.core/repository.properties. For more information
+ on how this file is used in the team CVS tests, click <a href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/org.eclipse.team.tests.cvs.core/readme.html?rev=HEAD">here</a>.</li>
+ </li>
+
+ <li>To Run the PDE build scripts, save the eclipse-&lt;buildId&gt;delta-pack.zip to the eclipse-testing directory.</li>
+ </ol>
+
+ <p><font size="+1">Running Tests</font></p><p>From a command prompt or terminal:</p>
+<ol>
+ <li><code>cd</code> to the <code>eclipse-testing</code> directory</li>
+ <li>Execute the following script:</p><p><b>runtests -properties &lt;path to properties file&gt; [-os &lt;operating system&gt;] [-ws &lt;windowing system&gt;] [-arch
+ &lt;architecture&gt;] [-noclean] [-vm
+ &lt;path to java executable&gt;][-Dtest.target=performance][<I>targetname1 targetname2 targetname3 etc...</I>] </b></p><p>All parameters and targets are optional on windows systems with the exception of &quot;-properties&quot;. On *nix systems, the os, ws and arch parameters
+ must be specified in addition to the -properties parameter.</p><p>The JUnit test results are produced in individual xml files for each test plug-in with a test.xml. These
+ results are copied to the eclipse-testing\results\xml directory. These results
+ can be converted into html by running the &quot;genHtml&quot; target as described
+ in the table below. Please be aware that &quot;Build Successful&quot; printed
+ to the console is NOT indicative of tests passing.</li>
+</ol>
+
+<p><font size="+1"><a name="vm"></a>Parameters</font></p><table width="90%" border="1">
+ <tr>
+ <td>Parameter</td><td>Description</td></tr>
+ <tr>
+ <td>-os &lt;operating system&gt;</td><td>The OS the tests are being run on. One of: aix, hpux, linux, macosx, solaris,
+ win32. <b>Default win32</b></td></tr>
+ <tr>
+ <td>-ws &lt;windowing system&gt;</td><td>The windowing system the tests are being run on. One of: cocoa, gtk, photon,
+ win32. <b>Default win32</b></td></tr>
+ <tr>
+ <td>-arch &lt;architecture&gt;</td><td>The architecture the tests are being run on. One of: ppc, PA_RISC, x86,
+ sparc. <b>Default x86</b></td></tr>
+ <tr>
+ <td>-noclean</td><td>Run tests without installing a clean Eclipse (in &quot;test-eclipse&quot;) between test targets. Default
+ is to delete an existing test-eclipse directory and re-extract the Eclipse distribution between test targets.</td></tr>
+ <tr>
+ <td>-properties</td><td><P>As per requirements noted above, this is used to reference a properties file containing additional Ant properties
+ used in running tests.Can be used to pass additional vm arguments to the
+ Java virtual machine running the tests by adding the entry &quot;extraVMargs=&lt;the
+ args to pass to the vm&gt;&quot; to the specified properties file.<BR><BR>At a minimum, the property file must include a &quot;J2SE-5.0&quot; property which specifies a path to a 1.5 java executable, for example:<BR><BR><B>J2SE-5.0=&quot;c:/program files/jdk1.5.0_06/jre/bin/java&quot;</B></P><P>The path must be enclosed in double quotes if it contains spaces. This key-value pair is required to run JUnit plug-in tests that require a 1.5 level jvm.</P></td></tr>
+ <tr>
+ <td>-vm</td><td><P>When runtests is executed, two instances of eclipse are started: one to invoke the org.eclipse.ant.core.antRunner application to run a test.xml script in a test plug-in (outer instance) and another in which the JUnit tests are being executed (inner). By default, both will use the java executable on the system path. The -vm property is used to specify an alternate java executable.
+ For example, &quot;-vm c:\jdk142\jre\bin\java&quot;.<BR><BR> However, the -vm value is ignored by the inner vm for JUnit plug-in tests requiring a 1.5 JRE to execute (see <A HREF="#testtargets">test targets</A>). This property must be used in conjunction with the -properties parameter described above at all times.</P></td></tr>
+ <tr>
+ <td>-Dtest.target=performance</td><td>Runs the performance target only in each test plug-in's test.xml. When running tests on Windows,
+ enclose this parameter in double quotes, ie. runtests &quot;-Dtest.target=performance&quot;.</td></tr><tr><td>targetname1 targetname2 targetname3 etc..</td><td><P>Replace with a list of <A HREF="#testtargets">test targets</A> to execute (space delineated). Each corresponds to an Ant target in the eclipse-testing/test.xml script. <BR><BR>For example, <BR><B>runtests -os linux -ws gtk -arch x86 ant antui -properties vm.properties</B><BR> This will execute the &quot;ant&quot; and &quot;antui&quot; test targets only. If not specified, the &quot;all&quot; target will be executed.<BR></P></td></tr>
+</table><p><font size="+1"><A NAME="testtargets"></A>Appendix A - Test Targets</font></p><p>Ant targets in the main test.xml which execute tests. Typically each corresponds
+ to the execution of a test plug-in's test.xml.<BR></p><table width="90%" border="1"><tr><td WIDTH="34%">Target name (special jvm requirements)</td><td WIDTH="66%">Description / test plug-in</td></tr>
+ <tr>
+ <td WIDTH="34%">all (<B>1.4, 1.5 and 1.6 JREs required</B>)</td><td WIDTH="66%">Runs all the targets below. Default.</td></tr>
+ <tr><td>ant</td><td>org.eclipse.ant.tests.core</td></tr>
+<tr><td>antui</td><td>org.eclipse.ant.tests.ui</td></tr>
+<tr><td>compare</td><td>org.eclipse.compare.tests</td></tr>
+<tr><td>coreexpressions</td><td>org.eclipse.core.expressions.tests</td></tr>
+<tr><td>coreresources</td><td>org.eclipse.core.tests.resources</td></tr>
+<tr><td>coreruntime</td><td>org.eclipse.core.tests.runtime</td></tr>
+<tr><td>coretestsnet</td><td>org.eclipse.core.tests.net</td></tr>
+<tr><td>equinoxsecurity</td><td>org.eclipse.equinox.security.tests</td></tr>
+<tr><td>filebuffers</td><td>org.eclipse.core.filebuffers.tests</td></tr>
+<tr><td>jdtapt <b>(JRE 1.5 required)</b></td><td>org.eclipse.jdt.apt.tests</td></tr>
+<td>jdtaptpluggable <b>(JRE 1.6 required)</b></td><td>org.eclipse.jdt.apt.pluggable.tests</td></tr>
+<tr><td>jdtcompilerapt <b>(JRE 1.6 required)</b></td><td>org.eclipse.jdt.compiler.apt.tests</td></tr>
+<tr><td>jdtcompilertool <b>(JRE 1.6 required)</b></td><td>org.eclipse.jdt.compiler.tool.tests</td></tr>
+<tr><td>jdtcorebuilder <b>(JRE 1.5 required)</b></td><td>org.eclipse.jdt.core.tests.builder</td></tr>
+<tr><td>jdtcorecompiler <b>(JRE 1.5 required)</b></td><td>org.eclipse.jdt.core.tests.compiler</td></tr>
+<tr><td>jdtcoremodel <b>(JRE 1.5 required)</b></td><td>org.eclipse.jdt.core.tests.model</td></tr>
+<tr><td>jdtcoreperf</td><td>org.eclipse.jdt.core.tests.performance</td></tr>
+<tr><td>jdtdebug</td><td>org.eclipse.jdt.debug.tests</td></tr>
+<tr><td>jdttext</td><td>org.eclipse.jdt.text.tests</td></tr>
+<tr><td>jdtui</td><td>org.eclipse.jdt.ui.tests</td></tr>
+<tr><td>jdtuirefactoring</td><td>org.eclipse.jdt.ui.tests.refactoring</td></tr>
+<tr><td>jface</td><td>org.eclipse.jface.text.tests</td></tr>
+<tr><td>jfacedatabinding</td><td>org.eclipse.jface.tests.databinding</td></tr>
+<tr><td>ltkcorerefactoringtests</td><td>org.eclipse.ltk.core.refactoring.tests</td></tr>
+<tr><td>ltkuirefactoringtests</td><td>org.eclipse.ltk.ui.refactoring.tests</td></tr>
+<tr><td>osgi</td><td>org.eclipse.osgi.tests</td></tr>
+<tr><td>pdeapitooling <b>(JRE 1.5 required)</b></td><td>org.eclipse.pde.api.tools.tests</td></tr>
+<tr><td>pdebuild</td><td>org.eclipse.pde.build.tests</td></tr>
+<tr><td>pdeui</td><td>org.eclipse.pde.ui.tests</td></tr>
+<tr><td>relEng</td><td>org.eclipse.releng.tests</td></tr>
+<tr><td>swt</td><td>org.eclipse.swt.tests</td></tr>
+<tr><td>teamcore</td><td>org.eclipse.team.tests.core</td></tr>
+<tr><td>teamcvs</td><td>org.eclipse.team.tests.cvs.core</td></tr>
+<tr><td>text</td><td>org.eclipse.text.tests</td></tr>
+<tr><td>ua</td><td>org.eclipse.ua.tests</td></tr>
+<tr><td>ui</td><td>org.eclipse.ui.tests</td></tr>
+<tr><td>uieditors</td><td>org.eclipse.ui.editors.tests</td></tr>
+<tr><td>uiforms</td><td>org.eclipse.ui.tests.forms</td></tr>
+<tr><td>uinavigator</td><td>org.eclipse.ui.tests.navigator</td></tr>
+<tr><td>uiperformance</td><td>org.eclipse.ui.tests.performance</td></tr>
+<tr><td>uircp</td><td>org.eclipse.ui.tests.rcp</td></tr>
+<tr><td>uiviews</td><td>org.eclipse.ui.tests.views.properties.tabbed</td></tr>
+<tr><td>uiworkbenchtexteditor</td><td>org.eclipse.ui.workbench.texteditor.tests</td></tr>
+<tr><td>update</td><td>org.eclipse.update.tests.core</td></tr>
+
+
+</table><p><br>
+</p><p><font size="+1"><a name="appendixb"></a>Appendix B - Supported os, ws, and arch
+ value combinations</font></p><p>The following table contains the values that can be used with the -os, -ws,
+ and -arch switches.</p><table width="75%" border="1">
+ <tr>
+ <td>Operating System (os)</td><td>Windowing System (ws)</td><td>Architecture (arch)</td></tr>
+ <tr>
+ <td>hpux</td><td>motif</td><td>PA_RISC</td></tr>
+ <tr>
+ <td>linux</td><td>gtk</td><td>x86</td></tr>
+ <tr>
+ <td>linux</td><td>gtk</td><td>x86_64</td></tr>
+ <tr>
+ <td>macosx</td><td>carbox</td><td>ppc</td></tr>
+ <tr>
+ <td>macosx</td><td>cocoa</td><td>x86</td></tr>
+ <tr>
+ <td>macosx</td><td>cocoa</td><td>x86_64</td></tr>
+ <tr>
+ <td>solaris</td><td>gtk</td><td>sparc</td></tr>
+ <tr>
+ <td>solaris</td><td>gtk</td><td>x86</td></tr>
+ <tr>
+ <td>solaris</td><td>motif</td><td>sparc</td></tr>
+ <tr>
+ <td>win32</td><td>win32</td><td>x86</td></tr>
+</table>
+</body>
+</html>
diff --git a/TMP/eclipse-junit-tests/src/main/scripts/runtests b/TMP/eclipse-junit-tests/src/main/scripts/runtests
new file mode 100755
index 0000000..38ca246
--- /dev/null
+++ b/TMP/eclipse-junit-tests/src/main/scripts/runtests
@@ -0,0 +1,87 @@
+# !/bin/sh
+
+#set the DISPLAY for running tests on Linux
+DISPLAY=`$HOST`:0.0;export DISPLAY
+
+# by default, use the java executable on the path for outer and test jvm
+vmcmd=java
+
+#this value must be set when using rsh to execute this script, otherwise the script will execute from the user's home directory
+dir=.
+
+# operating system, windowing system and architecture variables
+os=
+ws=
+arch=
+
+# list of tests (targets) to execute in test.xml
+tests=
+
+# default value to determine if eclipse should be reinstalled between running of tests
+installmode="clean"
+
+# name of a property file to pass to Ant
+properties=
+
+# message printed to console
+usage="usage: $0 -os <osType> -ws <windowingSystemType> -arch <architecture> [-noclean] [<test target>][-properties <path>]"
+
+
+# proces command line arguments
+while [ $# -gt 0 ]
+do
+ case "$1" in
+ -dir) dir="$2"; shift;;
+ -os) os="$2"; shift;;
+ -ws) ws="$2"; shift;;
+ -arch) arch="$2"; shift;;
+ -noclean) installmode="noclean";;
+ -properties) properties="-propertyfile $2";shift;;
+ -vm) vmcmd="$2"; shift;;
+ *) tests=$tests\ $1;;
+ esac
+ shift
+done
+
+# for *nix systems, os, ws and arch values must be specified
+if [ "x$os" = "x" ]
+then
+ echo >&2 "$usage"
+ exit 1
+fi
+
+if [ "x$ws" = "x" ]
+then
+ echo >&2 "$usage"
+ exit 1
+fi
+
+if [ "x$arch" = "x" ]
+then
+ echo >&2 "$usage"
+ exit 1
+fi
+
+#necessary when invoking this script through rsh
+cd $dir
+
+# verify os, ws and arch values passed in are valid before running tests
+if [ "$os-$ws-$arch" = "linux-gtk-x86" ] || [ "$os-$ws-$arch" = "macosx-cocoa-ppc" ] || [ "$os-$ws-$arch" = "macosx-cocoa-x86" ] || [ "$os-$ws-$arch" = "aix-gtk-ppc" ] || [ "$os-$ws-$arch" = "aix-gtk-ppc64" ] || [ "$os-$ws-$arch" = "solaris-gtk-sparc" ] || [ "$os-$ws-$arch" = "solaris-gtk-x86" ] || [ "$os-$ws-$arch" = "linux-gtk-ppc64" ] || [ "$os-$ws-$arch" = "linux-gtk-ia64" ] || [ "$os-$ws-$arch" = "linux-gtk-x86_64" ] || [ "$os-$ws-$arch" = "hpux-gtk-ia64_32"]
+then
+ if [ ! -r eclipse ]
+ then
+ tar -xzf eclipse-SDK-*.tar.gz
+ unzip -qq -o -C eclipse-junit-tests-*.zip */plugins/org.eclipse.test* -d eclipse/dropins/
+fi
+
+# run tests
+launcher=`ls eclipse/plugins/org.eclipse.equinox.launcher_*.jar`
+$vmcmd -Dosgi.os=$os -Dosgi.ws=$ws -Dosgi.arch=$arch -jar $launcher -data workspace -application org.eclipse.ant.core.antRunner -file `pwd`/test.xml $tests -Dws=$ws -Dos=$os -Darch=$arch -D$installmode=true $properties -logger org.apache.tools.ant.DefaultLogger
+
+# display message to user if os, ws and arch are invalid
+else
+ echo "The os, ws and arch values are either invalid or are an invalid combination"
+
+exit 1
+fi
+
diff --git a/TMP/eclipse-junit-tests/src/main/scripts/runtests.bat b/TMP/eclipse-junit-tests/src/main/scripts/runtests.bat
new file mode 100755
index 0000000..f9a578d
--- /dev/null
+++ b/TMP/eclipse-junit-tests/src/main/scripts/runtests.bat
@@ -0,0 +1,63 @@
+@echo off
+
+REM default java executable for outer and test vm
+set vmcmd=java
+set no_proxy=localhost,dev.eclipse.org,hudson.eclipse.org
+
+REM reset list of ant targets in test.xml to execute
+set tests=
+
+REM default switch to determine if eclipse should be reinstalled between running of tests
+set installmode=clean
+
+REM property file to pass to Ant scripts
+set properties=
+
+REM default values for os, ws and arch
+set os=win32
+set ws=win32
+set arch=x86
+
+REM reset ant command line args
+set ANT_CMD_LINE_ARGS=
+
+REM ****************************************************************
+REM
+REM Install Eclipse if it does not exist
+REM
+REM ****************************************************************
+if NOT EXIST eclipse unzip -qq -o eclipse-SDK-*.zip && unzip -qq -o -C eclipse-junit-tests*.zip plugins/org.eclipse.test* -d eclipse/dropins/
+
+
+:processcmdlineargs
+
+REM ****************************************************************
+REM
+REM Process command line arguments
+REM
+REM ****************************************************************
+
+if x%1==x goto run
+if x%1==x-ws set ws=%2 && shift && shift && goto processcmdlineargs
+if x%1==x-os set os =%2 && shift && shift && goto processcmdlineargs
+if x%1==x-arch set arch=%2 && shift && shift && goto processcmdlineargs
+if x%1==x-noclean set installmode=noclean&& shift && goto processcmdlineargs
+if x%1==x-properties set properties=-propertyfile %2 && shift && shift && goto processcmdlineargs
+if x%1==x-vm set vmcmd="%2" && shift && shift && goto processcmdlineargs
+
+set tests=%tests% %1 && shift && goto processcmdlineargs
+
+
+:run
+REM ***************************************************************************
+REM Run tests by running Ant in Eclipse on the test.xml script
+REM ***************************************************************************
+REM get name of org.eclipse.equinox.launcher_*.jar with version label
+dir /b eclipse\plugins\org.eclipse.equinox.launcher_*.jar>launcher-jar-name.txt
+set /p launcher-jar=<launcher-jar-name.txt
+
+%vmcmd% -Dosgi.os=%os% -Dosgi.ws=%ws% -Dosgi.arch=%arch% -jar eclipse\plugins\%launcher-jar% -data workspace -application org.eclipse.ant.core.antRunner -file test.xml %tests% -Dws=%ws% -Dos=%os% -Darch=%arch% -D%installmode%=true %properties% -logger org.apache.tools.ant.DefaultLogger
+
+goto end
+
+:end
diff --git a/TMP/eclipse-junit-tests/src/main/scripts/runtests.sh b/TMP/eclipse-junit-tests/src/main/scripts/runtests.sh
new file mode 100755
index 0000000..10ad816
--- /dev/null
+++ b/TMP/eclipse-junit-tests/src/main/scripts/runtests.sh
@@ -0,0 +1,89 @@
+#!/bin/sh
+
+#set the DISPLAY for running tests on Linux
+#DISPLAY=`$HOST`:0.0;export DISPLAY
+export no_proxy=localhost,dev.eclipse.org,hudson.eclipse.org
+
+# by default, use the java executable on the path for outer and test jvm
+#vmcmd=/shared/common/jdk-1.6.x86_64/jre/bin/java
+vmcmd=java
+
+#this value must be set when using rsh to execute this script, otherwise the script will execute from the user's home directory
+dir=.
+
+# operating system, windowing system and architecture variables
+os=
+ws=
+arch=
+
+# list of tests (targets) to execute in test.xml
+tests=
+
+# default value to determine if eclipse should be reinstalled between running of tests
+installmode="clean"
+
+# name of a property file to pass to Ant
+properties=
+
+# message printed to console
+usage="usage: $0 -os <osType> -ws <windowingSystemType> -arch <architecture> [-noclean] [<test target>][-properties <path>]"
+
+
+# proces command line arguments
+while [ $# -gt 0 ]
+do
+ case "$1" in
+ -dir) dir="$2"; shift;;
+ -os) os="$2"; shift;;
+ -ws) ws="$2"; shift;;
+ -arch) arch="$2"; shift;;
+ -noclean) installmode="noclean";;
+ -properties) properties="-propertyfile $2";shift;;
+ -vm) vmcmd="$2"; shift;;
+ *) tests=$tests\ $1;;
+ esac
+ shift
+done
+
+# for *nix systems, os, ws and arch values must be specified
+if [ "x$os" = "x" ]
+then
+ echo >&2 "$usage"
+ exit 1
+fi
+
+if [ "x$ws" = "x" ]
+then
+ echo >&2 "$usage"
+ exit 1
+fi
+
+if [ "x$arch" = "x" ]
+then
+ echo >&2 "$usage"
+ exit 1
+fi
+
+#necessary when invoking this script through rsh
+cd $dir
+
+# verify os, ws and arch values passed in are valid before running tests
+if [ "$os-$ws-$arch" = "linux-gtk-x86" ] || [ "$os-$ws-$arch" = "macosx-cocoa-ppc" ] || [ "$os-$ws-$arch" = "macosx-cocoa-x86" ] || [ "$os-$ws-$arch" = "aix-gtk-ppc" ] || [ "$os-$ws-$arch" = "aix-gtk-ppc64" ] || [ "$os-$ws-$arch" = "solaris-gtk-sparc" ] || [ "$os-$ws-$arch" = "solaris-gtk-x86" ] || [ "$os-$ws-$arch" = "linux-gtk-ppc64" ] || [ "$os-$ws-$arch" = "linux-gtk-ia64" ] || [ "$os-$ws-$arch" = "linux-gtk-x86_64" ] || [ "$os-$ws-$arch" = "hpux-gtk-ia64_32"]
+then
+ if [ ! -r eclipse ]
+ then
+ tar -xzf eclipse-SDK-*.tar.gz
+ unzip -qq -o -C eclipse-junit-tests-*.zip */plugins/org.eclipse.test* -d eclipse/dropins/
+fi
+
+# run tests
+launcher=`ls eclipse/plugins/org.eclipse.equinox.launcher_*.jar`
+$vmcmd -Dosgi.os=$os -Dosgi.ws=$ws -Dosgi.arch=$arch -jar $launcher -data workspace -application org.eclipse.ant.core.antRunner -file `pwd`/test.xml $tests -Dws=$ws -Dos=$os -Darch=$arch -D$installmode=true $properties -logger org.apache.tools.ant.DefaultLogger
+
+# display message to user if os, ws and arch are invalid
+else
+ echo "The os, ws and arch values are either invalid or are an invalid combination"
+
+exit 1
+fi
+
diff --git a/TMP/eclipse-junit-tests/src/main/scripts/test.xml b/TMP/eclipse-junit-tests/src/main/scripts/test.xml
new file mode 100755
index 0000000..cfc43d7
--- /dev/null
+++ b/TMP/eclipse-junit-tests/src/main/scripts/test.xml
@@ -0,0 +1,1002 @@
+<project name="Automated Eclipse Testing" default="all" basedir="." xmlns:jacoco="antlib:org.jacoco.ant">
+
+ <!--properties file containing the plugin directory name including version number,
+ and list of required test plug-ins expressed as command-line argument to unzip executable.
+ Generated and packaged at build time.-->
+ <property file="test.properties" />
+
+ <!--properties file containing the build information-->
+ <property file="label.properties" />
+
+ <!--default directory where test-eclipse will be installed-->
+ <property name="install" value="${basedir}/test-eclipse" />
+
+ <!--suffix added to test output files to identify platform on which tests ran.-->
+ <property name="platform" value="${os}.${ws}.${arch}" />
+
+ <!-- The root of the eclipse installation -->
+ <property name="eclipse-home" value="${install}/eclipse" />
+
+ <property name="repoZip" value="${basedir}/eclipse-junit-tests-${buildId}.zip" />
+ <property name="repoLocation" value="${basedir}/testRepo" />
+ <property name="platformLocation" value="${basedir}/platformLocation" />
+
+ <!-- The directory that will contain all files containing information on the tests that ran.-->
+ <property name="results" value="${basedir}/results" />
+
+ <!--Directory for JUnit report output, console log output and .log content for each test suite.
+ Overrides default in org.eclipse.test/library.xml-->
+ <property name="junit-report-output" value="${results}/${platform}" />
+ <property name="coverage-output" value="${results}/coverage" />
+ <condition property="codecoverage" value="true">
+ <and>
+ <and>
+ <equals arg1="${buildType}" arg2="I" />
+ <os family="unix" />
+ </and>
+ <not>
+ <equals arg1="${test.target}" arg2="performance" />
+ </not>
+ </and>
+ </condition>
+
+ <!--Directory name of org.eclipse.test plug-in installed in ${eclipse-home}-->
+ <target name="setup" unless="noclean" depends="init">
+ <condition property="setupTarget" value="setup-zip">
+ <contains string="${runtimeArchive}" substring=".zip" />
+ </condition>
+ <condition property="setupTarget" value="setup-tar.gz">
+ <contains string="${runtimeArchive}" substring=".tar.gz" />
+ </condition>
+ <condition property="repoexists" value="true">
+ <available file="${repoLocation}" />
+ </condition>
+ <condition property="extraIU" value="org.eclipse.equinox.p2.discovery.feature.feature.group">
+ <equals arg1="${testPlugin}" arg2="org.eclipse.equinox.p2.tests.discovery" />
+ </condition>
+ <antcall target="setupRepo" />
+ <antcall target="${setupTarget}" />
+ <antcall target="configureDeltaPack" />
+ </target>
+
+ <!--Extract test bundles repo -->
+ <target name="setupRepo" unless="repoexists">
+ <mkdir dir="${repoLocation}" />
+ <exec dir="." executable="unzip">
+ <arg line="-o ${repoZip} -d ${repoLocation}" />
+ </exec>
+ </target>
+
+ <!--setup for zip archives-->
+ <target name="setup-zip" description="Reinstall the test Eclipse installation if specified by user">
+ <delete dir="${install}" />
+ <mkdir dir="${install}" />
+ <exec dir="." executable="unzip">
+ <arg line="-o -qq ${runtimeArchive} -d ${install}" />
+ </exec>
+ <antcall target="installExtraPlugins" />
+ <antcall target="installTestPlugins" />
+ </target>
+
+ <!--setup for tar.gz archives-->
+ <target name="setup-tar.gz" description="Reinstall the test Eclipse installation if specified by user">
+ <property name="currentDir" value="${basedir}" />
+ <delete dir="${install}" />
+ <mkdir dir="${install}" />
+ <exec dir="${install}" executable="tar">
+ <arg line="-xzf ${currentDir}/${runtimeArchive}" />
+ </exec>
+ <antcall target="installExtraPlugins" />
+ <antcall target="installTestPlugins" />
+ </target>
+
+ <!--use an stable version of the director so that instability in the current build doesn't cause all the tests to fail -->
+ <target name="setupPlatform">
+ <echo message="os.arch ${os.arch}" />
+ <property file="equinoxp2tests.properties" />
+ <condition property="platformArchive" value="${org.eclipse.equinox.p2.reconciler.tests.lastrelease.platform.archive.linux}">
+ <and>
+ <os family="unix" />
+ <not>
+ <or>
+ <os family="mac" />
+ <os arch="x86_64" />
+ <os arch="amd64" />
+ </or>
+ </not>
+ </and>
+ </condition>
+ <condition property="platformArchive" value="${org.eclipse.equinox.p2.reconciler.tests.lastrelease.platform.archive.macosx}">
+ <and>
+ <os family="mac" />
+ <os family="unix" />
+ </and>
+ </condition>
+ <condition property="platformArchive" value="${org.eclipse.equinox.p2.reconciler.tests.lastrelease.platform.archive.win32}">
+ <and>
+ <os family="windows" />
+ <os arch="x86" />
+ </and>
+ </condition>
+ <condition property="platformArchive" value="${org.eclipse.equinox.p2.reconciler.tests.lastrelease.platform.archive.win32-x86_64}">
+ <and>
+ <os family="windows" />
+ <os arch="x86_64" />
+ </and>
+ </condition>
+ <condition property="platformArchive" value="${org.eclipse.equinox.p2.reconciler.tests.lastrelease.platform.archive.linux-x86_64}">
+ <and>
+ <os family="unix" />
+ <or>
+ <os arch="x86_64" />
+ <os arch="amd64" />
+ </or>
+ </and>
+ </condition>
+ <condition property="platformTarget" value="platform-zip">
+ <contains string="${platformArchive}" substring=".zip" />
+ </condition>
+ <condition property="platformTarget" value="platform-tar.gz">
+ <contains string="${platformArchive}" substring=".tar.gz" />
+ </condition>
+ <echo message="platformTarget ${platformTarget} platformArchive ${platformArchive}" />
+ <antcall target="${platformTarget}" />
+ </target>
+
+
+ <!--setup for platform zip archives-->
+ <target name="platform-zip" description="Reinstall the test Eclipse installation if specified by user">
+ <delete dir="${platformLocation}" />
+ <mkdir dir="${platformLocation}" />
+ <exec dir="${platformLocation}" executable="unzip">
+ <arg line="-o -qq ${platformArchive} -d ${platformLocation}" />
+ </exec>
+ </target>
+
+ <!--setup for platform tar.gz archives-->
+ <target name="platform-tar.gz" description="Reinstall the test Eclipse installation if specified by user">
+ <delete dir="${platformLocation}" />
+ <mkdir dir="${platformLocation}" />
+ <exec dir="${platformLocation}" executable="tar">
+ <arg line="-xzf ${platformArchive}" />
+ </exec>
+ </target>
+
+ <target name="installExtraPlugins" if="extraIU">
+ <property file="equinoxp2tests.properties" />
+ <path id="launcher.paths">
+ <fileset dir="${eclipse-home}" includes="plugins/org.eclipse.equinox.launcher_*" />
+ </path>
+ <property name="launcherPath" refid="launcher.paths" />
+
+ <property name="currentBuildRepo" value="${org.eclipse.equinox.p2.tests.current.build.repo}" />
+ <echo>-installIU ${extraIU} +</echo>
+ <java jar="${launcherPath}" failonerror="false" dir="${eclipse-home}" timeout="900000" fork="true" output="${basedir}/director.log" resultproperty="directorcode">
+ <arg line="-vm ${java.home}/bin/java" />
+ <arg line="-application org.eclipse.equinox.p2.director" />
+ <arg line="-consoleLog" />
+ <arg line="-flavor tooling" />
+ <arg line="-installIUs ${extraIU}" />
+ <arg line="-p2.os ${os}" />
+ <arg line="-p2.ws ${ws}" />
+ <arg line="-p2.arch ${arch}" />
+ <arg line="-roaming" />
+ <arg line="-profile SDKProfile" />
+ <arg line="-repository ${currentBuildRepo}" />
+ <arg line="-destination ${eclipse-home}" />
+ <arg line="-bundlepool ${eclipse-home}" />
+ </java>
+ </target>
+
+ <target name="installTestPlugins">
+ <path id="launcher.paths">
+ <fileset dir="${eclipse-home}" includes="plugins/org.eclipse.equinox.launcher_*" />
+ </path>
+ <property name="launcherPath" refid="launcher.paths" />
+ <antcall target="setupPlatform" />
+ <echo>-installIU ${testPlugin} +</echo>
+ <java jar="${launcherPath}" failonerror="false" dir="${eclipse-home}" timeout="900000" fork="true" output="${basedir}/director.log" resultproperty="directorcode">
+ <arg line="-vm ${java.home}/bin/java" />
+ <arg line="-application org.eclipse.equinox.p2.director" />
+ <arg line="-consoleLog" />
+ <arg line="-flavor tooling" />
+ <arg line="-installIUs ${testPlugin},org.eclipse.test,org.eclipse.ant.optional.junit,org.eclipse.test.performance,org.eclipse.test.performance.win32,org.easymock" />
+ <arg line="-p2.os ${os}" />
+ <arg line="-p2.ws ${ws}" />
+ <arg line="-p2.arch ${arch}" />
+ <arg line="-roaming" />
+ <arg line="-profile SDKProfile" />
+ <arg line="-repository file:${repoLocation}" />
+ <arg line="-destination ${eclipse-home}" />
+ <arg line="-bundlepool ${eclipse-home}" />
+ </java>
+ <antcall target="configureTeamTest" />
+ <antcall target="unzipderby" />
+ </target>
+
+
+ <target name="unzipderby" if="derby">
+ <exec dir="." executable="unzip">
+ <arg line="-o eclipse-junit-tests-*.zip ${derby} -d ${install}" />
+ </exec>
+ <copy todir="${install}/eclipse/dropins/eclipse/plugins">
+ <fileset dir="${repoLocation}/eclipse/dropins/eclipse/plugins" includes="org.apache.derby**/*" />
+ </copy>
+ </target>
+
+ <target name="init" depends="setRuntimeArchive">
+ <mkdir dir="${results}/xml" />
+ <mkdir dir="${results}/html" />
+ <mkdir dir="${junit-report-output}" />
+ <!--Unlock files on the Mac before starting tests.
+ Required to delete some workspace directories (org.eclipse.core.filebuffers.tests and Team CVS tests).-->
+ <exec dir="${basedir}" executable="chflags" os="Mac OS X">
+ <arg line="-R nouchg ${install}" />
+ </exec>
+ </target>
+
+ <target name="setRuntimeArchive">
+ <echo message="setRuntimeArchive os ${os} ws ${ws} arch ${arch}" />
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-win32.zip">
+ <and>
+ <equals arg1="${os}" arg2="win32" />
+ <equals arg1="${ws}" arg2="win32" />
+ <equals arg1="${arch}" arg2="x86" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-win32-x86_64.zip">
+ <and>
+ <equals arg1="${os}" arg2="win32" />
+ <equals arg1="${ws}" arg2="win32" />
+ <equals arg1="${arch}" arg2="x86_64" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-linux-gtk.tar.gz">
+ <and>
+ <equals arg1="${os}" arg2="linux" />
+ <equals arg1="${ws}" arg2="gtk" />
+ <equals arg1="${arch}" arg2="x86" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-linux-gtk-ppc64.tar.gz">
+ <and>
+ <equals arg1="${os}" arg2="linux" />
+ <equals arg1="${ws}" arg2="gtk" />
+ <equals arg1="${arch}" arg2="ppc64" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-linux-gtk-x86_64.tar.gz">
+ <and>
+ <equals arg1="${os}" arg2="linux" />
+ <equals arg1="${ws}" arg2="gtk" />
+ <equals arg1="${arch}" arg2="x86_64" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-macosx-cocoa-ppc.tar.gz">
+ <and>
+ <equals arg1="${os}" arg2="macosx" />
+ <equals arg1="${ws}" arg2="cocoa" />
+ <equals arg1="${arch}" arg2="ppc" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-macosx-cocoa.tar.gz">
+ <and>
+ <equals arg1="${os}" arg2="macosx" />
+ <equals arg1="${ws}" arg2="cocoa" />
+ <equals arg1="${arch}" arg2="x86" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-macosx-cocoa-x86_64.tar.gz">
+ <and>
+ <equals arg1="${os}" arg2="macosx" />
+ <equals arg1="${ws}" arg2="cocoa" />
+ <equals arg1="${arch}" arg2="x86_64" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-hpux-gtk.zip">
+ <and>
+ <equals arg1="${os}" arg2="hpux" />
+ <equals arg1="${ws}" arg2="gtk" />
+ <equals arg1="${arch}" arg2="ia64_32" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-solaris-gtk.zip">
+ <and>
+ <equals arg1="${os}" arg2="solaris" />
+ <equals arg1="${ws}" arg2="gtk" />
+ <equals arg1="${arch}" arg2="sparc" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-solaris-gtk-x86.zip">
+ <and>
+ <equals arg1="${os}" arg2="solaris" />
+ <equals arg1="${ws}" arg2="gtk" />
+ <equals arg1="${arch}" arg2="x86" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-aix-gtk-ppc.zip">
+ <and>
+ <equals arg1="${os}" arg2="aix" />
+ <equals arg1="${ws}" arg2="gtk" />
+ <equals arg1="${arch}" arg2="ppc" />
+ </and>
+ </condition>
+ <condition property="runtimeArchive" value="eclipse-SDK-${buildId}-aix-gtk-ppc64.zip">
+ <and>
+ <equals arg1="${os}" arg2="aix" />
+ <equals arg1="${ws}" arg2="gtk" />
+ <equals arg1="${arch}" arg2="ppc64" />
+ </and>
+ </condition>
+ <echo message="runtimeArchive ${runtimeArchive} !!! " />
+ </target>
+
+ <target name="setJVMProperties" depends="setJVMfromUserSpecified">
+ <!--enable tests requiring 1.5 or 1.6 vms to run if running vm level detected matches required execution environment-->
+ <condition property="J2SE-5.0" value="${java.home}/bin/java">
+ <or>
+ <equals arg1="${ant.java.version}" arg2="1.5" />
+ <equals arg1="${ant.java.version}" arg2="1.6" />
+ </or>
+ </condition>
+ <condition property="J2SE-6.0" value="${java.home}/bin/java">
+ <equals arg1="${ant.java.version}" arg2="1.6" />
+ </condition>
+
+ </target>
+ <target name="setJVMfromUserSpecified" if="jvm">
+ <exec executable="${jvm}" outputproperty="javaversion">
+ <arg line="-version" />
+ </exec>
+ <echo message="java version of ${jvm} is ${javaversion}" />
+ <condition property="J2SE-6.0" value="${jvm}">
+ <contains string="${javaversion}" substring="java version &quot;1.6" />
+ </condition>
+ <condition property="J2SE-5.0" value="${jvm}">
+ <or>
+ <contains string="${javaversion}" substring="java version &quot;1.6" />
+ <contains string="${javaversion}" substring="java version &quot;1.5" />
+ </or>
+ </condition>
+ <echo message="J2SE-6.0: ${J2SE-6.0}" />
+ <echo message="J2SE-5.0: ${J2SE-5.0}" />
+ </target>
+ <target name="configureTeamTest" if="teamcvs">
+ <!-- Fill in cvs repository information -->
+ <replace file="${eclipse-home}/plugins/${org.eclipse.team.tests.cvs.core}/repository.properties" token="@user@" value="${cvs_user}" />
+ <replace file="${eclipse-home}/plugins/${org.eclipse.team.tests.cvs.core}/repository.properties" token="@password@" value="${cvs_password}" />
+ <replace file="${eclipse-home}/plugins/${org.eclipse.team.tests.cvs.core}/repository.properties" token="@host@" value="${cvs_host}" />
+ <replace file="${eclipse-home}/plugins/${org.eclipse.team.tests.cvs.core}/repository.properties" token="@root@" value="${cvs_root}" />
+ </target>
+
+ <target name="configureDeltaPack" if="pdebuild">
+ <property name="deltapackArchive" value="eclipse-${buildId}-delta-pack.zip" />
+ <property name="installDeltapack" value="${install}/deltapack" />
+ <mkdir dir="${installDeltapack}" />
+ <exec dir="." executable="unzip">
+ <arg line="-o -qq ${deltapackArchive} -d ${installDeltapack}" />
+ </exec>
+ </target>
+
+
+ <macrodef name="runTests">
+ <attribute name="testPlugin" />
+ <sequential>
+
+ <!--alwasy use eclipse executable to launch tests with the exception of performance tests-->
+ <!--condition property="useEclipseExe" value="true">
+ <not>
+ <equals arg1="${test.target}" arg2="performance"/>
+ </not>
+ </condition-->
+
+ <condition property="performance.target.present" value="true">
+ <isset property="@{testPlugin}.has.performance.target" />
+ </condition>
+
+ <!--override the value of this property with performance if the tests run on performance machine-->
+ <property name="test.target" value="junit" />
+ <property name="report" value="@{testPlugin}" />
+
+ <!--install db plug-ins if running performance tests-->
+ <condition property="derby" value="eclipse/dropins/eclipse/plugins/org.apache.derby*/**">
+ <equals arg1="${test.target}" arg2="performance" />
+ </condition>
+ <!-- <property name="derby" value="" /> -->
+ <!-- <param name="testPlugin" value="${@{testPlugin}}" /> -->
+ <antcall target="${test.target}">
+ <param name="testPlugin" value="@{testPlugin}" />
+ <param name="output-file" value="@{testPlugin}.xml" />
+ </antcall>
+ </sequential>
+ </macrodef>
+
+ <target name="junit" unless="skip.test">
+ <antcall target="setup">
+ </antcall>
+ <property file="finalPluginsVersions.properties" />
+ <property name="library-file" value="${basedir}/test-eclipse/eclipse/plugins/org.eclipse.test_${org.eclipse.test}/library.xml" />
+ <property name="junit-stylesheet" value="${eclipse-home}/plugins/org.eclipse.test_${org.eclipse.test}/JUNIT.XSL" />
+ <echo>trying to find ${testPlugin}_*</echo>
+ <fileset id="test.plugin.file" dir="${eclipse-home}/plugins">
+ <filename name="${testPlugin}_*/test.xml" />
+ </fileset>
+ <property name="testPluginX" refid="test.plugin.file" />
+ <echo>trying to find ${testPluginX}</echo>
+ <condition property="pluginexists" value="true">
+ <not>
+ <equals arg1="${testPluginX}" arg2="" />
+ </not>
+ </condition>
+ <antcall target="runSuite" />
+ <antcall target="genResults" />
+ </target>
+
+ <target name="runSuite" if="pluginexists">
+ <ant antfile="${eclipse-home}/plugins/${testPluginX}" dir="${eclipse-home}" />
+ </target>
+
+
+ <target name="runSuitePerf" if="pluginexists">
+ <echo message="testPluginX ${testPluginX}" />
+ <property name="junit-stylesheet" value="${eclipse-home}/plugins/org.eclipse.test_${org.eclipse.test}/JUNIT.XSL" />
+ <ant antfile="${eclipse-home}/plugins/${testPluginX}" dir="${eclipse-home}" target="performance" />
+ </target>
+
+ <target name="performance" if="performance.target.present" unless="skip.test">
+ <antcall target="setup" />
+ <property file="finalPluginsVersions.properties" />
+ <property name="library-file" value="${basedir}/test-eclipse/eclipse/plugins/org.eclipse.test_${org.eclipse.test}/library.xml" />
+
+ <echo>trying to find ${testPlugin}_*</echo>
+ <fileset id="test.plugin.file" dir="${eclipse-home}/plugins">
+ <filename name="${testPlugin}_*/test.xml" />
+ </fileset>
+ <property name="testPluginX" refid="test.plugin.file" />
+ <echo>trying to find ${testPluginX}</echo>
+ <condition property="pluginexists" value="true">
+ <not>
+ <equals arg1="${testPluginX}" arg2="" />
+ </not>
+ </condition>
+ <antcall target="runSuitePerf" />
+ <antcall target="genResults" />
+ </target>
+
+ <target name="genResults">
+ <copy file="${eclipse-home}/${report}.xml" tofile="${results}/xml/${report}_${platform}.xml" failonerror="false" />
+ <property name="junit-stylesheet" value="${eclipse-home}/plugins/org.eclipse.test_${org.eclipse.test}/JUNIT.XSL" />
+ <xslt style="${junit-stylesheet}" basedir="${results}/xml" destdir="${results}/html" />
+ </target>
+
+ <target name="ant">
+ <runTests testPlugin="org.eclipse.ant.tests.core" />
+ </target>
+
+ <target name="antui">
+ <runTests testPlugin="org.eclipse.ant.tests.ui" />
+ </target>
+
+ <target name="compare">
+ <runTests testPlugin="org.eclipse.compare.tests" />
+ </target>
+
+ <target name="equinoxds">
+ <runTests testPlugin="org.eclipse.equinox.ds.tests" />
+ </target>
+
+ <target name="debug">
+ <runTests testPlugin="org.eclipse.debug.tests" />
+ </target>
+
+ <target name="coreresources">
+ <runTests testPlugin="org.eclipse.core.tests.resources" />
+ </target>
+
+ <target name="coreruntime">
+ <runTests testPlugin="org.eclipse.core.tests.runtime" />
+ </target>
+
+ <target name="osgi">
+ <runTests testPlugin="org.eclipse.osgi.tests" />
+ </target>
+
+ <target name="coreexpressions">
+ <runTests testPlugin="org.eclipse.core.expressions.tests" />
+ </target>
+
+ <target name="ltkuirefactoringtests">
+ <runTests testPlugin="org.eclipse.ltk.ui.refactoring.tests" />
+ </target>
+
+ <target name="ltkcorerefactoringtests">
+ <runTests testPlugin="org.eclipse.ltk.core.refactoring.tests" />
+ </target>
+
+ <target name="text">
+ <runTests testPlugin="org.eclipse.text.tests" />
+ </target>
+
+ <target name="jface">
+ <runTests testPlugin="org.eclipse.jface.text.tests" />
+ </target>
+
+ <target name="jfacedatabinding">
+ <runTests testPlugin="org.eclipse.jface.tests.databinding" />
+ </target>
+
+ <target name="filebuffers">
+ <runTests testPlugin="org.eclipse.core.filebuffers.tests" />
+ </target>
+
+ <target name="jdttext" unless="skip.jdttext">
+ <runTests testPlugin="org.eclipse.jdt.text.tests" />
+ </target>
+
+ <target name="relEng" depends="setRuntimeArchive">
+ <runTests testPlugin="org.eclipse.releng.tests" />
+ <move todir="${results}/chkpii" includeEmptyDirs="no" failonerror="false">
+ <fileset dir="${results}/chkpii" />
+ <mapper type="glob" from="*" to="${platform}_*" />
+ </move>
+ </target>
+
+ <target name="ua">
+ <runTests testPlugin="org.eclipse.ua.tests" />
+ </target>
+
+ <target name="uadoc">
+ <runTests testPlugin="org.eclipse.ua.tests.doc" />
+ </target>
+
+ <target name="coretestsnet">
+ <runTests testPlugin="org.eclipse.core.tests.net" />
+ </target>
+
+ <target name="jdtcorecompiler" depends="setJVMProperties">
+ <condition property="jvm" value="${J2SE-5.0}">
+ <isset property="J2SE-5.0" />
+ </condition>
+ <runTests testPlugin="org.eclipse.jdt.core.tests.compiler" />
+ </target>
+
+ <target name="jdtapt" depends="setJVMProperties">
+ <property name="jvm" value="${J2SE-5.0}" />
+ <!--only run test if J2SE-5.0 property set-->
+ <condition property="skip.test">
+ <not>
+ <isset property="J2SE-5.0" />
+ </not>
+ </condition>
+ <runTests testPlugin="org.eclipse.jdt.apt.tests" />
+ </target>
+
+ <target name="jdtaptpluggable" depends="setJVMProperties">
+ <property name="jvm" value="${J2SE-6.0}" />
+ <!--only run test if J2SE-5.0 property set-->
+ <condition property="skip.test">
+ <not>
+ <isset property="J2SE-6.0" />
+ </not>
+ </condition>
+ <runTests testPlugin="org.eclipse.jdt.apt.pluggable.tests" />
+ </target>
+
+
+ <target name="jdtcorebuilder" depends="setJVMProperties">
+ <!--Run with 1.5 vm if it is available-->
+ <condition property="jvm" value="${J2SE-5.0}">
+ <isset property="J2SE-5.0" />
+ </condition>
+ <runTests testPlugin="org.eclipse.jdt.core.tests.builder" />
+ </target>
+
+ <target name="jdtcompilertool" depends="setJVMProperties">
+ <property name="jvm" value="${J2SE-6.0}" />
+ <!--only run test if J2SE-6.0 property set-->
+ <condition property="skip.test">
+ <not>
+ <isset property="J2SE-6.0" />
+ </not>
+ </condition>
+ <runTests testPlugin="org.eclipse.jdt.compiler.tool.tests" />
+ </target>
+
+ <target name="jdtcompilerapt" depends="setJVMProperties">
+ <property name="jvm" value="${J2SE-6.0}" />
+ <!--only run test if J2SE-6.0 property set-->
+ <condition property="skip.test">
+ <not>
+ <isset property="J2SE-6.0" />
+ </not>
+ </condition>
+ <runTests testPlugin="org.eclipse.jdt.compiler.apt.tests" />
+ </target>
+
+ <target name="jdtcoremodel" depends="setJVMProperties">
+ <condition property="jvm" value="${J2SE-5.0}">
+ <isset property="J2SE-5.0" />
+ </condition>
+ <runTests testPlugin="org.eclipse.jdt.core.tests.model" />
+ </target>
+
+ <target name="jdtcoreperf">
+ <runTests testPlugin="org.eclipse.jdt.core.tests.performance" />
+ </target>
+
+ <target name="jdtdebug">
+ <runTests testPlugin="org.eclipse.jdt.debug.tests" />
+ </target>
+
+ <target name="jdtui">
+ <runTests testPlugin="org.eclipse.jdt.ui.tests" />
+ </target>
+
+ <target name="jdtuirefactoring">
+ <runTests testPlugin="org.eclipse.jdt.ui.tests.refactoring" />
+ </target>
+
+ <target name="pdeui">
+ <runTests testPlugin="org.eclipse.pde.ui.tests" />
+ </target>
+
+ <target name="pdebuild">
+ <property name="pdebuild" value="true" />
+ <runTests testPlugin="org.eclipse.pde.build.tests" />
+ </target>
+
+ <target name="swt">
+ <runTests testPlugin="org.eclipse.swt.tests" />
+ </target>
+
+ <target name="teamcore">
+ <runTests testPlugin="org.eclipse.team.tests.core" />
+ </target>
+
+ <target name="teamcvs">
+ <property name="teamcvs" value="true" />
+ <runTests testPlugin="org.eclipse.team.tests.cvs.core" />
+ </target>
+
+ <target name="ui">
+ <runTests testPlugin="org.eclipse.ui.tests" />
+ </target>
+
+ <target name="uinavigator">
+ <runTests testPlugin="org.eclipse.ui.tests.navigator" />
+ </target>
+
+ <target name="uircp">
+ <runTests testPlugin="org.eclipse.ui.tests.rcp" />
+ </target>
+
+ <target name="uiforms">
+ <runTests testPlugin="org.eclipse.ui.tests.forms" />
+ </target>
+
+ <target name="uieditors">
+ <runTests testPlugin="org.eclipse.ui.editors.tests" />
+ </target>
+
+ <target name="uiperformance">
+ <runTests testPlugin="org.eclipse.ui.tests.performance" />
+ </target>
+
+ <target name="uiviews">
+ <runTests testPlugin="org.eclipse.ui.tests.views.properties.tabbed" />
+ </target>
+
+ <target name="uiworkbenchtexteditor">
+ <runTests testPlugin="org.eclipse.ui.workbench.texteditor.tests" />
+ </target>
+
+ <target name="update">
+ <runTests testPlugin="org.eclipse.update.tests.core" />
+ </target>
+
+ <target name="pdeapitooling" depends="setJVMProperties">
+ <property name="jvm" value="${J2SE-5.0}" />
+ <!--only run test if J2SE-5.0 property set-->
+ <condition property="skip.test">
+ <not>
+ <isset property="J2SE-5.0" />
+ </not>
+ </condition>
+ <runTests testPlugin="org.eclipse.pde.api.tools.tests" />
+ </target>
+
+ <target name="equinoxsecurity">
+ <runTests testPlugin="org.eclipse.equinox.security.tests" />
+ </target>
+
+ <target name="equinoxp2" depends="setJVMProperties">
+ <property name="jvm" value="${J2SE-5.0}" />
+ <!--only run test if J2SE-5.0 property set-->
+ <condition property="skip.test">
+ <not>
+ <isset property="J2SE-5.0" />
+ </not>
+ </condition>
+ <runTests testPlugin="org.eclipse.equinox.p2.tests" />
+ </target>
+
+ <target name="equinoxp2ui" depends="setJVMProperties">
+ <property name="jvm" value="${J2SE-5.0}" />
+ <!--only run test if J2SE-5.0 property set-->
+ <condition property="skip.test">
+ <not>
+ <isset property="J2SE-5.0" />
+ </not>
+ </condition>
+ <runTests testPlugin="org.eclipse.equinox.p2.tests.ui" />
+ </target>
+
+ <target name="equinoxp2discovery" depends="setJVMProperties">
+ <property name="jvm" value="${J2SE-5.0}" />
+ <!--only run test if J2SE-5.0 property set-->
+ <condition property="skip.test">
+ <not>
+ <isset property="J2SE-5.0" />
+ </not>
+ </condition>
+ <runTests testPlugin="org.eclipse.equinox.p2.tests.discovery" />
+ </target>
+
+ <target name="search">
+ <runTests testPlugin="org.eclipse.search.tests" />
+ </target>
+
+ <target name="pdeds">
+ <runTests testPlugin="org.eclipse.pde.ds.tests" />
+ </target>
+
+ <target name="bidi">
+ <runTests testPlugin="org.eclipse.equinox.bidi.tests" />
+ </target>
+
+ <macrodef name="jacocoreport">
+ <attribute name="pluginName" />
+ <attribute name="reportTitle" />
+ <sequential>
+ <property name="reportunzipsource" value="${basedir}/reportunzipsource" />
+ <delete dir="${reportunzipsource}" />
+ <mkdir dir="${reportunzipsource}" />
+ <unzip src="${basedir}/test-eclipse/eclipse/plugins/@{pluginName}.source_${@{pluginName}.source}.jar" dest="${reportunzipsource}" />
+ <jacoco:report>
+ <executiondata>
+ <file file="${exec.file}" />
+ </executiondata>
+ <structure name="@{reportTitle}">
+ <group name="@{pluginName}">
+ <classfiles>
+ <file file="${basedir}/test-eclipse/eclipse/plugins/@{pluginName}_${@{pluginName}}.jar" />
+ </classfiles>
+ <sourcefiles>
+ <fileset dir="${reportunzipsource}" includes="**/*.java" />
+ </sourcefiles>
+ </group>
+ </structure>
+ <html destdir="${results}/reports/@{pluginName}_${@{pluginName}}" />
+ </jacoco:report>
+ </sequential>
+ </macrodef>
+
+
+ <target name="generateJacocoReport" if="codecoverage">
+ <echo message="Coverage output location = ${coverage-output}" />
+ <mkdir dir="${coverage-output}" />
+ <mkdir dir="${results}/reports" />
+ <property name="exec.file" location="${coverage-output}/jacoco_merge.exec" />
+ <property file="finalPluginsVersions.properties" />
+ <taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
+ <classpath path="${basedir}/test-eclipse/eclipse/plugins/org.eclipse.test_${org.eclipse.test}/lib/jacocoant.jar" />
+ </taskdef>
+ <jacoco:merge destfile="${exec.file}">
+ <fileset dir="${coverage-output}" includes="*.exec" />
+ </jacoco:merge>
+ <antcall target="alljacocoreports" />
+ </target>
+
+ <target name="alljacocoreports">
+ <jacocoreport pluginName="org.eclipse.ant.core" reportTitle="org.eclipse.ant.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ant.launching" reportTitle="org.eclipse.ant.launching Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ant.ui" reportTitle="org.eclipse.ant.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.compare" reportTitle="org.eclipse.compare Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.compare.core" reportTitle="org.eclipse.compare.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.commands" reportTitle="org.eclipse.core.commands Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.contenttype" reportTitle="org.eclipse.core.contenttype Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.databinding" reportTitle="org.eclipse.core.databinding Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.databinding.beans" reportTitle="org.eclipse.core.databinding.beans Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.databinding.observable" reportTitle="org.eclipse.core.databinding.observable Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.databinding.property" reportTitle="org.eclipse.core.databinding.property Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.expressions" reportTitle="org.eclipse.core.expressions Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.externaltools" reportTitle="org.eclipse.core.externaltools Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.filebuffers" reportTitle="org.eclipse.core.filebuffers Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.filesystem" reportTitle="org.eclipse.core.filesystem Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.jobs" reportTitle="org.eclipse.core.jobs Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.resources" reportTitle="org.eclipse.core.resources Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.net" reportTitle="org.eclipse.core.net Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.runtime" reportTitle="org.eclipse.core.runtime Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.runtime.compatibility" reportTitle="org.eclipse.core.runtime.compatibility Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.runtime.compatibility.auth" reportTitle="org.eclipse.core.runtime.compatibility.auth Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.core.variables" reportTitle="org.eclipse.core.variables Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.debug.core" reportTitle="org.eclipse.debug.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.debug.ui" reportTitle="org.eclipse.debug.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.app" reportTitle="org.eclipse.equinox.app Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.bidi" reportTitle="org.eclipse.equinox.bidi Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.common" reportTitle="org.eclipse.equinox.common Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.event" reportTitle="org.eclipse.equinox.event Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.ds" reportTitle="org.eclipse.equinox.ds Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.frameworkadmin" reportTitle="org.eclipse.equinox.frameworkadmin Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.frameworkadmin.equinox" reportTitle="org.eclipse.equinox.frameworkadmin.equinox Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.http.jetty" reportTitle="org.eclipse.equinox.http.jetty Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.jsp.jasper" reportTitle="org.eclipse.equinox.jsp.jasper Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.jsp.jasper.registry" reportTitle="org.eclipse.equinox.jsp.jasper.registry Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.launcher" reportTitle="org.eclipse.equinox.launcher Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.artifact.repository" reportTitle="org.eclipse.equinox.p2.artifact.repository Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.console" reportTitle="org.eclipse.equinox.p2.console Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.core" reportTitle="org.eclipse.equinox.p2.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.director" reportTitle="org.eclipse.equinox.p2.director Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.director.app" reportTitle="org.eclipse.equinox.p2.director.app Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.directorywatcher" reportTitle="org.eclipse.equinox.p2.directorywatcher Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.engine" reportTitle="org.eclipse.equinox.p2.engine Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.extensionlocation" reportTitle="org.eclipse.equinox.p2.extensionlocation Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.garbagecollector" reportTitle="org.eclipse.equinox.p2.garbagecollector Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.jarprocessor" reportTitle="org.eclipse.equinox.p2.jarprocessor Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.metadata" reportTitle="org.eclipse.equinox.p2.metadata Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.metadata.repository" reportTitle="org.eclipse.equinox.p2.metadata.repository Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.operations" reportTitle="org.eclipse.equinox.p2.operations Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.publisher" reportTitle="org.eclipse.equinox.p2.publisher Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.ql" reportTitle="org.eclipse.equinox.p2.ql Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.reconciler.dropins" reportTitle="org.eclipse.equinox.p2.reconciler.dropins Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.repository" reportTitle="org.eclipse.equinox.p2.repository Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.repository.tools" reportTitle="org.eclipse.equinox.p2.repository.tools Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.touchpoint.eclipse" reportTitle="org.eclipse.equinox.p2.touchpoint.eclipse Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.touchpoint.natives" reportTitle="org.eclipse.equinox.p2.touchpoint.natives Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.transport.ecf" reportTitle="org.eclipse.equinox.p2.transport.ecf Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.ui" reportTitle="org.eclipse.equinox.p2.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.ui.sdk" reportTitle="org.eclipse.equinox.p2.ui.sdk Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.ui.sdk.scheduler" reportTitle="org.eclipse.equinox.p2.ui.sdk.scheduler Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.updatechecker" reportTitle="org.eclipse.equinox.p2.updatechecker Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.p2.updatesite" reportTitle="org.eclipse.equinox.p2.updatesite Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.preferences" reportTitle="org.eclipse.equinox.preferences Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.registry" reportTitle="org.eclipse.equinox.registry Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.security" reportTitle="org.eclipse.equinox.security Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.security.ui" reportTitle="org.eclipse.equinox.security.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.simpleconfigurator" reportTitle="org.eclipse.equinox.simpleconfigurator Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.simpleconfigurator.manipulator" reportTitle="org.eclipse.equinox.simpleconfigurator.manipulator Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.equinox.util" reportTitle="org.eclipse.equinox.util Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.help" reportTitle="org.eclipse.help Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.help.appserver" reportTitle="org.eclipse.help.appserver Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.help.base" reportTitle="org.eclipse.help.base Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.help.ui" reportTitle="org.eclipse.help.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.help.webapp" reportTitle="org.eclipse.help.webapp Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt" reportTitle="org.eclipse.jdt Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.apt.core" reportTitle="org.eclipse.jdt.apt.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.apt.pluggable.core" reportTitle="org.eclipse.jdt.apt.pluggable.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.apt.ui" reportTitle="org.eclipse.jdt.apt.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.compiler.apt" reportTitle="org.eclipse.jdt.compiler.apt Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.compiler.tool" reportTitle="org.eclipse.jdt.compiler.tool Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.core" reportTitle="org.eclipse.jdt.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.core.manipulation" reportTitle="org.eclipse.jdt.core.manipulation Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.debug.ui" reportTitle="org.eclipse.jdt.debug.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.junit" reportTitle="org.eclipse.jdt.junit Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.junit4.runtime" reportTitle="org.eclipse.jdt.junit4.runtime Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.junit.core" reportTitle="org.eclipse.jdt.junit.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.junit.runtime" reportTitle="org.eclipse.jdt.junit.runtime Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.launching" reportTitle="org.eclipse.jdt.launching Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jdt.ui" reportTitle="org.eclipse.jdt.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jface" reportTitle="org.eclipse.jface Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jface.databinding" reportTitle="org.eclipse.jface.databinding Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jface.text" reportTitle="org.eclipse.jface.text Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jsch.core" reportTitle="org.eclipse.jsch.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.jsch.ui" reportTitle="org.eclipse.jsch.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ltk.core.refactoring" reportTitle="org.eclipse.ltk.core.refactoring Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ltk.ui.refactoring" reportTitle="org.eclipse.ltk.ui.refactoring Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.osgi" reportTitle="org.eclipse.osgi Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.osgi.services" reportTitle="org.eclipse.osgi.services Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.osgi.util" reportTitle="org.eclipse.osgi.util Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde" reportTitle="org.eclipse.pde Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.api.tools" reportTitle="org.eclipse.pde.api.tools Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.api.tools.ui" reportTitle="org.eclipse.pde.api.tools.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.core" reportTitle="org.eclipse.pde.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.ds.core" reportTitle="org.eclipse.pde.ds.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.ds.ui" reportTitle="org.eclipse.pde.ds.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.junit.runtime" reportTitle="org.eclipse.pde.junit.runtime Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.launching" reportTitle="org.eclipse.pde.launching Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.runtime" reportTitle="org.eclipse.pde.runtime Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.ua.core" reportTitle="org.eclipse.pde.ua.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.ua.ui" reportTitle="org.eclipse.pde.ua.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.ui" reportTitle="org.eclipse.pde.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.pde.ui.templates" reportTitle="org.eclipse.pde.ui.templates Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.search" reportTitle="org.eclipse.search Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.team.core" reportTitle="org.eclipse.team.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.team.cvs.core" reportTitle="org.eclipse.team.cvs.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.team.cvs.ssh2" reportTitle="org.eclipse.team.cvs.ssh2 Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.team.cvs.ui" reportTitle="org.eclipse.team.cvs.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.team.ui" reportTitle="org.eclipse.team.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.text" reportTitle="org.eclipse.text Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui" reportTitle="org.eclipse.ui Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.browser" reportTitle="org.eclipse.ui.browser Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.cheatsheets" reportTitle="org.eclipse.ui.cheatsheets Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.console" reportTitle="org.eclipse.ui.console Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.editors" reportTitle="org.eclipse.ui.editors Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.externaltools" reportTitle="org.eclipse.ui.externaltools Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.forms" reportTitle="org.eclipse.ui.forms Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.ide" reportTitle="org.eclipse.ui.ide Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.ide.application" reportTitle="org.eclipse.ui.ide.application Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.intro" reportTitle="org.eclipse.ui.intro Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.net" reportTitle="org.eclipse.ui.net Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.presentations.r21" reportTitle="org.eclipse.ui.presentations.r21 Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.views" reportTitle="org.eclipse.ui.views Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.views.log" reportTitle="org.eclipse.ui.views.log Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.views.properties.tabbed" reportTitle="org.eclipse.ui.views.properties.tabbed Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.workbench" reportTitle="org.eclipse.ui.workbench Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.ui.workbench.texteditor" reportTitle="org.eclipse.ui.workbench.texteditor Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.update.configurator" reportTitle="org.eclipse.update.configurator Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.update.core" reportTitle="org.eclipse.update.core Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.update.scheduler" reportTitle="org.eclipse.update.scheduler Code Coverage" />
+ <jacocoreport pluginName="org.eclipse.update.ui" reportTitle="org.eclipse.update.ui Code Coverage" />
+ </target>
+
+ <target name="all">
+ <antcall target="equinoxp2" />
+ <antcall target="equinoxp2ui" />
+ <antcall target="pdeui" />
+ <antcall target="jdtcompilertool" />
+ <antcall target="jdtcompilerapt" />
+ <antcall target="jdttext" />
+ <antcall target="ant" />
+ <antcall target="compare" />
+ <antcall target="coreruntime" />
+ <antcall target="coreresources" />
+ <antcall target="osgi" />
+ <antcall target="coreexpressions" />
+ <antcall target="update" />
+ <antcall target="teamcore" />
+ <antcall target="jdtcoreperf" />
+ <antcall target="jdtcorebuilder" />
+ <antcall target="jdtcorecompiler" />
+ <antcall target="uiperformance" />
+ <antcall target="uieditors" />
+ <antcall target="uinavigator" />
+ <antcall target="uiworkbenchtexteditor" />
+ <antcall target="uircp" />
+ <antcall target="uiviews" />
+ <antcall target="jdtdebug" />
+ <antcall target="jdtui" />
+ <antcall target="jdtuirefactoring" />
+ <antcall target="ltkuirefactoringtests" />
+ <antcall target="ltkcorerefactoringtests" />
+ <antcall target="text" />
+ <antcall target="jface" />
+ <antcall target="jfacedatabinding" />
+ <antcall target="filebuffers" />
+ <antcall target="antui" />
+ <antcall target="coretestsnet" />
+ <antcall target="jdtapt" />
+ <antcall target="pdebuild" />
+ <antcall target="jdtaptpluggable" />
+ <antcall target="ua" />
+ <antcall target="uiforms" />
+ <antcall target="pdeapitooling" />
+ <antcall target="equinoxsecurity" />
+ <antcall target="search" />
+ <antcall target="pdeds" />
+ <antcall target="jdtcoremodel" />
+ <antcall target="uadoc" />
+ <antcall target="debug" />
+ <antcall target="ui" />
+ <antcall target="relEng" />
+ <antcall target="swt" />
+ <antcall target="teamcvs" />
+ <antcall target="equinoxds" />
+ <antcall target="equinoxp2discovery" />
+ <antcall target="bidi" />
+
+ <antcall target="generateJacocoReport" />
+
+
+ </target>
+</project>
+
diff --git a/TMP/eclipse-junit-tests/testScripts/CVS/Entries b/TMP/eclipse-junit-tests/testScripts/CVS/Entries
new file mode 100644
index 0000000..c4c3b9b
--- /dev/null
+++ b/TMP/eclipse-junit-tests/testScripts/CVS/Entries
@@ -0,0 +1,5 @@
+/readme.html/1.16/Tue Jun 7 13:22:45 2011/-kk/
+/runtests/1.34/Tue Jun 7 13:22:45 2011/-kb/
+/runtests.bat/1.10/Wed Jan 19 15:44:27 2011/-kk/
+/runtests.sh/1.7/Tue Jun 7 13:22:45 2011//
+/test.xml/1.213/Fri Nov 11 14:59:52 2011/-kk/
diff --git a/TMP/eclipse-junit-tests/testScripts/CVS/Repository b/TMP/eclipse-junit-tests/testScripts/CVS/Repository
new file mode 100644
index 0000000..533fddf
--- /dev/null
+++ b/TMP/eclipse-junit-tests/testScripts/CVS/Repository
@@ -0,0 +1 @@
+org.eclipse.releng.eclipsebuilder/eclipse/buildConfigs/sdk.tests/testScripts
diff --git a/TMP/eclipse-junit-tests/testScripts/CVS/Root b/TMP/eclipse-junit-tests/testScripts/CVS/Root
new file mode 100644
index 0000000..2d37d16
--- /dev/null
+++ b/TMP/eclipse-junit-tests/testScripts/CVS/Root
@@ -0,0 +1 @@
+:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse
diff --git a/pom.xml b/pom.xml
index 502294f..e3d4b78 100644
--- a/pom.xml
+++ b/pom.xml
@@ -71,5 +71,6 @@
<module>TMP/org.eclipse.jdt.source</module>
<module>TMP/org.eclipse.pde.source</module>
<module>TMP/org.eclipse.sdk.epp</module>
+ <module>TMP/eclipse-junit-tests</module>
</modules>
</project>