From 6e03c0959cc4f1537a0f8c160e9885deea21bcee Mon Sep 17 00:00:00 2001
From: Christophe Sovant <christophe.sovant@forgerock.com>
Date: Thu, 18 Sep 2008 15:02:57 +0000
Subject: [PATCH] Issue 3030: refactoring ant build (part I)

---
 opends/tests/staf-tests/shared/ant/SunOS.properties          |    0 
 opends/tests/staf-tests/shared/ant/windows-x86-32.properties |    0 
 opends/tests/staf-tests/shared/ant/Linux.properties          |    0 
 opends/tests/staf-tests/shared/ant/SunOS-x86.properties      |    0 
 opends/tests/staf-tests/shared/staf/functional-tests.cfg     |   10 
 opends/tests/staf-tests/shared/staf/stress-tests.cfg         |    0 
 opends/tests/staf-tests/build                                |    4 
 opends/tests/staf-tests/shared/tests/config.py.stubs         |    0 
 opends/tests/staf-tests/shared/tests/runStressTests.xml      |    2 
 opends/tests/staf-tests/shared/staf/replay.bat               |    0 
 opends/tests/staf-tests/shared/ant/windows-x86-64.properties |    0 
 opends/tests/staf-tests/shared/ant/windows.properties        |    0 
 opends/tests/staf-tests/shared/ant/staf-installer.properties |   18 +
 opends/tests/staf-tests/shared/tests/runFuncTests.xml        |    2 
 opends/tests/staf-tests/shared/ant/SunOS-sparc.properties    |    0 
 /dev/null                                                    |  524 ----------------------------------------------------
 opends/tests/staf-tests/shared/ant/staf-installer.xml        |   29 +-
 opends/tests/staf-tests/shared/dsml/dsmlService.jar          |    0 
 opends/tests/staf-tests/build.bat                            |    2 
 opends/tests/staf-tests/shared/staf/replay.sh                |    0 
 opends/tests/staf-tests/shared/tests/runTestJob.xml          |    2 
 opends/tests/staf-tests/shared/staf/failure.html             |    0 
 22 files changed, 36 insertions(+), 557 deletions(-)

diff --git a/opends/tests/staf-tests/stress-tests/build b/opends/tests/staf-tests/build
similarity index 93%
rename from opends/tests/staf-tests/stress-tests/build
rename to opends/tests/staf-tests/build
index ba6891e..96c5a76 100755
--- a/opends/tests/staf-tests/stress-tests/build
+++ b/opends/tests/staf-tests/build
@@ -23,7 +23,7 @@
 # CDDL HEADER END
 #
 #
-#      Copyright 2008 Sun Microsystems, Inc.
+#      Copyright 2007-2008 Sun Microsystems, Inc.
 
 
 # Change to the location of this build script.
@@ -48,4 +48,4 @@
 ANT_HOME=`cd ../..;pwd`/ext/ant
 export ANT_HOME
 # Execute the ant script and pass it any additional command-line arguments.
-$ANT_HOME/bin/ant -lib $OPENDS_LIB/mail.jar:$OPENDS_LIB/activation.jar -f staf-installer.xml ${*}
+$ANT_HOME/bin/ant -lib $OPENDS_LIB/mail.jar:$OPENDS_LIB/activation.jar -f shared/ant/staf-installer.xml ${*}
diff --git a/opends/tests/staf-tests/stress-tests/build.bat b/opends/tests/staf-tests/build.bat
old mode 100755
new mode 100644
similarity index 96%
rename from opends/tests/staf-tests/stress-tests/build.bat
rename to opends/tests/staf-tests/build.bat
index 64ecf4c..7f9efd3
--- a/opends/tests/staf-tests/stress-tests/build.bat
+++ b/opends/tests/staf-tests/build.bat
@@ -47,6 +47,6 @@
 if not "%*" == "" echo   your parameters=%*
 echo Now running ant ...
 set OPENDS_LIB=%FT_HOME%\..\..\lib
-"%ANT_HOME%\bin\ant" -lib "%OPENDS_LIB%\mail.jar;%OPENDS_LIB%\activation.jar" -f staf-installer.xml %*
+"%ANT_HOME%\bin\ant" -lib "%OPENDS_LIB%\mail.jar;%OPENDS_LIB%\activation.jar" -f shared\ant\staf-installer.xml %*
 
 :end
diff --git a/opends/tests/staf-tests/functional-tests/build b/opends/tests/staf-tests/functional-tests/build
deleted file mode 100755
index c50d17a..0000000
--- a/opends/tests/staf-tests/functional-tests/build
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/bin/sh
-
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License").  You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at
-# trunk/opends/resource/legal-notices/OpenDS.LICENSE
-# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at
-# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
-# add the following below this CDDL HEADER, with the fields enclosed
-# information:
-#      Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-#      Copyright 2007-2008 Sun Microsystems, Inc.
-
-
-# Change to the location of this build script.
-cd `dirname $0`
-
-
-# See if JAVA_HOME is set.  If not, then see if there is a java executable in
-# the path and try to figure it out.
-if test -z "${JAVA_HOME}"
-then
-  JAVA_HOME=`java -cp ../../../resource FindJavaHome`
-  if test -z "${JAVA_HOME}"
-  then
-    echo "Please set JAVA_HOME to the root of a Java 5.0 installation."
-    exit 1
-  else
-    export JAVA_HOME
-  fi
-fi
-
-OPENDS_LIB=`cd ../../../lib;pwd`
-ANT_HOME=`cd ../../..;pwd`/ext/ant
-export ANT_HOME
-# Execute the ant script and pass it any additional command-line arguments.
-$ANT_HOME/bin/ant -lib $OPENDS_LIB/mail.jar:$OPENDS_LIB/activation.jar -f staf-installer.xml ${*}
diff --git a/opends/tests/staf-tests/functional-tests/build.bat b/opends/tests/staf-tests/functional-tests/build.bat
deleted file mode 100644
index 82b8b42..0000000
--- a/opends/tests/staf-tests/functional-tests/build.bat
+++ /dev/null
@@ -1,52 +0,0 @@
-@echo off
-
-rem CDDL HEADER START
-rem
-rem The contents of this file are subject to the terms of the
-rem Common Development and Distribution License, Version 1.0 only
-rem (the "License").  You may not use this file except in compliance
-rem with the License.
-rem
-rem You can obtain a copy of the license at
-rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
-rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
-rem See the License for the specific language governing permissions
-rem and limitations under the License.
-rem
-rem When distributing Covered Code, include this CDDL HEADER in each
-rem file and include the License file at
-rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
-rem add the following below this CDDL HEADER, with the fields enclosed
-rem information:
-rem      Portions Copyright [yyyy] [name of copyright owner]
-rem
-rem CDDL HEADER END
-rem
-rem
-rem      Copyright 2008 Sun Microsystems, Inc.
-
-setlocal
-
-rem These are the variables we need to run the functional tests
-set FT_HOME=%~dP0
-set ANT_HOME=%FT_HOME%\..\..\..\ext\ant
-
-if "%JAVA_HOME%" == "" goto noJavaHome
-goto runAnt
-
-:noJavaHome
-echo Error: JAVA_HOME environment variable is not set.
-echo        Please set it to a valid Java 5 Development Kit installation.
-goto end
-
-:runAnt
-rem echo a quick summary of what this script did
-echo using the following variables:
-echo   ANT_HOME=%ANT_HOME%
-echo   JAVA_HOME=%JAVA_HOME%
-if not "%*" == "" echo   your parameters=%*
-echo Now running ant ...
-set OPENDS_LIB=%FT_HOME%\..\..\..\lib
-"%ANT_HOME%\bin\ant" -lib "%OPENDS_LIB%\mail.jar;%OPENDS_LIB%\activation.jar" -f staf-installer.xml %*
-
-:end
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/failure.html b/opends/tests/staf-tests/functional-tests/staf-installer/failure.html
deleted file mode 100644
index f30fbbc..0000000
--- a/opends/tests/staf-tests/functional-tests/staf-installer/failure.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<html>
-  <body>
-    <center>
-      <img src="http://pangea.stanford.edu/courses/GES41L/motivation/failure.gif">
-    </center>
-  </body>
-</html>
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/Linux.properties b/opends/tests/staf-tests/shared/ant/Linux.properties
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/Linux.properties
rename to opends/tests/staf-tests/shared/ant/Linux.properties
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/SunOS-sparc.properties b/opends/tests/staf-tests/shared/ant/SunOS-sparc.properties
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/SunOS-sparc.properties
rename to opends/tests/staf-tests/shared/ant/SunOS-sparc.properties
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/SunOS-x86.properties b/opends/tests/staf-tests/shared/ant/SunOS-x86.properties
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/SunOS-x86.properties
rename to opends/tests/staf-tests/shared/ant/SunOS-x86.properties
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/SunOS.properties b/opends/tests/staf-tests/shared/ant/SunOS.properties
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/SunOS.properties
rename to opends/tests/staf-tests/shared/ant/SunOS.properties
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/staf-installer.properties b/opends/tests/staf-tests/shared/ant/staf-installer.properties
similarity index 80%
rename from opends/tests/staf-tests/functional-tests/staf-installer/staf-installer.properties
rename to opends/tests/staf-tests/shared/ant/staf-installer.properties
index 58d3193..c17b1f7 100644
--- a/opends/tests/staf-tests/functional-tests/staf-installer/staf-installer.properties
+++ b/opends/tests/staf-tests/shared/ant/staf-installer.properties
@@ -23,13 +23,15 @@
 #
 #      Copyright 2007-2008 Sun Microsystems, Inc.
 
+temp.dir=${project.home}${file.separator}tests${file.separator}staf-tests${file.separator}temp
+
 # Global section - top
 host.name=localhost
 # Global section - bottom
 
 # Staf section - top
-staf.home=${project.home}${file.separator}tests${file.separator}staf-tests${file.separator}functional-run
-staf.installer.dir=${basedir}${file.separator}staf-installer
+staf.home=${temp.dir}${file.separator}functional-run
+staf.installer.dir=${basedir}${file.separator}shared${file.separator}staf
 staf.install.dir=${staf.home}${file.separator}staf
 staf.bin.dir=${staf.install.dir}${file.separator}bin
 staf.config.dir=${staf.home}${file.separator}config
@@ -79,7 +81,7 @@
 bits.stax.archive=STAXV321.zip
 bits.http.archive=HTTPV300Beta13.zip
 ## where to download tomcat bits before install
-bits.webcontainer.download.dir=${project.home}${file.separator}tests${file.separator}staf-tests${file.separator}ext
+bits.webcontainer.download.dir=${staf.home}${file.separator}staf-bits
 bits.tomcat.download.url=http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.14/bin
 bits.tomcat.archive=apache-tomcat-6.0.14.zip
 # Downloader section - bottom
@@ -94,19 +96,19 @@
 # Proxy section - bottom
 
 # Tests section - top
-tests.dir=${basedir}
+tests.dir=${basedir}${file.separator}functional-tests
 tests.run.dir=${staf.home}${file.separator}run
 tests.config.dir=${tests.dir}${file.separator}config
 tests.config.file=config.py
-tests.config.stubs=${staf.installer.dir}${file.separator}${tests.config.file}.stubs
+tests.config.stubs=${basedir}${file.separator}shared${file.separator}tests${file.separator}${tests.config.file}.stubs
 tests.config=${tests.config.dir}${file.separator}${tests.config.file}
 tests.config.backup=${tests.config}.orig
-tests.xml=${tests.dir}${file.separator}testcases${file.separator}runTestJob.xml
+tests.xml=${basedir}${file.separator}shared${file.separator}tests${file.separator}runTestJob.xml
 # Tests section - bottom
 
 # test plan customization - top  <property name="test.plan.file" value="${basedir}/testcases/run-custom-suites.dat" />
-test.plan.list=sample,main_security,main_aci,main_clu,main_privileges,main_dsconfig,main_backends,main_core,main_schema,main_replication,main_indexes,main_groups,main_logging,main_plugins,main_tasks,main_virtualAttributes,main_monitoring,main_dsml,main_setup,main_snmp,main_i18n
-test.plan.dir=testcases
+test.plan.list=sample,security,aci,clu,privileges,dsconfig,backends,core,schema,replication,indexes,groups,logging,plugins,tasks,virtualAttributes,monitoring,dsml,setup,snmp,i18n
+test.plan.dir=functional-tests${file.separator}testcases
 test.plan.custom=${test.plan.dir}/run-custom-suites.dat
 test.plan.default=${test.plan.dir}/run-default-suites.dat
 # test plan customization - bottom
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer.xml b/opends/tests/staf-tests/shared/ant/staf-installer.xml
similarity index 97%
rename from opends/tests/staf-tests/functional-tests/staf-installer.xml
rename to opends/tests/staf-tests/shared/ant/staf-installer.xml
index 1a61f42..88df407 100644
--- a/opends/tests/staf-tests/functional-tests/staf-installer.xml
+++ b/opends/tests/staf-tests/shared/ant/staf-installer.xml
@@ -25,13 +25,13 @@
  !      Copyright 2008 Sun Microsystems, Inc.
  ! -->
 
-<project name="opends-staf-installer" basedir="." default="usage">
+<project name="opends-staf-installer" basedir="../.." default="usage">
   <description>
     Installer ant file for the staf platform
     This allows tests that need a running instance of staf to easily
     get one and hides all the complexity under the hood
   </description>
-  <dirname file="${basedir}/../.." property="project.home"/>
+  <dirname file="${basedir}/.." property="project.home"/>
   
   <!-- installer wide settings - top -->
     <property file="${project.home}/PRODUCT"/>
@@ -40,7 +40,7 @@
     <!-- load user properties first if they have been set -->
     <property file="user.properties"/>
     <!-- this is the file where the default values are defined                -->
-    <property file="staf-installer/staf-installer.properties"                  />
+    <property file="shared/ant/staf-installer.properties"                  />
     
     <!-- Define the os name in case we're on windows
          why do this ?
@@ -53,17 +53,17 @@
     
     <!-- Check if the current platform is supported                           -->
     <condition property="platform.supported">
-      <available file="staf-installer/${os.myname}.properties"/>
+      <available file="shared/ant/${os.myname}.properties"/>
     </condition>
     
     <!-- Load architecture specific properties
         loading this one first allows to override common properties with platform
         specific properties
     -->
-    <property file="staf-installer/${os.myname}-${os.arch}-${sun.arch.data.model}.properties" />
-    <property file="staf-installer/${os.myname}-${os.arch}.properties"         />
+    <property file="shared/ant/${os.myname}-${os.arch}-${sun.arch.data.model}.properties" />
+    <property file="shared/ant/${os.myname}-${os.arch}.properties"         />
     <!-- Load properties common to the OS regardless of architecture          -->
-    <property file="staf-installer/${os.myname}.properties"                    />
+    <property file="shared/ant/${os.myname}.properties"                    />
 
     <!-- Daily build properties -->
     <tstamp>
@@ -275,7 +275,7 @@
     <!-- adding dsml service extension -->
     <mkdir dir="${staf.install.dir}/services/dsml"/>
     <copy todir="${staf.install.dir}/services/dsml">
-      <fileset dir="${basedir}/../../ext/staf" includes="dsmlService.jar"/>
+      <fileset dir="${basedir}/shared/dsml" includes="dsmlService.jar"/>
     </copy>
 
   </target>
@@ -788,22 +788,23 @@
   </target>
   
   <target name="run-my-tests-get-contrib-check">
-    <available file="ant-contrib.zip" property="ant-contrib.downloaded" />
+    <available file="${temp.dir}/ant-contrib.zip" property="ant-contrib.downloaded" />
   </target>
   <target name="run-my-tests-get-contrib" depends="run-my-tests-get-contrib-check,download-do-prepare-check-proxy,download-do-prepare-set-proxy" unless="ant-contrib.downloaded">
-    <get src="http://easynews.dl.sourceforge.net/sourceforge/ant-contrib/ant-contrib-1.0b3-bin.zip" dest="ant-contrib.zip"/>
+    <mkdir dir="${temp.dir}" />
+    <get src="http://easynews.dl.sourceforge.net/sourceforge/ant-contrib/ant-contrib-1.0b3-bin.zip" dest="${temp.dir}/ant-contrib.zip"/>
   </target>
   <target name="run-my-tests-expand-check">
-    <available file="ant-contrib" property="ant-contrib.expanded" />
+    <available file="${temp.dir}/ant-contrib" property="ant-contrib.expanded" />
   </target>
   <target name="run-my-tests-expand" depends="run-my-tests-get-contrib,run-my-tests-expand-check" unless="ant-contrib.expanded">
-    <unzip src="ant-contrib.zip" dest="." />
+    <unzip src="${temp.dir}/ant-contrib.zip" dest="${temp.dir}" />
   </target>
 
   <target name="run-my-tests-define" depends="run-my-tests-expand">
     <taskdef resource="net/sf/antcontrib/antlib.xml">
       <classpath>
-        <fileset dir="ant-contrib"> 
+        <fileset dir="${temp.dir}/ant-contrib"> 
           <include name="**/*.jar"/>
         </fileset>
       </classpath>
@@ -1203,7 +1204,7 @@
         </and>
       </condition>
       <available file="${daily.package}" property="daily.package.downloaded"/>
-      <available file="testcases/run-custom-suites.dat" property="custom-suites.on" />
+      <available file="${tests.dir}/testcases/run-custom-suites.dat" property="custom-suites.on" />
       <available file="${staf.install.dir}" 
                 type="dir" 
                 property="staf.installed" />
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/windows-x86-32.properties b/opends/tests/staf-tests/shared/ant/windows-x86-32.properties
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/windows-x86-32.properties
rename to opends/tests/staf-tests/shared/ant/windows-x86-32.properties
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/windows-x86-64.properties b/opends/tests/staf-tests/shared/ant/windows-x86-64.properties
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/windows-x86-64.properties
rename to opends/tests/staf-tests/shared/ant/windows-x86-64.properties
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/windows.properties b/opends/tests/staf-tests/shared/ant/windows.properties
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/windows.properties
rename to opends/tests/staf-tests/shared/ant/windows.properties
diff --git a/opends/tests/staf-tests/ext/staf/dsmlService.jar b/opends/tests/staf-tests/shared/dsml/dsmlService.jar
similarity index 100%
rename from opends/tests/staf-tests/ext/staf/dsmlService.jar
rename to opends/tests/staf-tests/shared/dsml/dsmlService.jar
Binary files differ
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/failure.html b/opends/tests/staf-tests/shared/staf/failure.html
old mode 100755
new mode 100644
similarity index 100%
rename from opends/tests/staf-tests/stress-tests/staf-installer/failure.html
rename to opends/tests/staf-tests/shared/staf/failure.html
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/functional-tests.cfg b/opends/tests/staf-tests/shared/staf/functional-tests.cfg
similarity index 94%
rename from opends/tests/staf-tests/functional-tests/staf-installer/functional-tests.cfg
rename to opends/tests/staf-tests/shared/staf/functional-tests.cfg
index 7882b90..ed34917 100644
--- a/opends/tests/staf-tests/functional-tests/staf-installer/functional-tests.cfg
+++ b/opends/tests/staf-tests/shared/staf/functional-tests.cfg
@@ -86,8 +86,8 @@
 
 #DSML SERVICE CONFIGURATION
 #uncomment following if you want it to be in separate JVMs
-#SERVICE DSML LIBRARY JSTAF \
-#  EXECUTE {STAF/Config/STAFRoot}/services/dsml/dsmlService.jar  \
-#  OPTION JVMNAME=dsmlJVM  \
-#  OPTION J2=-Xmx512m -Xms128m
-
+SERVICE DSML LIBRARY JSTAF \
+  EXECUTE {STAF/Config/STAFRoot}/services/dsml/dsmlService.jar  \
+  OPTION JVMNAME=dsmlJVM  \
+  OPTION J2=-Xmx512m -Xms128m \
+  OPTION JVM=/usr/bin/java
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/replay.bat b/opends/tests/staf-tests/shared/staf/replay.bat
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/replay.bat
rename to opends/tests/staf-tests/shared/staf/replay.bat
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/replay.sh b/opends/tests/staf-tests/shared/staf/replay.sh
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/replay.sh
rename to opends/tests/staf-tests/shared/staf/replay.sh
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/stress-tests.cfg b/opends/tests/staf-tests/shared/staf/stress-tests.cfg
similarity index 100%
rename from opends/tests/staf-tests/stress-tests/staf-installer/stress-tests.cfg
rename to opends/tests/staf-tests/shared/staf/stress-tests.cfg
diff --git a/opends/tests/staf-tests/functional-tests/staf-installer/config.py.stubs b/opends/tests/staf-tests/shared/tests/config.py.stubs
similarity index 100%
rename from opends/tests/staf-tests/functional-tests/staf-installer/config.py.stubs
rename to opends/tests/staf-tests/shared/tests/config.py.stubs
diff --git a/opends/tests/staf-tests/functional-tests/testcases/runFuncTests.xml b/opends/tests/staf-tests/shared/tests/runFuncTests.xml
similarity index 99%
rename from opends/tests/staf-tests/functional-tests/testcases/runFuncTests.xml
rename to opends/tests/staf-tests/shared/tests/runFuncTests.xml
index 8edfec7..d3d7607 100755
--- a/opends/tests/staf-tests/functional-tests/testcases/runFuncTests.xml
+++ b/opends/tests/staf-tests/shared/tests/runFuncTests.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE stax SYSTEM "../../shared/stax.dtd">
+<!DOCTYPE stax SYSTEM "../stax.dtd">
 <!--
  ! CDDL HEADER START
  !
diff --git a/opends/tests/staf-tests/stress-tests/testcases/runStressTests.xml b/opends/tests/staf-tests/shared/tests/runStressTests.xml
similarity index 99%
rename from opends/tests/staf-tests/stress-tests/testcases/runStressTests.xml
rename to opends/tests/staf-tests/shared/tests/runStressTests.xml
index 6a510a7..e5ed85e 100755
--- a/opends/tests/staf-tests/stress-tests/testcases/runStressTests.xml
+++ b/opends/tests/staf-tests/shared/tests/runStressTests.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE stax SYSTEM "../../shared/stax.dtd">
+<!DOCTYPE stax SYSTEM "../stax.dtd">
 <!--
  ! CDDL HEADER START
  !
diff --git a/opends/tests/staf-tests/functional-tests/testcases/runTestJob.xml b/opends/tests/staf-tests/shared/tests/runTestJob.xml
similarity index 99%
rename from opends/tests/staf-tests/functional-tests/testcases/runTestJob.xml
rename to opends/tests/staf-tests/shared/tests/runTestJob.xml
index 275e9fd..29575cf 100644
--- a/opends/tests/staf-tests/functional-tests/testcases/runTestJob.xml
+++ b/opends/tests/staf-tests/shared/tests/runTestJob.xml
@@ -81,7 +81,7 @@
       </script>
       
       <job name="'Job: %s %s' % (STAF_REMOTE_HOSTNAME,ServerOsString) " monitor="1" clearlogs="'Enabled'" logtcstartstop="'Enabled'">
-        <job-file>'%s/testcases/runFuncTests.xml' % TESTS_DIR</job-file>
+        <job-file>'%s/shared/tests/runFuncTests.xml' % TESTS_ROOT</job-file>
         <job-scriptfiles machine="STAF_LOCAL_HOSTNAME"> STAXJobScriptFiles </job-scriptfiles>
         <job-action>
           <log>'Started sub-job %s on %s, %s' % (STAXSubJobID,STAF_REMOTE_HOSTNAME,ServerOsString )</log>
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer.xml b/opends/tests/staf-tests/stress-tests/staf-installer.xml
deleted file mode 100755
index a53323f..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer.xml
+++ /dev/null
@@ -1,1185 +0,0 @@
-<!--
- ! CDDL HEADER START
- !
- ! The contents of this file are subject to the terms of the
- ! Common Development and Distribution License, Version 1.0 only
- ! (the "License").  You may not use this file except in compliance
- ! with the License.
- !
- ! You can obtain a copy of the license at
- ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
- ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
- ! See the License for the specific language governing permissions
- ! and limitations under the License.
- !
- ! When distributing Covered Code, include this CDDL HEADER in each
- ! file and include the License file at
- ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
- ! add the following below this CDDL HEADER, with the fields enclosed
- ! by brackets "[]" replaced with your own identifying information:
- !      Portions Copyright [yyyy] [name of copyright owner]
- !
- ! CDDL HEADER END
- !
- !
- !      Copyright 2008 Sun Microsystems, Inc.
- ! -->
-
-<project name="opends-staf-installer" basedir="." default="usage">
-  <description>
-    Installer ant file for the staf platform
-    This allows tests that need a running instance of staf to easily
-    get one and hides all the complexity under the hood
-  </description>
-  <dirname file="${basedir}/.." property="project.home"/>
-  
-  <!-- installer wide settings - top -->
-    <property file="${project.home}/PRODUCT"/>
-    <property name="product.name"
-              value="${SHORT_NAME}-${MAJOR_VERSION}.${MINOR_VERSION}.${POINT_VERSION}" />
-    <!-- load user properties first if they have been set -->
-    <property file="user.properties"/>
-    <!-- this is the file where the default values are defined                -->
-    <property file="staf-installer/staf-installer.properties"                  />
-    
-    <!-- Define the os name in case we're on windows
-         why do this ?
-         the jvm returns different strings for os.name on different flavors
-         of windows ('Windows 2000', 'Windows 2003', 'Windows XP', ...) 
-    -->
-    <condition property="os.myname" value="windows" else="${os.name}">
-      <os family="windows"/>
-    </condition>
-    
-    <!-- Check if the current platform is supported                           -->
-    <condition property="platform.supported">
-      <available file="staf-installer/${os.myname}.properties"/>
-    </condition>
-    
-    <!-- Load architecture specific properties
-        loading this one first allows to override common properties with platform
-        specific properties
-    -->
-    <property file="staf-installer/${os.myname}-${os.arch}-${sun.arch.data.model}.properties" />
-    <property file="staf-installer/${os.myname}-${os.arch}.properties"         />
-    <!-- Load properties common to the OS regardless of architecture          -->
-    <property file="staf-installer/${os.myname}.properties"                    />
-
-    <!-- Daily build properties -->
-    <tstamp>
-      <format property="todays.date" pattern="yyyyMMdd"/>
-    </tstamp>
-    <tstamp>
-      <format property="yesterdays.date" pattern="yyyyMMdd" offset="-24" unit="hour"/>
-    </tstamp>
-    <condition property="daily.date" value="${todays.date}" else="${yesterdays.date}">
-      <http url="${daily.build.url}/${todays.date}${daily.build.time}/${SHORT_NAME}/build/package/${product.name}.zip"/>
-    </condition>
-    <property name="daily.package.dir" 
-              value="${staf.home}/daily-builds/${daily.date}"/>
-    <property name="daily.package" 
-              value="${daily.package.dir}/${product.name}.zip"/>
-    <property name="daily.package.url" 
-              value="${daily.build.url}/${daily.date}${daily.build.time}/${SHORT_NAME}/build/package/${product.name}.zip"/>
-    
-  <!-- installer wide settings - bottom  -->
-  
-<!-- Usage section - top     -->
-  <!-- Default target => how to use this file -->
-  <target name="usage"
-          description="Gives a message that helps using this file">
-    <echo>Installer usage:
- main targets=
-   usage      : print this message
-   status     : report if the staf is installed and running
-   bootstrap  : install and start the framework
-   run-tests  : run the stress tests (requires staf installed and started)
-   run-daily  : run the stress tests on today's build
-   wipeout    : stop and uninstall the framework
- gui tools:
-   gui        : start the STAX gui
-   jvm-log    : start the STAF jvm log viewer
- subtargets=
-   download   : download the archives necessary to install the staf
-   install    : install the staf
-   start      : start the staf unless it is already running
-   stop       : stop the staf if it is already running
-   uninstall  : uninstall the staf if it is installed</echo>
-  </target>
-<!-- Usage section - bottom  -->
-  
-<!-- Downloader section - top    -->
-  <target name="download-do-prepare-check-proxy" unless="proxy.disabled">
-    <echo>Checking for proxy [${proxy.host}:${proxy.port}] as user [${proxy.user}].</echo>
-    <echo>Note: If these values do not match your environment, </echo>
-    <echo>      please use the 'configure' target</echo>
-    <condition property="proxy.enabled">
-      <and>
-        <not>
-          <http url="${bits.download.url}"/>
-        </not>
-        <isreachable host="${proxy.host}" timeout="5"/>
-      </and>
-    </condition>
-  </target>
-  <target name="download-do-prepare-set-proxy" if="proxy.enabled" >
-    <echo>Proxy detected. Configuring.</echo>
-    <setproxy 
-      proxyhost="${proxy.host}" 
-      proxyport="${proxy.port}"
-      proxyuser="${proxy.user}" 
-      proxypassword="${proxy.pass}"/>
-  </target>
-  <target 
-    name="download-do-prepare" 
-    depends="download-do-prepare-check-proxy,download-do-prepare-set-proxy">
-    <mkdir dir="${bits.download.dir}" />
-  </target>  
-  <target name="download-do-failed" unless="bits.all.downloaded" >
-    <echo>Couldn't get the bits, sorry.</echo>
-  </target>
-  <target name="download-do-succeeded" if="bits.all.downloaded" >
-    <echo>Successfully downloaded all the archives needed for installation.</echo>
-  </target>
-  
-  <target name="download-do-get-staf"  unless="bits.staf.downloaded.before">
-    <get src="${bits.download.url}/${bits.staf.archive}" 
-         dest="${bits.download.dir}/${bits.staf.archive}" />
-    <property name="bits.staf.downloaded" value="true"/>
-  </target>
-
-  <target name="download-do-get-services"  unless="bits.services.downloaded.before">
-    <get src="${bits.download.url}/${bits.email.archive}" 
-         dest="${bits.download.dir}/${bits.email.archive}" />
-    <get src="${bits.download.url}/${bits.event.archive}" 
-         dest="${bits.download.dir}/${bits.event.archive}" />
-    <get src="${bits.download.url}/${bits.eventmanager.archive}" 
-         dest="${bits.download.dir}/${bits.eventmanager.archive}" />
-    <get src="${bits.download.url}/${bits.stax.archive}" 
-         dest="${bits.download.dir}/${bits.stax.archive}" />
-    <property name="bits.services.downloaded" value="true" />
-  </target>
-  
-  <target name="download-do" 
-          if="platform.supported" 
-          depends="status-do,download-do-prepare,download-do-get-staf,download-do-get-services">
-    <condition property="bits.all.downloaded" >
-      <and>
-        <or>
-          <isset property="bits.staf.downloaded"/>
-          <isset property="bits.staf.downloaded.before" />
-        </or>
-        <or>
-          <isset property="bits.services.downloaded"/>
-          <isset property="bits.services.downloaded.before" />
-        </or>
-      </and>
-    </condition>
-    <antcall target="download-do-succeeded" />
-    <antcall target="download-do-failed"    />
-  </target>
-  
-  <target name="download-dont" unless="platform.supported">
-    <echo>${os.myname}-${os.arch} is not a supported platform</echo>
-  </target>
-  
-  <target name="download" 
-          depends="status-do,download-do,download-dont"
-          description="Download the bits necessary to install staf"/>
-
-  <target name="download-daily" depends="status-do,download-do-prepare" unless="daily.package.downloaded">
-    <mkdir dir="${daily.package.dir}"/>
-    <get src="${daily.package.url}"
-         dest="${daily.package}"/>
-  </target>
-  
-  <target name="remove-bits">
-    <delete dir="${bits.download.dir}"/>
-  </target>
-  
-  <target name="re-download" depends="remove-bits,download"/>
-<!-- Downloader section - bottom -->
-
-<!-- Installation section - top    -->
-  <target name="install-config" if="staf.install.successful">
-    <copy file="${staf.config.stubs}" tofile="${staf.config}">
-      <filterchain>
-        <expandproperties/>
-      </filterchain>
-    </copy>
-  </target>
-
-  <target name="install-services" if="staf.install.successful">
-    <unzip 
-        src="${bits.download.dir}/${bits.email.archive}" 
-        dest="${staf.install.dir}/services"/>
-    <unzip 
-        src="${bits.download.dir}/${bits.event.archive}" 
-        dest="${staf.install.dir}/services"/>
-    <unzip 
-        src="${bits.download.dir}/${bits.eventmanager.archive}" 
-        dest="${staf.install.dir}/services"/>
-    <unzip 
-        src="${bits.download.dir}/${bits.stax.archive}" 
-        dest="${staf.install.dir}/services"/>
-  </target>
-
-  <target name="install-staf-jar" 
-          description="deploy the staf bits"
-          if="staf.archive.is.jar">
-    <echo message="Installing staf, please wait, it'll take some time..."    />
-    <java jar="${bits.download.dir}/${bits.staf.archive}" fork="true">
-      <arg value="-silent" />
-      <arg line="-W license.selection=&quot;Accept&quot;" />
-      <arg line="-W stafinstalldirectory.defaultInstallLocation=&quot;${staf.install.dir}&quot;"/>
-    </java>
-    <condition property="staf.install.successful">
-      <available file="${staf.install.dir}/bin/STAF.cfg"/>
-    </condition>
-  </target>
-  
-  <target name="install-staf-tar" if="staf.archive.is.tar">
-    <delete dir="${bits.download.dir}/staf"/>
-    <gunzip
-      src="${bits.download.dir}/${bits.staf.archive}"
-      dest="${bits.download.dir}"/>
-    <untar dest="${bits.download.dir}">
-      <fileset dir="${bits.download.dir}">
-        <include name="*.tar"/>
-      </fileset>
-    </untar>
-    <chmod file="${bits.download.dir}/staf/STAFInst" perm="755"/>
-    <exec executable="${bits.download.dir}/staf/STAFInst">
-      <arg value="-source"/>
-      <arg value="${bits.download.dir}/staf"/>
-      <arg value="-target"/>
-      <arg value="${staf.install.dir}"/>
-      <arg value="-acceptlicense"/>
-    </exec>
-    <condition property="staf.install.successful">
-      <available file="${staf.install.dir}/bin/STAF.cfg"/>
-    </condition>
-  </target>
-  
-  <target name="install-staf" 
-          depends="install-staf-jar,install-staf-tar">
-    <fail unless="staf.install.successful" />
-  </target>
-  
-  <target name="install-prepare" >
-    <mkdir dir="${staf.install.dir}"/>
-    <mkdir dir="${staf.install.dir}/services"/>
-    <mkdir dir="${staf.config.dir}"/>
-  </target>
-
-  <target name="install" 
-          description="Perform framework installation" 
-          depends="status-do,install-prepare,install-staf,install-services,install-config"
-          if="bits.all.downloaded"/>
-<!-- Installation section - bottom -->
-
-<!-- Gui section - top    -->
-  <target name="gui"
-          depends="status-do"
-          description="brings up the stax gui" >
-    <condition property="gui.spawn" value="false" else="true">
-      <isset property="DEBUG"/>
-    </condition>
-    <exec
-      dir="${staf.install.dir}"
-      executable="${java.home}/bin/java"
-      spawn="${gui.spawn}">
-      <env key="${path.var}" path="${java.home}${file.separator}bin${path.separator}${staf.install.dir}${file.separator}bin${path.separator}${path.current}"/>
-      <env key="LD_LIBRARY_PATH" path="${staf.lib.dir}"/>
-      <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar${path.separator}${e.CLASSPATH}"/>
-      <env key="STAFCONVDIR" value="${staf.install.dir}/codepage"/>
-      <env key="STAFCODEPAGE" value="LATIN_1"/>
-      <arg value="-classpath"/>
-      <arg value="${staf.install.dir}/services/stax/STAXMon.jar${path.separator}${staf.lib.dir}/JSTAF.jar"/>
-      <arg value="com.ibm.staf.service.stax.STAXMonitor"/>
-    </exec>
-  </target>
-<!-- Gui section - bottom -->
-<!-- Jvmlog section - top    -->
-  <target name="jvm-log"
-          depends="status-do"
-          description="brings up the jvmlog gui" >
-    
-    <exec
-      dir="${staf.install.dir}"
-      executable="${java.home}/bin/java"
-      spawn="true">
-      <env key="${path.var}" path="${java.home}${file.separator}bin${path.separator}${staf.install.dir}${file.separator}bin${path.separator}${path.current}"/>
-      <env key="LD_LIBRARY_PATH" path="${staf.lib.dir}"/>
-      <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar${path.separator}${e.CLASSPATH}"/>
-      <env key="STAFCONVDIR" value="${staf.install.dir}/codepage"/>
-      <env key="STAFCODEPAGE" value="LATIN_1"/>
-      <arg value="-classpath"/>
-      <arg value="${staf.lib.dir}${path.separator}${staf.lib.dir}/JSTAF.jar"/>
-      <arg value="com.ibm.staf.STAFJVMLogViewer"/>
-    </exec>
-  </target>
-<!-- Jvmlog section - bottom -->
-
-<!-- Configure section - top    -->
-  <target name="configure">
-    <echo>I. STAF configuration</echo>
-    <input
-      message="I [1/1] STAF port"
-      defaultvalue="${staf.port}"
-      addproperty="staf.port.input"
-    />
-    <input
-      message="I [2/2] Host name"
-      defaultvalue="${host.name}"
-      addproperty="host.name.input"
-    />
-    <echo>II. HTTP proxy (to download the framework and/or daily builds)</echo>
-    <input
-      message="II [1/4] Proxy host"
-      defaultvalue="${proxy.host}"
-      addproperty="proxy.host.input"
-    />
-    <input
-      message="II [2/4] Proxy port"
-      defaultvalue="${proxy.port}"
-      addproperty="proxy.port.input"
-    />
-    <input
-      message="II [3/4] Proxy user"
-      defaultvalue="${proxy.user}"
-      addproperty="proxy.user.input"
-    />
-    <input
-      message="II [4/4] Proxy password"
-      defaultvalue="${proxy.pass}"
-      addproperty="proxy.pass.input"
-    />
-    <echo>III. OpenDS configuration</echo>
-    <input
-      message="III [1/5] OpenDS ldap port"
-      defaultvalue="${opends.port.ldap}"
-      addproperty="opends.port.ldap.input"
-    />
-    <input
-      message="III [2/5] OpenDS secure ldap port"
-      defaultvalue="${opends.port.ldaps}"
-      addproperty="opends.port.ldaps.input"
-    />
-    <input
-      message="III [3/5] OpenDS jmx port"
-      defaultvalue="${opends.port.jmx}"
-      addproperty="opends.port.jmx.input"
-    />
-    <input
-      message="III [4/5] OpenDS admin DN (also called root DN)"
-      defaultvalue="${opends.admin.dn}"
-      addproperty="opends.admin.dn.input"
-    />
-    <input
-      message="III [5/5] OpenDS admin password"
-      defaultvalue="${opends.admin.pwd}"
-      addproperty="opends.admin.pwd.input"
-    />
-    <echo>IV. Email configuration</echo>
-    <input
-      message="IV [1/7] Send report email?"
-      defaultvalue="${email.enabled}"
-      validargs="y,n"
-      addproperty="email.enabled.input"
-    />
-    <input
-      message="IV [2/7] Email will appear to be from"
-      defaultvalue="${email.from}"
-      addproperty="email.from.input"
-    />
-    <input
-      message="IV [3/7] Send email to"
-      defaultvalue="${email.to}"
-      addproperty="email.to.input"
-    />
-    <input
-      message="IV [4/7] SMTP server host"
-      defaultvalue="${email.server.host}"
-      addproperty="email.server.host.input"
-    />
-    <input
-      message="IV [5/7] SMTP server port"
-      defaultvalue="${email.server.port}"
-      addproperty="email.server.port.input"
-    />
-    <input
-      message="IV [6/7] SMTP server user"
-      defaultvalue="${email.server.user}"
-      addproperty="email.server.user.input"
-    />
-    <input
-      message="IV [7/7] SMTP server password"
-      defaultvalue="${email.server.pwd}"
-      addproperty="email.server.pwd.input"
-    />
-
-    <echo>Saving ...</echo>
-    <echo
-      file="user.properties">staf.port=${staf.port.input}
-host.name=${host.name.input}
-proxy.host=${proxy.host.input}
-proxy.port=${proxy.port.input}
-proxy.user=${proxy.user.input}
-proxy.pass=${proxy.pass.input}
-opends.port.ldap=${opends.port.ldap.input}
-opends.port.ldaps=${opends.port.ldaps.input}
-opends.port.jmx=${opends.port.jmx.input}
-opends.admin.dn=${opends.admin.dn.input}
-opends.admin.pwd=${opends.admin.pwd.input}
-email.enabled=${email.enabled.input}
-email.from=${email.from.input}
-email.to=${email.to.input}
-email.server.host=${email.server.host.input}
-email.server.port=${email.server.port.input}
-email.server.user=${email.server.user.input}
-email.server.pwd=${email.server.pwd.input}
-</echo>
-  </target>
-  <target name="unconfigure">
-    <delete file="user.properties"/>
-  </target>
-<!-- Configure section - bottom -->
-
-<!-- Run tests section - top    -->
-  <target name="run-tests-build-pkg" 
-    if="product.package.build" 
-    depends="run-tests-get-pkg">
-    <ant dir="${project.home}" 
-      antfile="${project.home}/build.xml" 
-      target="package"/>
-  </target>
-  
-  <target name="run-tests-get-pkg">
-    <condition property="product.package.dir" 
-               value="${daily.package.dir}"
-               else="${project.home}/build/package">
-       <isset property="tests.run.daily"/>
-     </condition>
-     <property name="product.package" 
-               value="${product.package.dir}/${product.name}.zip"/>
-     <condition property="product.package.build">
-       <and> 
-         <not>
-           <isset property="tests.run.daily"/>
-         </not>
-         <not>
-           <available file="${product.package}"/>
-         </not>
-       </and>
-     </condition>
-  </target>
-
-  <target name="run-tests-check" depends="run-tests-build-pkg">
-    <condition property="opends.port.ldap.taken">
-      <socket port="${opends.port.ldap}" server="${host.name}"/>
-    </condition>
-    <condition property="opends.port.ldaps.taken">
-      <socket port="${opends.port.ldaps}" server="${host.name}"/>
-    </condition>
-    <condition property="opends.port.jmx.taken">
-      <socket port="${opends.port.jmx}" server="${host.name}"/>
-    </condition>
-    <condition property="product.package.available">
-      <available file="${product.package}"/>
-    </condition>
-    <condition property="run-tests.proceed">
-      <and>
-        <not>
-          <or>
-            <isset property="opends.port.ldap.taken"/>
-            <isset property="opends.port.ldaps.taken"/>
-            <isset property="opends.port.jmx.taken"/>
-          </or>
-        </not>
-        <isset property="staf.running"/>
-        <isset property="product.package.available"/>
-      </and>
-    </condition>
-  </target>
-
-  <target name="run-tests-prepare"
-          depends="status-do,run-tests-build-pkg" 
-          if="run-tests.proceed">
-    <!-- python config - top -->
-      <!-- 1. get a timestamp for step 3 -->
-      <tstamp>
-        <format property="tests.run.time" pattern="yyyy.MM.dd-HH.mm.ss"/>
-      </tstamp>
-      <!-- clean up some -->
-      <delete dir="${staf.logs.dir}"/>
-      <delete dir="${staf.tmp.dir}"/>
-      <!-- make all the necessary directories for this test run -->
-      <mkdir dir="${staf.tmp.dir}"/>
-      <mkdir dir="${tests.run.dir}/${tests.run.time}"/>
-      <mkdir dir="${tests.run.dir}/${tests.run.time}/config"/>
-      <mkdir dir="${tests.run.dir}/${tests.run.time}/report"/>
-      <!-- these will serve for after-the-fact archiving the logs -->
-      <mkdir dir="${tests.run.dir}/${tests.run.time}/staf-logs"/>
-      <mkdir dir="${tests.run.dir}/${tests.run.time}/server-logs"/>
-      <mkdir dir="${tests.run.dir}/${tests.run.time}/coverage"/>
-      
-      <!-- 3. perform the config back up if necessary -->
-      <copy file="${tests.config}" 
-            tofile="${tests.config.backup}"
-            overwrite="false"/>
-      <!-- 4. generate the timestamped config file that will be used for this run -->
-      <copy file="${tests.config.stubs}"
-            tofile="${tests.run.dir}/${tests.run.time}/config/${tests.config.file}">
-        <filterchain>
-          <expandproperties/>
-        </filterchain>
-      </copy>
-      <!-- 5. this is a windows-specific measure to replace the windows file
-              separator by a forward slash. Staf otherwise fails to find the
-              files.
-       -->
-      <replace file="${tests.run.dir}/${tests.run.time}/config/${tests.config.file}" token="\" value="/"/>
-      <!-- 6. copy the generated config in place of the previous one -->
-      <copy file="${tests.run.dir}/${tests.run.time}/config/${tests.config.file}"
-            tofile="${tests.config}"
-            overwrite="true"/>
-    <!-- python config - bottom -->
-  </target>
-  
-  <target name="run-tests-cant-ldap" if="opends.port.ldap.taken">
-    <echo>Port [${opends.port.ldap}] already used</echo>
-  </target>
-  <target name="run-tests-cant-ldaps" if="opends.port.ldaps.taken">
-    <echo>Port [${opends.port.ldaps}] already used</echo>
-  </target>
-  <target name="run-tests-cant-jmx" if="opends.port.jmx.taken">
-    <echo>Port [${opends.port.jmx}] already used</echo>
-  </target>
-  <target name="run-tests-cant-staf" unless="staf.running">
-    <echo>Staf is NOT running. Use the start target and try again</echo>
-  </target>
-  <target name="run-tests-cant-package" unless="product.package.available">
-    <echo>the package [${product.package}] is not available</echo>
-  </target>
-  <target name="run-tests-cant" 
-          depends="run-tests-cant-ldap,run-tests-cant-ldaps,run-tests-cant-jmx,run-tests-cant-staf,run-tests-cant-package"
-          unless="run-tests.proceed">
-    <echo>Could not run the tests for the afore mentioned reasons</echo>
-    <fail message="Could not run the stress tests"/>
-  </target>
-  <target name="run-tests"
-    depends="status-do,run-tests-check,run-tests-cant,run-tests-prepare,run-my-tests-default-plan" 
-    if="run-tests.proceed">
-    <property name="tests.request" value="EXECUTE FILE ${tests.xml} JOBNAME OpenDS_stress_Tests SCRIPTFILE ${tests.config} SCRIPTFILE ${tests.python} WAIT CLEARLOGS"/>
-    <condition property="tests.replay.script" value="replay.bat" else="replay.sh">
-      <os family="windows"/>
-    </condition>
-    <echo>Generating replay script to allow you to re-execute the tests in the same conditions</echo>
-    <copy file="${staf.installer.dir}${file.separator}${tests.replay.script}"
-          tofile="${tests.run.dir}${file.separator}${tests.run.time}${file.separator}${tests.replay.script}">
-      <filterchain>
-        <expandproperties/>
-      </filterchain>
-    </copy>
-    <echo>While the tests are running you may tail the job logs at</echo>
-    <echo>${staf.home}/logs/MACHINE/</echo>
-    <echo>Running tests. This will take more than a while.</echo>
-    <property name="CLASSPATH" value="${staf.lib.dir}/JSTAF.jar${path.separator}${e.CLASSPATH}"/>
-    <exec
-      dir="${staf.bin.dir}"
-      executable="${staf.executable}"
-      >
-      <arg line="LOCAL STAX ${tests.request}"/>
-      <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar${path.separator}${e.CLASSPATH}"/>
-      <env key="LD_LIBRARY_PATH" value="${staf.lib.dir}"/>
-      <env key="STAFCONVDIR" value="${staf.install.dir}/codepage"/>
-      <env key="STAFCODEPAGE" value="LATIN_1"/>
-    </exec>
-    <!-- restore the original config file to avoid it to be mistakenly commited
-         with the generated values    -->
-    <delete file="${tests.config}"/>
-    <move file="${tests.config.backup}" 
-          tofile="${tests.config}"/>
-    <echo file="${tests.run.dir}/last.run">${tests.run.time}</echo>
-    <echo>Saving server logs</echo>
-    <copy todir="${tests.run.dir}/${tests.run.time}/server-logs">
-      <fileset dir="${staf.tmp.dir}/${product.name}/logs"/>
-    </copy>
-    <echo>Saving Staf/Stax logs</echo>
-    <copy todir="${tests.run.dir}/${tests.run.time}/staf-logs">
-      <fileset dir="${staf.home}/logs"/>
-    </copy>
-    <!--<delete dir="${staf.home}/logs" />-->
-    <echo>Saving report</echo>
-    <copy todir="${tests.run.dir}/${tests.run.time}/report">
-      <fileset dir="${staf.tmp.dir}">
-        <include name="r*"/>
-      </fileset>
-    </copy>
-    <echo>You may access the tests report at</echo>
-    <echo>${tests.run.dir}/${tests.run.time}/report/my-report.html</echo>
-    <antcall target="send-mail"/>
-  </target>
-  
-  <target name="run-my-tests-get-contrib-check">
-    <available file="ant-contrib.zip" property="ant-contrib.downloaded" />
-  </target>
-  <target name="run-my-tests-get-contrib" depends="run-my-tests-get-contrib-check,download-do-prepare-check-proxy,download-do-prepare-set-proxy" unless="ant-contrib.downloaded">
-    <get src="http://easynews.dl.sourceforge.net/sourceforge/ant-contrib/ant-contrib-1.0b3-bin.zip" dest="ant-contrib.zip"/>
-  </target>
-  <target name="run-my-tests-expand-check">
-    <available file="ant-contrib" property="ant-contrib.expanded" />
-  </target>
-  <target name="run-my-tests-expand" depends="run-my-tests-get-contrib,run-my-tests-expand-check" unless="ant-contrib.expanded">
-    <unzip src="ant-contrib.zip" dest="." />
-  </target>
-
-  <target name="run-my-tests-define" depends="run-my-tests-expand">
-    <taskdef resource="net/sf/antcontrib/antlib.xml">
-      <classpath>
-        <fileset dir="ant-contrib"> 
-          <include name="**/*.jar"/>
-        </fileset>
-      </classpath>
-    </taskdef>
-  </target>
-  
-  <target name="run-my-tests" depends="run-my-tests-define">
-    <condition property="already.customized" value="true" else="false">
-      <available file="${test.plan.custom}" />
-    </condition>
-    <if>
-      <equals arg1="${already.customized}" arg2="true" />
-      <then>
-        <input message="A previously customized test plan was detected. Do you want to change the list of suites to run?" validargs="y,n" defaultvalue="n" addproperty="prompt.do" />
-      </then>
-      <else>
-        <echo>No previous customized test plan found.</echo>
-        <property name="prompt.do" value="y" />
-      </else>
-    </if>
-    
-    <if>
-      <equals arg1="${prompt.do}" arg2="y" />
-      <then>
-        <delete file="${test.plan.custom}" />
-        <foreach list="${test.plan.list}" param="test" target="run-my-tests-prompt"/>
-      </then>
-    </if>
-    
-    <echo>You may now run those tests simply by calling 'build run-tests'</echo>
-    <!-- <antcall target="run-tests" /> -->
-  </target>
-
-  <target name="run-my-tests-prompt">
-    <input message="Do you want to execute ${test}?" validargs="y,n" defaultvalue="y" addproperty="answer"/>
-    <if>
-      <equals arg1="${answer}" arg2="y" />
-      <then>
-        <echo file="${test.plan.custom}" append="true">${test}
-</echo>
-      </then>
-    </if>
-  </target>
-  <target name="run-my-tests-default-plan" depends="run-my-tests-define" unless="custom-suites.on">
-    <delete file="${test.plan.default}"/>
-    <foreach list="${test.plan.list}" param="test" target="run-my-tests-default-plan-add"/>
-  </target>
-  <target name="run-my-tests-default-plan-add">
-    <echo file="${test.plan.default}" append="true">${test}
-</echo>
-  </target>
-  
-  
-  <target name="send-mail-prepare">
-    <condition property="test.successful">
-      <available file="${staf.tmp.dir}/my-report.html"/>
-    </condition>
-    <condition property="email.send">
-      <equals arg1="${email.enabled}" arg2="y"
-              casesensitive="false" trim="true"/>
-    </condition>
-  </target>
-
-  <target name="send-mail-get-percentage" depends="send-mail-prepare" if="test.successful">
-    <echo>test report found.Proceeding...</echo>
-    <delete file="${staf.tmp.dir}/percentage.properties"/>
-    <copy file="${staf.tmp.dir}/my-report.html" tofile="${staf.tmp.dir}/percentage.properties">
-      <filterchain>
-        <linecontains>
-         <contains value='font size="+2'/>
-        </linecontains>
-        <tokenfilter>
-          <replaceregex pattern=".*font size=.+2..(\d+)%./font.*" replace="test.percentage=\1"/>
-        </tokenfilter>
-      </filterchain>
-    </copy>
-    <property file="${staf.tmp.dir}/percentage.properties"/>
-    <echo>Test Success Rate: ${test.percentage}%</echo>
-  </target>
-
-  <target name="send-mail" if="email.send" depends="send-mail-get-percentage">
-    <condition property="email.send.noauth">
-      <or>
-        <not>
-          <isset property="email.server.user"/>
-        </not>
-        <not>
-          <length string="${email.server.user}" when="greater"
-                  trim="true" length="0"/>
-        </not>
-      </or>
-    </condition>
-    <condition property="email.file" 
-               value="${staf.tmp.dir}/my-report.html" 
-               else="staf-installer/failure.html">
-      <available file="${staf.tmp.dir}/my-report.html"/>
-    </condition>
-    <condition property="email.subject"
-               value="FT - Run - ${daily.date} - ${os.name} - ${os.arch} - ${test.percentage}%"
-               else="FT - Failed -${daily.date} - ${os.name} - ${os.arch}">
-      <available file="${staf.tmp.dir}/my-report.html"/>
-    </condition>
-    <antcall target="send-mail-noauth"/>
-    <antcall target="send-mail-withauth"/>
-  </target>
-  <target name="send-mail-noauth" if="email.send.noauth">
-    <mail from="${email.from}" 
-          tolist="${email.to}" 
-          subject="${email.subject}"
-          mailhost="${email.server.host}"
-          mailport="${email.server.port}"
-          messagefile="${email.file}"
-          messagemimetype="text/html" />
-  </target>
-  <target name="send-mail-withauth" unless="email.send.noauth">
-    <mail from="${email.from}" 
-          tolist="${email.to}" 
-          subject="${email.subject}"
-          mailhost="${email.server.host}"
-          mailport="${email.server.port}"
-          user="${email.server.user}"
-          password="${email.server.pwd}"
-          messagefile="${email.file}"
-          messagemimetype="text/html" />
-  </target>
-  
-  <target name="daily">
-    <property name="tests.run.daily" value="true"/>
-  </target>
-  
-  <target name="run-daily" depends="status-do,daily,download-daily,coverage-instrument,run-tests"/>
-  
-  <target name="coverage-init">
-    <path id="emma.lib">
-      <pathelement location="${project.home}/ext/emma/lib/emma.jar"     />
-      <pathelement location="${project.home}/ext/emma/lib/emma_ant.jar" />
-    </path>
-
-    <taskdef resource="emma_ant.properties" classpathref="emma.lib" />
-  </target>
-  
-  <target name="coverage-on" depends="coverage-init">
-    <property name="coverage.on" value="true"/>
-  </target>
-  
-  <target name="coverage-instrument" depends="status-do,run-tests-get-pkg" if="coverage.on">
-    <delete dir="${staf.tmp.dir}/coverage-instr" />
-    <mkdir dir="${staf.tmp.dir}/coverage-instr" />
-    <!-- unzip the original package in a temporary location to make the
-         changes necessary so that the coverage tool is called
-     -->
-    <unzip src="${product.package}" 
-           dest="${staf.tmp.dir}/coverage-instr"/>
-
-    <!-- Add emma in the package along with the other librairies
-         this has the advantage of being automatically picked up by the scripts
-    -->
-    <copy file="${project.home}/ext/emma/lib/emma.jar" 
-          tofile="${staf.tmp.dir}/coverage-instr/${product.name}/lib/emma.jar"/>
-    
-    <!-- move the original product package to make room for the coverage 
-         enabled package 
-     -->
-    <move file="${product.package}" tofile="${product.package}.nocov"/>
-    
-    <!-- intrument the OpenDS java archive to gather coverage -->
-    <java classpath="${staf.tmp.dir}${file.separator}coverage-instr${file.separator}${product.name}${file.separator}lib${file.separator}emma.jar"
-          classname="emma" fork="true">
-      <jvmarg value="-Demma.metadata.out.file=${staf.tmp.dir}${file.separator}coverage-instr${file.separator}${product.name}${file.separator}coverage.em" />
-      <arg value="instr" />
-      <arg value="-m" />
-      <arg value="overwrite" />
-      <arg value="-cp" />
-      <arg value="${staf.tmp.dir}${file.separator}coverage-instr${file.separator}${product.name}${file.separator}lib${file.separator}OpenDS.jar" />
-    </java>
-    <echo>Writing properties file</echo>
-    <echo file="${staf.tmp.dir}/coverage-instr/${product.name}/classes/emma.properties">coverage.out.file=${staf.tmp.dir}/emma.coverage</echo> 
-    <!-- Repackage the product with coverage enabled scripts -->          
-    <zip basedir="${staf.tmp.dir}/coverage-instr" destfile="${product.package}">
-      <zipfileset dir="${staf.tmp.dir}/coverage-instr" 
-                  includes="${product.name}/setup,${product.name}/uninstall,${product.name}/upgrade,${product.name}/bin/*,${product.name}/lib/*.sh"
-           filemode="755" dirmode="755" />
-    </zip>
-    <!-- <delete dir="${staf.tmp.dir}/coverage-instr"/> -->
-  </target>
-  
-  <target name="coverage-report" if="coverage.on">
-    <delete dir="${staf.tmp.dir}/coverage/all" />
-    <mkdir dir="${staf.tmp.dir}/coverage/all" />
-    <emma enabled="${coverage.on}" >
-      <report >
-        <infileset dir="${staf.tmp.dir}" includes="**/*.em,**/*.ec" />
-
-        <sourcepath>
-          <dirset dir="${project.home}" >
-            <include name="src" />
-          </dirset>
-        </sourcepath>
-
-        <html outfile="${staf.tmp.dir}/coverage/all/index.html"
-              columns="name, method, line"
-              sort="+line, +name"
-              metrics="line:80"
-        />
-      </report>
-    </emma>
-  </target>
-  
-  <target name="restore-pkg" if="coverage.on">
-    <delete file="${product.package}"/>
-    <move file="${product.package}.nocov" tofile="${product.package}"/> 
-  </target>
-
-  <target name="daily-coverage" depends="coverage-on,run-daily,restore-pkg,coverage-report"/>
-  
-  <target name="testwithcoverage" depends="coverage-on,coverage-instrument,run-tests,restore-pkg,coverage-report"/> 
-<!-- Run tests section - bottom -->
-  
-<!-- Uninstallation section - top    -->
-  <target name="uninstall-do-jar"
-          description="Uninstall the staf"
-          if="staf.install.is.jar">
-    <echo message="Uninstalling staf, please wait..."                        />
-    <java jar="${staf.install.dir}/_uninst/uninstall.jar" fork="true">
-      <arg value="-silent" />
-    </java>
-    <sleep seconds="5" />
-    <delete dir="${staf.install.dir}" />
-  </target>
-  <target name="uninstall-do-tar"
-          description="Uninstall the staf"
-          unless="staf.install.is.jar">
-    <echo message="Uninstalling staf, please wait..."                        />
-    <exec executable="${staf.install.dir}/STAFUninst"/>
-    <sleep seconds="5" />
-    <delete dir="${staf.install.dir}" />
-  </target>
-
-  <target name="uninstall-do" if="staf.installed">
-    <condition property="staf.install.is.jar">
-      <available file="${staf.install.dir}/_uninst/uninstall.jar"/>
-    </condition>
-    <antcall target="uninstall-do-jar"/>
-    <antcall target="uninstall-do-tar"/>
-  </target>
-  <target name="uninstall-dont-not-installed" unless="staf.installed">
-    <echo>Staf is not installed.</echo>
-  </target>
-  <target name="uninstall-dont-running" if="staf.running">
-    <echo>Staf is running. Stop staf before uninstalling.</echo>
-    <echo>Use either the 'stop' or the 'wipeout' target.</echo>
-  </target>
-  <target 
-    name="uninstall-dont" 
-    depends="uninstall-dont-running,uninstall-dont-not-installed" />
-  
-  <target name="uninstall" depends="status-do,uninstall-do,uninstall-dont">
-  </target>
-<!-- Uninstallation section - bottom -->
-  
-<!-- Start section - top       -->
-  <target name="start-do" 
-          description="start the staf"
-          if="staf.installed"
-          unless="staf.running" >
-    <echo message="Starting staf daemon ... on ${os.myname}" />
-    <condition property="staf.spawn">
-      <not>
-        <isset property="staf.spawn"/>
-      </not>
-    </condition>
-    <echo message="Starting STAF..."/>
-    <exec
-      dir="${staf.bin.dir}"
-      executable="${staf.daemon}"
-      spawn="${staf.spawn}">
-     <arg value="${staf.config}"/>
-     <env key="${path.var}" path="${java.home}${file.separator}bin${path.separator}${staf.install.dir}${file.separator}bin${path.separator}${path.current}"/>
-     <env key="LD_LIBRARY_PATH" path="${staf.install.dir}/lib"/>
-     <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar${path.separator}${e.CLASSPATH}"/>
-     <env key="STAFCONVDIR" value="${staf.install.dir}/codepage"/>
-     <env key="STAFCODEPAGE" value="LATIN_1"/>
-     <env key="STAF_INSTANCE_NAME" value="STAF"/>
-   </exec>
-   <echo message="Waiting for service to become available..."/>
-    <waitfor>
-      <socket server="${host.name}" port="${staf.port}"/>
-    </waitfor>
-    <echo message="STAF is now ready to serve requests"/>
-   </target>
-  <target name="start-dont" if="staf.running">
-    <echo>Staf is already running.</echo>
-  </target>
-  <target name="start" depends="status-do">
-    <antcall target="start-do"/>
-    <antcall target="start-dont"/>
-  </target>
-  <target name="start-nodetach">
-    <property name="staf.spawn" value="false"/>
-    <antcall target="start"/>
-  </target>
-
-<!-- Start section - bottom    -->
-  
-<!-- Stop section - top     -->
-  <target name="stop-do" if="staf.running">
-    <echo>Stopping staf...</echo>
-    <exec
-      executable="${staf.executable}" 
-      >
-      <env key="${path.var}" path="${java.home}${file.separator}bin${path.separator}${staf.install.dir}${file.separator}bin${path.separator}${path.current}"/>
-      <env key="LD_LIBRARY_PATH" path="${staf.lib.dir}"/>
-      <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar${path.separator}${e.CLASSPATH}"/>
-      <env key="STAFCONVDIR" value="${staf.install.dir}/codepage"/>
-      <env key="STAFCODEPAGE" value="LATIN_1"/>
-      <arg line="local shutdown shutdown"/>
-    </exec>
-    <echo message="Waiting for service to shutdown gracefully..."/>
-    <waitfor>
-      <not>
-        <socket server="${host.name}" port="${staf.port}"/>
-      </not>
-    </waitfor>
-    <echo message="STAF stopped"/>
-  </target>
-  <target name="stop-dont" unless="staf.running">
-    <echo>Staf is not running.</echo>
-  </target>
-  <target name="stop" depends="status-do">
-    <antcall target="stop-do"/>
-    <antcall target="stop-dont"/>
-  </target>
-<!-- Stop section - bottom  -->
-  
-<!-- Status section - top    -->
-  <!-- Bits status section - top -->
-    <target name="status-archive-downloaded?" if="bits.all.downloaded.before">
-      <echo>Staf bits are ready to be installed. Use 'install' target.</echo>
-    </target>
-    <target name="status-archive-not-downloaded?" unless="bits.all.downloaded.before">
-      <echo>No staf bits found. Use the get-bits or bootstrap target.</echo>
-    </target>
-  <!-- Bits status section - bottom -->
-  
-  <!-- Installation status section - top -->
-    <target name="status-staf-installed?" if="staf.installed">
-      <echo>Found staf installed in [${staf.install.dir}]</echo>
-      <antcall target="status-staf-running?"       />
-      <antcall target="status-staf-not-running?"   />
-    </target>
-    <target name="status-staf-not-installed?" unless="staf.installed">
-      <echo>Could not find staf installation.</echo>
-      <echo>Checking if the bits here and ready for installation...</echo>
-      <antcall target="status-archive-downloaded?" />
-      <antcall target="status-archive-not-downloaded?" />
-    </target>
-  <!-- Installation status section - bottom -->
-    
-  <!-- Running status section - top -->
-    <target name="status-staf-running?" if="staf.running">
-      <echo>staf is listening on port [${staf.port.default}]</echo>
-      <echo>You're all set to run the stress tests.</echo>
-    </target>  
-    <target name="status-staf-not-running?" unless="staf.running">
-      <echo>staf is NOT running. Use the 'start' target.</echo>
-    </target>
-  <!-- Running status section - bottom -->
-
-
-  <!-- Get status section - top -->
-    <target name="status-do" unless="status-do.already.run" >
-      <!-- check if the various archives needed have already been downloaded -->
-      <condition property="bits.staf.downloaded.before">
-        <available file="${bits.download.dir}/${bits.staf.archive}"/>
-      </condition>
-      <condition property="bits.services.downloaded.before" >
-        <available file="${bits.download.dir}/${bits.stax.archive}" />
-      </condition>
-      <condition property="bits.all.downloaded.before">
-        <and>
-          <isset property="bits.staf.downloaded.before"/>
-          <isset property="bits.services.downloaded.before"/>
-        </and>
-      </condition>
-      <available file="${daily.package}" property="daily.package.downloaded"/>
-      <available file="testcases/run-custom-suites.dat" property="custom-suites.on" />
-      <available file="${staf.install.dir}" 
-                type="dir" 
-                property="staf.installed" />
-      <condition property="staf.lib.dir" 
-        value="${staf.install.dir}${file.separator}bin" 
-        else="${staf.install.dir}${file.separator}lib">
-        <os family="windows"/>
-      </condition>
-  
-      <condition property="staf.running">
-        <socket port="${staf.port}" server="${host.name}"/>
-      </condition>
-
-      <condition property="staf.archive.is.jar">
-        <contains string="${bits.staf.archive}" substring=".jar"/>
-      </condition>
-      <condition property="staf.archive.is.tar">
-        <not>
-          <contains string="${bits.staf.archive}" substring=".jar"/>
-        </not>
-      </condition>
-      <condition property="binary.extension" value=".exe" else="">
-          <os family="windows"/>
-      </condition>
-      <condition property="script.extension" value=".bat" else="">
-          <os family="windows"/>
-      </condition>
-      
-      <condition property="path.var" value="Path" else="PATH">
-        <os family="windows"/>
-      </condition>
-      <macrodef name="propertycopy">
-        <attribute name="name"/>
-        <attribute name="from"/>
-        <sequential>
-          <property name="@{name}" value="${@{from}}"/>
-        </sequential>
-      </macrodef>
-      <property environment="e"/>
-      <propertycopy name="path.current" from="e.${path.var}"/>
-
-      <property name="staf.executable" 
-                value="${staf.bin.dir}${file.separator}STAF${binary.extension}"/> 
-      <property name="staf.daemon" 
-                value="${staf.bin.dir}${file.separator}STAFProc${binary.extension}"/> 
-      
-      <property name="status-do.already.run" value="true"/>
-    </target>
-  <!-- Get status section - bottom -->
-  
-  <!-- Status cli section - top -->
-    <target name="status" depends="status-do">
-      <condition property="is.platform.supported" value="yes" else="no" >
-        <isset property="platform.supported"/>
-      </condition>
-      <echo>Operating System Family  - ${os.myname}</echo>
-      <echo>Operating System Name    - ${os.name}</echo>
-      <echo>Operating System Version - ${os.version}</echo>
-      <echo>Machine Architecture     - ${os.arch}</echo>
-      <echo>Platform Supported       - ${is.platform.supported}</echo>
-      <echo>Java Home                - ${java.home}</echo>
-      <echo>Java Version             - ${java.version}</echo>
-      <!--
-      <echo>PATH                     - ${path.current}</echo>
-      <echo>CLASSPATH                - ${e.CLASSPATH}</echo> 
-      -->
-      <antcall target="status-staf-installed?"     />
-      <antcall target="status-staf-not-installed?" />
-    </target>
-  <!-- Status cli section - bottom -->
-<!-- Status section - bottom -->
-
-<!-- Macros section - top -->
-  <target name="bootstrap">
-    <antcall target="download"  />
-    <antcall target="install"   />
-    <antcall target="start"     />
-  </target>
-  
-  <target name="wipeout">
-    <antcall target="stop"/>
-    <echo>Allow a minute for STAF to bring all the JVMs down</echo>
-    <sleep seconds="60"/>
-    <antcall target="uninstall"/>
-  </target>
-
-  <target name="restart">
-    <antcall target="stop"  inheritAll="false" />
-    <sleep seconds="10"                        />
-    <antcall target="start" inheritAll="false" />
-  </target>
-<!--  Macros section - bottom -->
-  <target name="javadoc" depends="status-do" if="staf.installed">
-    <delete dir="${staf.home}/doc"/>
-    <mkdir dir="${staf.home}/doc"/>
-    <java jar="${staf.install.dir}/services/stax/STAXDoc.jar" fork="true">
-      <arg value="-d"/> 
-      <arg value="${staf.home}/doc"/>
-      <!--<arg value="testcases"/>
-      <arg value="testcases/aci"/>
-      <arg value="testcases/backends"/>
-      <arg value="testcases/core"/>
-      <arg value="testcases/schema"/>
-      <arg value="testcases/security"/>
-      <arg value="testcases/security/account_activation"/>
-      <arg value="testcases/security/auth_pwd_syntax"/>
-      <arg value="testcases/security/bind_no_pwd"/>
-      <arg value="testcases/security/jks"/>
-      <arg value="testcases/security/pkcs12"/>
-      <arg value="testcases/security/pwd_policy"/>
-      <arg value="testcases/security/pwd_policy_root"/>
-      <arg value="testcases/security/pwd_storage"/>
-      <arg value="testcases/security/pwd_validator"/>
-      <arg value="testcases/security/sasl"/>
-      <arg value="testcases/security/startTLS"/>-->
-      <arg value="shared/functions"/>
-      <arg value="testcases/sample" />
-    </java>
-  </target>
-  
-  <target name="properties">
-    <echoproperties/>
-  </target>
-  
-  <target name="get-dtd" depends="status-do">
-    <property name="stax.dtd" value="${staf.home}/stax.dtd"/>
-    <exec
-      dir="${staf.bin.dir}"
-      executable="${staf.executable}"
-      output="${stax.dtd}"
-      >
-      <arg line="LOCAL STAX get dtd"/>
-      <env key="CLASSPATH" path="${staf.lib.dir}/JSTAF.jar${path.separator}${e.CLASSPATH}"/>
-      <env key="LD_LIBRARY_PATH" value="${staf.lib.dir}"/>
-      <env key="STAFCONVDIR" value="${staf.install.dir}/codepage"/>
-      <env key="STAFCODEPAGE" value="LATIN_1"/>
-    </exec>
-    <replace file="${stax.dtd}">
-      <replacetoken>Response
---------
-</replacetoken>
-      <replacevalue></replacevalue>
-    </replace>
-  </target>
-  
-  <target name="generate-report">
-    <delete file="${staf.tmp.dir}/my-report.html"/>
-    <xslt processor="trax"
-          in="${staf.tmp.dir}/tests-log.xml" 
-          out="${staf.tmp.dir}/my-report.html"
-          style="shared/xsl/my-report.xsl">
-    </xslt>
-  </target>
-  
-  <target name="opends">
-    <ant dir="../.." target="package" inheritAll="false" />
-  </target>
-</project>
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/Linux.properties b/opends/tests/staf-tests/stress-tests/staf-installer/Linux.properties
deleted file mode 100755
index 45ba8dc..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/Linux.properties
+++ /dev/null
@@ -1 +0,0 @@
-bits.staf.archive=STAF323-setup-linux.jar
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/SunOS-sparc.properties b/opends/tests/staf-tests/stress-tests/staf-installer/SunOS-sparc.properties
deleted file mode 100755
index 890ca80..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/SunOS-sparc.properties
+++ /dev/null
@@ -1 +0,0 @@
-bits.staf.archive=STAF322-setup-solaris-sparc.jar
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/SunOS-x86.properties b/opends/tests/staf-tests/stress-tests/staf-installer/SunOS-x86.properties
deleted file mode 100755
index 18ee7f9..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/SunOS-x86.properties
+++ /dev/null
@@ -1 +0,0 @@
-bits.staf.archive=STAF323-setup-solaris-x86.jar
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/SunOS.properties b/opends/tests/staf-tests/stress-tests/staf-installer/SunOS.properties
deleted file mode 100755
index e69de29..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/SunOS.properties
+++ /dev/null
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/config.py.stubs b/opends/tests/staf-tests/stress-tests/staf-installer/config.py.stubs
deleted file mode 100755
index ebb44cf..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/config.py.stubs
+++ /dev/null
@@ -1,30 +0,0 @@
-TEST_OS_STRING              = '${os.name}'
-TEST_HW_STRING              = '${os.arch}'
-TEST_JVM_STRING             = '${java.version}(${sun.arch.data.model} bits)'
-STAF_LOCAL_HOSTNAME         = 'localhost'
-STAF_REMOTE_HOSTNAME        = 'localhost'
-TMPDIR                      = '${staf.tmp.dir}'
-PSWDFILE                    = '%s/password' % TMPDIR
-OPENDSDIR                   = '${project.home}'
-OPENDSNAME                  = '${product.name}'
-ZIPNAME                     = '${product.name}.zip'
-ZIPPATH                     = '${product.package.dir}'
-TESTS_ROOT                  = '%s/tests' % OPENDSDIR
-TESTS_DIR                   = '%s/stress-tests' % TESTS_ROOT
-TESTS_SHARED_DIR            = '%s/shared' % TESTS_DIR
-TESTS_FUNCTIONS_DIR         = '%s/shared/functions' % TESTS_ROOT
-TESTS_DATA_DIR              = '%s/data' % TESTS_SHARED_DIR
-TESTS_JAVA_DIR		    = '%s/java' % TESTS_SHARED_DIR
-DIRECTORY_INSTANCE_DN       = '${opends.admin.dn}'
-DIRECTORY_INSTANCE_PSWD     = '${opends.admin.pwd}'
-DIRECTORY_INSTANCE_DIR      = '%s' % TMPDIR
-DIRECTORY_INSTANCE_HOST     = 'localhost'
-DIRECTORY_INSTANCE_PORT     = '${opends.port.ldap}'
-DIRECTORY_INSTANCE_SSL_PORT = '${opends.port.ldaps}'
-DIRECTORY_INSTANCE_SFX      = 'dc=com'
-DIRECTORY_INSTANCE_BE       = 'userRoot'
-JAVA_HOME                   = '${java.home}'
-LOGS_ROOT                   = '%s' % TMPDIR
-LOGS_URI                    = ''
-SEND_MAIL_AFTER_TEST_RUN    = '${staf.email.send}'
-SEND_MAIL_TO                = '${staf.email.to}'
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/replay.bat b/opends/tests/staf-tests/stress-tests/staf-installer/replay.bat
deleted file mode 100755
index bae6bdb..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/replay.bat
+++ /dev/null
@@ -1,11 +0,0 @@
-@echo off
-echo Backing configuration up
-move "${tests.config}" "${tests.config.backup}"
-echo Loading configuration as of ${tests.run.time}
-copy "${tests.run.dir}${file.separator}${tests.run.time}${file.separator}config${file.separator}${tests.config.file}" "${tests.config}"
-echo Starting test run
-"${staf.install.dir}${file.separator}bin${file.separator}STAF.exe" local STAX "${tests.request}"
-echo Removing configuration of ${tests.run.time}
-del /f "${tests.config}"
-echo Restoring original configuration
-move "${tests.config.backup}" "${tests.config}"
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/replay.sh b/opends/tests/staf-tests/stress-tests/staf-installer/replay.sh
deleted file mode 100755
index 9ebd467..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/replay.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-echo "Backing configuration up"
-me "${tests.config}" "${tests.config.backup}"
-echo "Loading configuration as of ${tests.run.time}"
-cp "${tests.run.dir}${file.separator}${tests.run.time}${file.separator}config${file.separator}${tests.config.file}" "${tests.config}"
-echo "Starting test run"
-"${staf.install.dir}${file.separator}bin${file.separator}STAF" local STAX "${tests.request}"
-echo "Removing configuration of ${tests.run.time}"
-rm -f "${tests.config}"
-echo "Restoring original configuration"
-mv "${tests.config.backup}" "${tests.config}"
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/staf-installer.properties b/opends/tests/staf-tests/stress-tests/staf-installer/staf-installer.properties
deleted file mode 100755
index 718176b..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/staf-installer.properties
+++ /dev/null
@@ -1,83 +0,0 @@
-# Global section - top
-host.name=localhost
-# Global section - bottom
-
-# Staf section - top
-staf.home=${project.home}${file.separator}tests${file.separator}stress-run
-staf.installer.dir=${basedir}${file.separator}staf-installer
-staf.install.dir=${staf.home}${file.separator}staf
-staf.bin.dir=${staf.install.dir}${file.separator}bin
-staf.config.dir=${staf.home}${file.separator}config
-staf.config.file=stress-tests.cfg
-staf.config=${staf.config.dir}${file.separator}${staf.config.file}
-staf.config.stubs=${staf.installer.dir}${file.separator}${staf.config.file}
-staf.tmp.dir=${staf.home}${file.separator}tmp
-staf.logs.dir=${staf.home}${file.separator}logs
-#
-staf.email.send=false
-staf.email.to=
-
-daily.build.time=213000
-daily.build.url=http://www.opends.org/daily-builds/
-
-## TCP port on which to configure staf to listen
-## leave as is unless this port is already in use on your test machine
-staf.port.default=6500
-staf.port=${staf.port.default}
-# Staf section - bottom
-
-#opends section - top
-opends.port.ldap=1389
-opends.port.ldaps=1636
-opends.port.jmx=1689
-opends.admin.dn=cn=myself
-opends.admin.pwd=password
-# opends section - bottom
-
-# email section - top
-email.enabled=n
-email.to=${user.name}@${host.name}
-email.from=${user.name}@${host.name}
-email.server.host=${host.name}
-email.server.port=25
-email.server.user=
-email.server.pwd=
-# email section - bottom
-
-# Downloader section - top
-## where to download the staf bits before install
-bits.download.dir=${staf.home}${file.separator}staf-bits
-bits.download.url=http://superb-east.dl.sourceforge.net/sourceforge/staf
-bits.email.archive=EmailV320.zip
-bits.event.archive=EventV310.zip
-bits.eventmanager.archive=EventManagerV322.zip
-bits.stax.archive=STAXV321.zip
-# Downloader section - bottom
-
-
-# Proxy section - top
-## set to match your own proxy if any
-proxy.host=webcache.central.sun.com
-proxy.port=8080
-proxy.user=
-proxy.pass=
-# Proxy section - bottom
-
-# Tests section - top
-tests.dir=${basedir}
-tests.run.dir=${staf.home}${file.separator}run
-tests.config.dir=${tests.dir}${file.separator}config
-tests.config.file=config.py
-tests.config.stubs=${staf.installer.dir}${file.separator}${tests.config.file}.stubs
-tests.config=${tests.config.dir}${file.separator}${tests.config.file}
-tests.config.backup=${tests.config}.orig
-tests.python=${tests.dir}${file.separator}..${file.separator}shared${file.separator}python${file.separator}security.py
-tests.xml=${tests.dir}${file.separator}testcases${file.separator}runTestJob.xml
-# Tests section - bottom
-
-# test plan customization - top  <property name="test.plan.file" value="${basedir}/testcases/run-custom-suites.dat" />
-test.plan.list=main_import_ldif
-test.plan.dir=testcases
-test.plan.custom=${test.plan.dir}/run-custom-suites.dat
-test.plan.default=${test.plan.dir}/run-default-suites.dat
-# test plan customization - bottom
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/windows-x86-32.properties b/opends/tests/staf-tests/stress-tests/staf-installer/windows-x86-32.properties
deleted file mode 100755
index fd85f74..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/windows-x86-32.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-bits.staf.archive=STAF323-setup-win32.jar
-
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/windows-x86-64.properties b/opends/tests/staf-tests/stress-tests/staf-installer/windows-x86-64.properties
deleted file mode 100755
index 7b829d2..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/windows-x86-64.properties
+++ /dev/null
@@ -1 +0,0 @@
-staf.archive.name=STAF323-setup-win64.jar
diff --git a/opends/tests/staf-tests/stress-tests/staf-installer/windows.properties b/opends/tests/staf-tests/stress-tests/staf-installer/windows.properties
deleted file mode 100755
index fd85f74..0000000
--- a/opends/tests/staf-tests/stress-tests/staf-installer/windows.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-bits.staf.archive=STAF323-setup-win32.jar
-
diff --git a/opends/tests/staf-tests/stress-tests/testcases/runTestJob.xml b/opends/tests/staf-tests/stress-tests/testcases/runTestJob.xml
deleted file mode 100755
index 129f275..0000000
--- a/opends/tests/staf-tests/stress-tests/testcases/runTestJob.xml
+++ /dev/null
@@ -1,524 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE stax SYSTEM "../../shared/stax.dtd">
-<!--
- ! CDDL HEADER START
- !
- ! The contents of this file are subject to the terms of the
- ! Common Development and Distribution License, Version 1.0 only
- ! (the "License").  You may not use this file except in compliance
- ! with the License.
- !
- ! You can obtain a copy of the license at
- ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
- ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
- ! See the License for the specific language governing permissions
- ! and limitations under the License.
- !
- ! When distributing Covered Code, include this CDDL HEADER in each
- ! file and include the License file at
- ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
- ! add the following below this CDDL HEADER, with the fields enclosed
- ! by brackets "[]" replaced with your own identifying information:
- !      Portions Copyright [yyyy] [name of copyright owner]
- !
- ! CDDL HEADER END
- !
- !      Copyright 2006-2008 Sun Microsystems, Inc.
- ! -->
-
-<stax>
-  <defaultcall function="start_job"/>
-  <function name="start_job">
-    <function-single-arg>
-      <function-optional-arg name="config" default="''"/>
-    </function-single-arg>
-
-    <sequence>
-      <script>
-        STAXLogMessage = 1
-      </script>
-
-      <script>
-        if config:
-          import os, sys
-          myconfigpath,myconfigfile=os.path.split(config)
-          sys.path.append("%s" % myconfigpath )
-          from config import *
-        else:
-          myconfigpath='%s/config' % TESTS_DIR
-          myconfigfile='config.py'        
-      </script>
-
-      <job name="'Job: %s %s' % (STAF_REMOTE_HOSTNAME,TEST_OS_STRING) " monitor="1" clearlogs="'Enabled'" logtcstartstop="'Enabled'">
-        <job-file>'%s/testcases/runStressTests.xml' % TESTS_DIR</job-file>
-        <job-scriptfiles machine="STAF_LOCAL_HOSTNAME">['%s/%s' % (myconfigpath,myconfigfile) ]</job-scriptfiles>
-        <job-action>
-          <log>'Started sub-job %s on %s' % (STAXSubJobID,STAF_REMOTE_HOSTNAME)</log>
-        </job-action>
-      </job>
-      
-      <if expr="RC == 0">
-        <message>
-          'Sub-job %s completed. Result: %s' % (STAXSubJobID, STAXResult)
-        </message>
-        <else>
-          <sequence>
-            <message log="1" level="'Error'">'Sub-job %s could not be started. RC: %s Result: %s' % (STAXSubJobID,RC,STAFResult)</message>
-            <return>1</return>
-          </sequence>
-        </else>
-      </if>
-      
-      <!--- Import required shared xml libraries -->
-      <import machine="STAF_LOCAL_HOSTNAME"
-              file="'%s/stafcmd.xml' % TESTS_FUNCTIONS_DIR" />
-      
-      <!--
-        dirty workaround because utils.xml now depends on environment.xml
-        to avoid loading environment.xml I'll just set the required vars here
-        allegedly ugly
-        -=arnaud=-
-      -->
-      <script>
-        NO_CHECK = 'noCheck'
-      </script>
-      <import machine="STAF_LOCAL_HOSTNAME"
-        file="'%s/utils.xml' % (TESTS_FUNCTIONS_DIR)" />
-      
-      <!-- Get Directory Server Variables -->
-      <call function="'GetVar'">
-        { 'location'  : STAF_REMOTE_HOSTNAME,
-          'type'      : 'shared',
-          'variable'  : 'Job%s_ServerInfo' % STAXSubJobID
-        }
-      </call>
-      
-      <if expr="RC != 0">
-        <script>
-          STAFResult='{}'
-        </script>
-      </if>
-      
-      <!-- Build the Servers Information Dictionary -->
-      <script> 
-        
-        ServersInfoDict=eval(STAFResult)
-        
-        ServerVersion='unknown'
-        ServerBuildId='unknown'
-        ServerJavaVersion='unknown'
-        ServerJavaVendor='unknown'
-        ServerJVMVersion='unknown'
-        ServerJVMVendor='unknown'
-        ServerSystemOS='unknown'
-        ServerSystemName='unknown'
-        ServerSvnRevision='unknown'
-        
-        if ServersInfoDict.has_key('%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)):       
-          ServerInfoDict=ServersInfoDict['%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)]
-          
-          ServerInfoKey='server version'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerVersion=ServerInfoDict[ServerInfoKey]
-          
-          ServerInfoKey='server buildid'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerBuildId=ServerInfoDict[ServerInfoKey]
-          
-          ServerInfoKey='java version'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerJavaVersion=ServerInfoDict[ServerInfoKey]
-          
-          ServerInfoKey='java vendor'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerJavaVendor=ServerInfoDict[ServerInfoKey]
-          
-          ServerInfoKey='jvm version'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerJVMVersion=ServerInfoDict[ServerInfoKey]
-          
-          ServerInfoKey='jvm vendor'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerJVMVendor=ServerInfoDict[ServerInfoKey]
-          
-          ServerInfoKey='system os'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerSystemOS=ServerInfoDict[ServerInfoKey]
-          
-          ServerInfoKey='system name'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerSystemName=ServerInfoDict[ServerInfoKey]
-          
-          ServerInfoKey='svn revision'
-          if ServerInfoDict.has_key(ServerInfoKey):
-            ServerSvnRevision=ServerInfoDict[ServerInfoKey]
-                                                                                                
-        else:
-          ServerInfoDict='No key found (%s/%s)' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)
-        
-      </script>
-      
-      <message>'Server= %s' % ServerInfoDict </message>     
-                        
-      <stafcmd name="'STAF Command: Log Query All'">
-        <location>'%s' % STAF_LOCAL_HOSTNAME </location>
-        <service>'log'</service>
-        <request>
-          'QUERY ALL MACHINE %s LOGNAME STAX_Job_%s' % (STAXServiceMachine,STAXSubJobID)
-        </request>
-      </stafcmd>
-      
-      <if expr="RC == 0">
-        <sequence>
-          <script>
-            resultQuery= STAFResult
-          </script>
-          <message>
-            'Log Query on STAX_Job_%s Completed. RC=%s' % (STAXSubJobID,RC)
-          </message>
-        </sequence>
-        <else>
-          <sequence>
-            <message log="1" level="'Error'">
-              'Unable to perform log query on STAX_Job_%s. RC: %s Result: %s' % (STAXSubJobID,RC,STAFResult)
-            </message>
-            <return>1</return>
-          </sequence>
-        </else>
-      </if>
-      
-      <!-- Get logsDir Variable -->
-      <call function="'GetVar'">
-        { 'location'  : STAF_REMOTE_HOSTNAME,
-          'type'      : 'shared',
-          'variable'  : 'Job%s_LogsDir' % STAXSubJobID 
-        }
-      </call>
-      
-      <if expr="RC == 0">
-        <script>
-          logsDir=STAFResult
-        </script>
-      <else>
-        <sequence>
-          <message>
-            'Unable to retrieve LogsDir variable, RC=%s,Result=%s.' % (RC,STAFResult)
-          </message>          
-          <script>
-            logsDir='%s' % TMPDIR
-          </script>
-        </sequence>
-      </else>
-      </if>
-      
-      <script>
-        logsReportDir='%s/reports' % logsDir
-      </script>
-      
-      <call function="'createFolder'">
-        { 'location'   : STAF_LOCAL_HOSTNAME, 
-          'foldername' : logsReportDir }
-      </call>
-     
-      <!-- Write Text File for results -->
-      <script>
-          textfile= '%s/results.txt' % logsReportDir
-          txtfh=open(textfile,'w')
-      </script>
-      
-      <iterate var="line" in="resultQuery">
-        
-        <script>
-          txtfh.write('%s\n' % line)
-        </script>
-      
-      </iterate> 
-      
-      <script> 
-        txtfh.close() 
-      </script>
-      
-      <message>
-        'TEXT Report Written to %s.' % textfile
-      </message>
-      
-      <!-- Write XML File for results -->
-      <script>
-        import re
-        xmlfile= '%s/results.xml' % logsReportDir
-        xmlfh=open(xmlfile,'w') 
-        errorfile= '%s/results.errors' % logsReportDir
-        errorfh=open(errorfile,'w')
-      </script>
-      
-      <!-- Build the test case dictionary object -->
-      <script>
-        testDict={}
-        testCaseList=[]
-      </script>
-      
-      <iterate var="element" in="resultQuery">
-        <script>
-          level=element['level']
-          message=element['message']
-          timestamp=element['timestamp']
-          
-          startValueDict={}
-          stopValueDict={}
-          statusValueDict={}
-          
-          if level == 'Start':
-            tcpattern=re.compile("(Testcase): (.*)")
-            tcmatch = tcpattern.search(message)
-            if tcmatch:
-              tctype=tcmatch.group(1)
-              tcname=tcmatch.group(2)
-              if testDict.has_key(tcname):
-                for key in testDict[tcname].keys():
-                  value=testDict[tcname][key]
-                  startValueDict[key]=value
-              
-              startValueDict['start']=timestamp
-              testDict[tcname]=startValueDict
-              
-              testCaseList.append(tcname)
-            
-            else:
-              errorfh.write('Warning: No match Start element %s.\n' % element)
-          
-          elif level == 'Stop':
-            
-            tcpattern=re.compile("(Testcase): (.*), ElapsedTime: (.*)")
-            tcmatch = tcpattern.search(message)
-            
-            if tcmatch:
-              tctype=tcmatch.group(1)
-              tcname=tcmatch.group(2)
-              tctime=tcmatch.group(3)
-              if testDict.has_key(tcname):
-                for key in testDict[tcname].keys():
-                  value=testDict[tcname][key]
-                  stopValueDict[key]=value
-              
-              stopValueDict['stop']=timestamp
-              stopValueDict['duration']=tctime
-              testDict[tcname]=stopValueDict
-            
-            else:
-              errorfh.write('Warning: No match Stop element %s.\n' % element)
-          
-          elif level == 'Status':
-            
-            tcpattern=re.compile("(Testcase): (.*), Pass: (.*), Fail: (.*), ElapsedTime: (.*), NumStarts: (.*)")
-            tcmatch = tcpattern.search(message)
-            
-            if tcmatch:
-              tctype=tcmatch.group(1)
-              tcname=tcmatch.group(2)
-              tcpass=tcmatch.group(3)
-              tcfail=tcmatch.group(4)
-              tctime=tcmatch.group(5)
-              tcnums=tcmatch.group(6)
-              
-              if testDict.has_key(tcname):
-                
-                for key in testDict[tcname].keys():
-                  value=testDict[tcname][key]
-                  statusValueDict[key]=value
-              
-              statusValueDict['pass']=tcpass
-              statusValueDict['fail']=tcfail
-              testDict[tcname]=statusValueDict
-            
-            else:
-              errorfh.write('Warning: No match Status element %s.\n' % element)
-          
-          elif level == 'Info':
-            errorfh.write('Warning: Info element %s.\n' % element)
-          
-          else:
-            errorfh.write('Error: Unknown element %s.\n' % element)
-          
-        </script>
-      </iterate>
-
-      <!-- XML Report Pre -->
-      <script>
-        xmlfh.write('&lt;qa&gt;\n')
-        xmlfh.write('  &lt;functional-tests&gt;\n')
-        xmlfh.write('    &lt;identification&gt;\n')
-        xmlfh.write('      &lt;version&gt;\n')
-        xmlfh.write('        %s\n' % ServerVersion)
-        xmlfh.write('      &lt;/version&gt;\n')    
-        xmlfh.write('      &lt;buildid&gt;\n')
-        xmlfh.write('        %s\n' % ServerBuildId)
-        xmlfh.write('      &lt;/buildid&gt;\n')
-        xmlfh.write('      &lt;revision&gt;\n')
-        xmlfh.write('        %s\n' % ServerSvnRevision)
-        xmlfh.write('      &lt;/revision&gt;\n')                 
-        xmlfh.write('      &lt;platform&gt;\n')
-        xmlfh.write('        %s\n' % ServerSystemOS)
-        xmlfh.write('      &lt;/platform&gt;\n')
-        xmlfh.write('      &lt;jvm-version&gt;\n')
-        xmlfh.write('        %s\n' % ServerJVMVersion)
-        xmlfh.write('      &lt;/jvm-version&gt;\n')
-        xmlfh.write('      &lt;jvm-vendor&gt;\n')
-        xmlfh.write('        %s\n' % ServerJVMVendor)
-        xmlfh.write('      &lt;/jvm-vendor&gt;\n')        
-        xmlfh.write('    &lt;/identification&gt;\n')
-        xmlfh.write('    &lt;results&gt;\n')
-      </script>
-      
-      <!-- XML Report Results -->
-      <script>
-        for tcname in testCaseList:
-          
-          if testDict.has_key(tcname):
-            tcnamesplit=tcname.split(":")
-            if tcnamesplit[0]:
-              testgroup=tcnamesplit[0]
-              if tcnamesplit[1]:
-                testsuite=tcnamesplit[1]
-              else:
-                testsuite=testgroup
-            else:
-              testgroup=tcname
-              testsuite=tcname
-            
-            if testDict[tcname].has_key('pass'):
-              tcpass=testDict[tcname]['pass']
-            else:
-              tcpass='0'
-            
-            if testDict[tcname].has_key('fail'):
-              tcfail=testDict[tcname]['fail']
-            else:
-              tcfail='0'
-            
-            if testDict[tcname].has_key('start'):
-              tcstart=testDict[tcname]['start']
-            else:
-              tcstart='unknown'
-            
-            if testDict[tcname].has_key('stop'):
-              tcstop=testDict[tcname]['stop']
-            else:
-              tcstop='unknown'
-            
-            if testDict[tcname].has_key('duration'):
-              tcduration=testDict[tcname]['duration']
-            else:
-              duration='unknown'
-          
-          else:
-            errorfh.write('No key for testcase %s.\n' % tcname)
-          
-          if int(tcfail) == 0 and int(tcpass) > 0:
-            tcresult='pass'
-          elif int(tcfail) == 0 and int(tcpass) == 0: 
-            tcresult='unknown'
-          else:
-            tcresult='fail'
-          
-          xmlfh.write('      &lt;testgroup name="%s"&gt;\n' % testgroup)
-          xmlfh.write('        &lt;testsuite name="%s"&gt;\n' % testsuite)
-          xmlfh.write('          &lt;testcase name="%s" result="%s" start="%s" stop="%s" duration="%s"/&gt;\n' % (tcname,tcresult,tcstart,tcstop,tcduration))
-          xmlfh.write('        &lt;/testsuite&gt;\n')
-          xmlfh.write('      &lt;/testgroup&gt;\n')
-      </script>
-      
-      <!-- XML Report Post -->
-      <script>
-        xmlfh.write('    &lt;/results&gt;\n')
-        xmlfh.write('  &lt;/functional-tests&gt;\n')
-        xmlfh.write('&lt;/qa&gt;\n')
-      </script>
-      
-      <script>
-        xmlfh.close() 
-        errorfh.close() 
-      </script>
-      
-      <message>
-        'XML Report Written to %s.' % xmlfile
-      </message>
-      
-      <!-- Transform Report XML into HTML -->
-      <script>
-        xslfile= '%s/xsl/gen-alltests-report.xsl' % TESTS_SHARED_DIR
-        htmlfile= '%s/results.html' % logsReportDir
-      </script>
-      
-      <message>
-        'Writing HTML (with stylesheet %s) Report to %s.' % (xslfile,htmlfile)
-      </message>
-      
-      <script>
-        _message=''
-        try:
-          from java.io import FileInputStream
-          from java.io import FileOutputStream
-          from java.io import ByteArrayOutputStream
-          
-          from javax.xml.transform import TransformerFactory
-          from javax.xml.transform.stream import StreamSource
-          from javax.xml.transform.stream import StreamResult
-          
-          xslSource = StreamSource(FileInputStream("%s" % xslfile))
-          xslTemplate = TransformerFactory.newInstance().newTemplates(xslSource)
-          transformer = xslTemplate.newTransformer()
-          
-          source = StreamSource(FileInputStream("%s" % xmlfile))
-          result = StreamResult(FileOutputStream("%s" % htmlfile))
-          # the original report
-          transformer.transform(source, result)
-          
-          #the new report transformation
-          TransformerFactory.newInstance().newTemplates(StreamSource(FileInputStream("%s/xsl/my-report.xsl" % TESTS_SHARED_DIR))).newTransformer().transform(StreamSource(FileInputStream("%s/tests-log.xml" % TMPDIR)), StreamResult(FileOutputStream("%s/my-report.html" % TMPDIR)))
-          _message='Generated drill-down HTML report'
-        except:
-          _message='Could not generate drill-down HTML report'
-      </script>
-      <message>_message</message>
-      <if expr="SEND_MAIL_AFTER_TEST_RUN == 'TRUE'">
-        <sequence>
-          <message>
-            'Sending Email Test Report to %s.' % SEND_MAIL_TO
-          </message>
-          
-          <script>
-            MailToList= SEND_MAIL_TO.split(",")
-            MailSubject= 'OpenDS Test Report for %s' % STAF_REMOTE_HOSTNAME
-            MailSendTo= ' '
-          </script>
-          
-          <iterate var="Recipient" in="MailToList">
-            <script>
-             MailSendTo='to %s %s' % (Recipient,MailSendTo)
-            </script>
-          </iterate>
-          
-          <stafcmd name="'STAF Command: Send test report %s' % MailSendTo">
-            <location>'%s' % STAF_LOCAL_HOSTNAME </location>
-            <service>'email'</service>
-            <request>
-              'send %s contenttype "text/html" file %s subject "%s" noheader' % (MailSendTo,htmlfile,MailSubject)
-            </request>
-          </stafcmd>
-          
-          <if expr="RC != 0">
-            <message log="1" level="'Error'">
-              'Send test report failed. RC: %s STAFResult: %s' % (RC,STAFResult)
-            </message>
-            <else>
-              <message>
-                'Send test report successful. RC: %s' % (RC)
-              </message>
-            </else>
-          </if>
-        </sequence>
-      </if>
-    </sequence>
-  
-  </function>
-</stax>

--
Gitblit v1.10.0