harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From smish...@apache.org
Subject svn commit: r542087 - in /harmony/enhanced/buildtest/branches/2.0: adaptors/ehwa/ tests/ehwa/
Date Mon, 28 May 2007 02:49:33 GMT
Author: smishura
Date: Sun May 27 19:49:32 2007
New Revision: 542087

URL: http://svn.apache.org/viewvc?view=rev&rev=542087
Log:
Apply patch from HARMONY-2866:
([testing]Eclipse 3.2.1 EHWA scenario integration to the buildtest infrastructure)

Added:
    harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/
    harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/README.txt   (with props)
    harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/adaptor.xml   (with props)
    harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/parameters.xml   (with props)
    harmony/enhanced/buildtest/branches/2.0/tests/ehwa/
    harmony/enhanced/buildtest/branches/2.0/tests/ehwa/EHWA.txt   (with props)
    harmony/enhanced/buildtest/branches/2.0/tests/ehwa/README.txt   (with props)
    harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.au3
    harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.pl   (with props)
    harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_run.xml   (with props)

Added: harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/README.txt
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/README.txt?view=auto&rev=542087
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/README.txt (added)
+++ harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/README.txt Sun May 27 19:49:32 2007
@@ -0,0 +1,205 @@
+
+      =================================================================
+          ECLIPSE 3.2.1 HELLO WORLD APPLICATION SCENARIO FOR BT 2.0
+      =================================================================
+
+This archive contains configs and scripts for running EHWA scenario
+under Build Test Infrastructure 2.0 (HARMONY-3501).
+
+The BT 2.0 provides features which allow:
+
+  - Run EHWA on just built classlib and drlvm
+  - Run EHWA in standalone mode (once)
+  - Run EHWA in continuous mode using Cruise Control Tool 
+  
+
+Please, refer to ./tests/EHWA.txt concerning initial (manual) EHWA scenario description.
+Please, refer to ./tests/README.txt concerning EHWA run outside of the Build Test Infrastructure.
+
+
+CONTENTS
+========
+
+ +/
+  |-+/adaptors/                        - Adaptors connecting test suites to the Build Test
+  |   |
+  |   |-+/ehwa/                        - EHWA adaptor directory
+  |         |
+  |         |--adaptor.xml             - The adaptor used by BT
+  |         |
+  |         |--parameters.xml          - Parameters file used by BT
+  |         |
+  |         |--README.txt              - This file
+  |  
+  |  
+  |-+/tests/                           - Test suites connected to Build Test
+      |   
+      |-+/ehwa/                        - EHWA test scenario directory
+           |
+           |-- ehwa_eclipse_3.2.1.au3 - Script for running EHWA on Windows           
+           |
+           |-- ehwa_eclipse_3.2.1.pl  - Script for running EHWA on Linux 
+           |
+           |-- ehwa_run.xml           - Scenario ant run file; launches proper script        
+           |
+           |-- EHWA.txt               - Manual scenario description
+           |
+           |-- README.txt             - Description of EHWA run outside of Build Test Infrastructure               
+ 
+  
+PREREQUISITES
+=============
+
+Supported platforms are: Windows*/ia32, Windows*/em64t, 
+                         Linux/ia32/gtk, Linux/em64t/gtk
+                         
+EHWA run under Build Test requires the tools and libraries as framework itself,
+namely J2SDK* 1.5, Apache Ant 1.6.5, Subversion tool, and etc. 
+Please, see BT/REDAME.txt for details.
+
+Note: BT 2.0 only works properly with Sun JDK* 1.5! 
+
+All other external dependencies, such as Eclipse 3.2.1 and xalan.jar 
+will be automatically downloaded on the setup phase.
+                    
+Following tools must be additionally installed for the scenario run:
+
+                 Windows              |                  Linux
+ ---------------------------------------------------------------------------------
+                 AutoIt3              |         X11 GUITest-0.20  or better  
+ http://www.autoitscript.com/autoit3  | http://sourceforge.net/projects/x11guitest
+                                      |                                         
+
+NOTE:
+
+1) On Windows* AutoIt3 home should be added to the PATH before the EHWA scenario run 
+
+2) The problems may exist with X11 GUITest installation on Linux/em64t.
+   It is recommended to use X11 GUITest-0.20 version.
+   The following steps are standard installation: 
+       1) perl Makefile.PL
+       2) make
+       3) make test 
+       4) make install
+   But for Linux/em64t you may need to correct path to X11 libs 
+   in Makefile.PL before the step 1):
+   
+   'LIBS'  => ['-L/usr/X11R6/lib -L/usr/X/lib -lX11 -lXtst -lXext'], ->
+   'LIBS'  => ['-L/usr/X11R6/lib64 -L/usr/X/lib -lX11 -lXtst -lXext'], 
+  
+   Also, please, do the following change in Makefile generated after the step 1), if needed:
+   
+   LIBC = /lib64/libc.so.6 ->
+   LIBC = /lib64//lib64/libc.so.6
+
+
+EHWA SCENARIO RUN
+==================
+
+The following steps should be made to setup EHWA:
+
+  1. Check out Build Test 2.0 installer from SVN
+
+          svn co -r HEAD -N http://svn.apache.org/repos/asf/harmony/enhanced/buildtest/trunk
+
+      NOTE: If HARMONY-3501 is not applied yet, please, 
+            download and unpack attached archive to appropriate <BT_DIR>
+            
+  2. Follow the instructions from <BT_DIR>/README.txt to satisfy general BT
+     pre-requisites (install necessary software, specify environment variables,
+     specify SVN proxy settings if necessary).
+
+     NOTE: This partly means update <BT_DIR>/buildtest.* script with your personal settings
+           If you don't have buildtest.bat/buildtest.sh set JAVA_HOME, ANT_HOME, SVN_HOME, 
+           add corresponding bins to the PATH and call 'ant' (everywhere below) instead of buildtest.
+           
+  3. Unpack this archive to the <BT_DIR> directory
+
+  4. Setup Build Test 2.0 and required suites with the following command, run from <BT_DIR>:
+
+         buildtest -Dtest.suites="classlib,drlvm,ehwa" setup
+
+     NOTE: If you don't won't to use the latest built Harmony JRE as tested JRE you may simply run 
+    
+         buildtest -Dtest.suites=ehwa setup
+
+
+The following steps should be made to run EHWA on the tested JRE:
+
+  5. If needed, correct values of required parameters in <BT_DIR>/required-parameters.properties 
+     file, generated after the setup step. Required parameter for the EHWA run is JRE under test.
+     By default it is set to the last built Harmony JRE.
+     
+  6. If needed, set values of the optional parameters in <BT_DIR>/framework.local.properties file.
+     
+     If you want to pass some options to the tested JRE use the following property:
+    
+     ehwa.parameters.optional.tested.jre.options=<Tested JRE options>
+     - sets JRE options for eclipse launching, default is "-showversion"
+     
+     Cruise Control Web Port and Port for JMX console can be specified by the following properties:
+         framework.parameters.cc.jmxport
+         framework.parameters.cc.webport
+     Please, see BT Readmes for more information.
+    
+  7. Run EHWA on the previously built Harmony JRE the with command:
+
+         buildtest -Dtest.suites="classlib,drlvm,ehwa" run
+
+     Or run the EHWA in continuous mode under Cruise Control with command:
+
+         buildtest -Dtest.suites="classlib,drlvm,ehwa" run-cc
+
+  8. Run EHWA on explicitely defined JRE with command:
+     Use <BT_DIR>/required-parameters.properties file to define tested JRE 
+
+           ant -Dtest.suites=ehwa run
+     Or
+           ant -Dtest.suites=ehwa run-cc
+
+
+NOTE: Do not any movements on the screen during EHWA run, this may cause the scenario fail! 
+      It is better to use a remote machine for running EHWA scenario.
+  
+      
+To check task status, if run EHWA under Cruise Control, 
+point your browser to  http://localhost:< framework.parameters.cc.jmxport>/ 
+- default is http://localhost:8080/
+
+
+NOTE: If you run EHWA under Cruise Control along with classlib and drlvm task, 
+      EHWA will be run every time when some changes occurred in classlib or drlvm
+
+      If you run EHWA under Cruise Control on some explicitely defined JRE,
+      you should do force build from http://localhost:8080/ page to start EHWA execution.
+
+
+Please, see EHWA run results in <BT_DIR>/cc/build/results/ehwa
+Results are stored in the timestamp dirs under <BT_DIR>/cc/build/results/ehwa dir.
+Results contains EHWA log and may contain Eclipse launching log, 
+Eclipse workspace log and picture of the screen if an error has occurred.
+Logs will be also sent to the email indicated in <BT_DIR>/framework.local.properties file
+
+For more information about Build Test configuration, please, 
+see <BT_DIR>/README.txt and <BT_DIR>/SPEC.txt 
+
+
+RUN EHWA OUTSIDE OF BUILD TEST
+==============================
+
+To run the scenario outside of Build Test Infrastructure you only need to have data 
+under ./tests/ehwa dir. For more information, please, refer to ./tests/ehwa/README.txt. 
+
+
+DISCLAIMER AND LEGAL INFORMATION
+================================
+
+*) Other brands and names are the property of their respective owners.
+
+
+
+
+
+
+
+

Propchange: harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/README.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/adaptor.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/adaptor.xml?view=auto&rev=542087
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/adaptor.xml (added)
+++ harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/adaptor.xml Sun May 27 19:49:32 2007
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+     
+         http://www.apache.org/licenses/LICENSE-2.0
+     
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License. -->
+
+<!-- ======================================================================
+         BT Adaptor for Eclipse Hello World Application (EHWA) scenario
+     ====================================================================== -->
+<project name="ehwa" default="run" basedir=".">
+    
+    <property environment="env"/>
+
+    <!--
+        Define properties describing platform type
+    -->
+    <condition property="is.windows">
+        <os family="windows"/>
+    </condition>
+
+    <condition property="is.linux">
+        <and>
+            <os family="unix"/>
+            <os name="linux"/>
+        </and>
+    </condition>
+
+    <condition property="is.64bit">
+        <or>
+            <contains string="${os.arch}" substring="86_64"/>
+            <contains string="${os.arch}" substring="amd64"/>
+        </or>
+    </condition>
+
+    <condition property="is.windows.x86">
+        <and>
+            <isset property="is.windows"/>
+            <not><isset property="is.64bit"/></not>
+        </and>
+    </condition>
+
+    <condition property="is.windows.x86_64">
+        <and>
+            <isset property="is.windows"/>
+            <isset property="is.64bit"/>
+        </and>
+    </condition>
+        
+    <condition property="is.linux.x86">
+        <and>
+            <isset property="is.linux"/>
+            <not><isset property="is.64bit"/></not>
+        </and>
+    </condition>
+
+    <condition property="is.linux.x86_64">
+        <and>
+            <isset property="is.linux"/>
+            <isset property="is.64bit"/>
+        </and>
+    </condition>
+
+    <!--
+        Properties for Eclipse installation
+    -->
+    <condition property="eclipse.archive" value="eclipse-SDK-3.2.1-win32.zip">
+        <isset property="is.windows.x86"/>
+    </condition>
+        
+    <condition property="eclipse.archive" value="eclipse-SDK-3.2.1-win32-x86_64.zip">
+        <isset property="is.windows.x86_64"/>
+    </condition>
+        
+    <condition property="eclipse.archive" value="eclipse-SDK-3.2.1-linux-gtk.tar.gz">
+        <isset property="is.linux.x86"/>
+    </condition>
+
+    <condition property="eclipse.archive" value="eclipse-SDK-3.2.1-linux-gtk-x86_64.tar.gz">
+        <isset property="is.linux.x86_64"/>
+    </condition>
+
+    <condition property="eclipse-3.2.1.homedir" value="${external.libs.dir}/eclipse-3.2.1-win-x86">
+        <isset property="is.windows.x86"/>
+    </condition>
+            
+    <condition property="eclipse-3.2.1.homedir" value="${external.libs.dir}/eclipse-3.2.1-win-x86_64">
+        <isset property="is.windows.x86_64"/>
+    </condition>
+            
+    <condition property="eclipse-3.2.1.homedir" value="${external.libs.dir}/eclipse-3.2.l-lnx-x86">
+        <isset property="is.linux.x86"/>
+    </condition>
+
+    <condition property="eclipse-3.2.1.homedir" value="${external.libs.dir}/eclipse-3.2.1-lnx-x86_64">
+        <isset property="is.linux.x86_64"/>
+    </condition>
+    
+    <condition property="eclipse.exists">
+        <available file="${eclipse-3.2.1.homedir}/eclipse/startup.jar"/>
+    </condition>
+
+    <condition property="eclipse.archive.exists">
+        <available file="${external.arch.dir}/${eclipse.archive}"/>
+    </condition>
+
+    <!-- Setup of the EHWA scenario -->
+    <target name="setup" description="Setup configuration for EHWA scenario run">
+        <log message="============= Adaptor for ${suite.name}: Set Up ..."/>
+
+        <log message="Updating scenario sources..."/>
+        <svn-update-bt path="${tests.sources.dir}/${suite.name}"/>
+
+        <log message="Installing Eclipse..."/>
+        <antcall target="-install-eclipse"/>
+    </target>
+    
+    <!-- Run of the EHWA scenario -->
+    <target name="run" depends="clean">
+        <log message="============= Adaptor for ${suite.name}: Run ..."/>
+
+        <exec-ant file="ehwa_run.xml"
+                  dir="${test.sources.dir}/${suite.name}">
+            <sysproperty key="result.dir"         value="${results.dir}/${suite.name}"/>
+            <sysproperty key="eclipse.home"       value="${eclipse-3.2.1.homedir}/eclipse"/>
+            <sysproperty key="tested.jre"         value="${tested.runtime}"/>
+            <sysproperty key="tested.jre.options" value="${ehwa.parameters.optional.tested.vm.options}"/>
+        </exec-ant>
+
+        <fileset id="ehwa.log.file.id"    dir="${results.dir}/${suite.name}" includes="**/EHWA.log"/>
+        <fileset id="eclipse.log.file.id" dir="${results.dir}/${suite.name}" includes="**/eclipse.log"/>
+
+        <property name="ehwa.log.file"    refid="ehwa.log.file.id"/>
+        <property name="eclipse.log.file" refid="eclipse.log.file.id"/>
+
+        <loadfile srcfile="${results.dir}/${suite.name}/${ehwa.log.file}"    property="ehwa.log"/>
+        <loadfile srcfile="${results.dir}/${suite.name}/${eclipse.log.file}" property="eclipse.log"/>
+
+        <echo file="${results.dir}/${suite.name}/EHWA-message.txt" append="false"
+              message="${ehwa.log}${line.separator}"/>
+
+        <echo file="${results.dir}/${suite.name}/EHWA-message.txt" append="true"
+              message="***********************************************************${line.separator}"/>
+
+        <echo file="${results.dir}/${suite.name}/EHWA-message.txt" append="true"
+              message="Eclipse log:${line.separator}${line.separator}${eclipse.log}${line.separator}"/>
+
+        <echo file="${results.dir}/${suite.name}/EHWA-message.txt" append="true"
+              message="***********************************************************${line.separator}"/>
+    </target>
+    
+    <!-- Clean of the EHWA scenario results -->
+    <target name="clean">
+        <log message="============= Adaptor for ${suite.name}: Clean .."/>
+        <delete dir="${results.dir}/${suite.name}"/>
+        <delete dir="${test.sources.dir}/${suite.name}/workspace"/>
+    </target>
+
+    <!-- Targets for Eclipse downloading and installing -->
+
+    <target name="-install-eclipse"
+            description="download and install Eclipse SDK 3.2.1 if it doesn't exist already"
+            depends="-install-eclipse-win,-install-eclipse-lnx"/>
+
+    <target name="-install-eclipse-win" if="is.windows" unless="eclipse.exists" depends="-download-eclipse">
+        <unzip src="${external.arch.dir}/${eclipse.archive}"
+               dest="${eclipse-3.2.1.homedir}"/>
+    </target>
+        
+    <target name="-install-eclipse-lnx" if="is.linux" unless="eclipse.exists" depends="-download-eclipse">
+        <gunzip src="${external.arch.dir}/${eclipse.archive}"
+                dest="${temp.files.dir}/ehwa_eclipse_tmp.tar"/>
+
+        <untar src="${temp.files.dir}/ehwa_eclipse_tmp.tar"
+               dest="${eclipse-3.2.1.homedir}"/>
+
+        <delete file="${temp.files.dir}/ehwa_eclipse_tmp.tar"/>
+    </target>
+
+    <target name="-download-eclipse" unless="eclipse.archive.exists">
+        <get src="${ehwa.parameters.optional.eclipse.download.address}/${eclipse.archive}"
+             dest="${external.arch.dir}/${eclipse.archive}"
+             usetimestamp="false"
+             verbose="true"/>
+    </target>
+
+</project>
+

Propchange: harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/adaptor.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/parameters.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/parameters.xml?view=auto&rev=542087
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/parameters.xml (added)
+++ harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/parameters.xml Sun May 27 19:49:32 2007
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+     
+         http://www.apache.org/licenses/LICENSE-2.0
+     
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License. 
+-->
+
+<parameters depends="drlvm">
+    
+    <required>
+        <tested.runtime
+            description="Path to Tested Runtime"
+            value="${drlvm.parameters.shared.jre.dir}"/>
+    </required>
+    
+    <optional>
+        <tested.vm.options
+            description="JVM options for tested runtime"
+            value=""/>
+        <eclipse.download.address
+            description="Url where Eclipse download archives can be found" 
+            value="http://mirrors.nsa.co.il/eclipse/eclipse/downloads/drops/R-3.2.1-200609210945"/>
+    </optional>
+
+    <external/>
+    
+    <shared/> 
+    
+    <cc>
+        <summary
+            description="EHWA scenario logs to attach to CC notification"
+            value="${results.dir}/${suite.name}/EHWA-message.txt"/>
+    </cc>
+
+</parameters>

Propchange: harmony/enhanced/buildtest/branches/2.0/adaptors/ehwa/parameters.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/EHWA.txt
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/tests/ehwa/EHWA.txt?view=auto&rev=542087
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/tests/ehwa/EHWA.txt (added)
+++ harmony/enhanced/buildtest/branches/2.0/tests/ehwa/EHWA.txt Sun May 27 19:49:32 2007
@@ -0,0 +1,46 @@
+Eclipse Hello World Application (EHWA) scenario for Eclipse 3.2.1
+
+EHWA description:
+
+1.	Start Eclipse. 
+	"Workspace Launcher" window will popup.
+
+2.	Select Eclipse workspace directory. 
+	Press “OK” button.
+
+3.	Check that "Java - Eclipse SDK" window is appeared.
+	Close "Welcome" page.
+    
+4.  In menu select File -> New -> Project. 
+	The dialog “New Project” will popup.
+
+5.	Select “Java project” and press “Next >” button.
+
+6.	Type “EHWA” in the text field “Project name:” and press “Finish” button.
+
+7.	In menu select File -> New -> Class. 
+	Dialog “New Java Class” will popup.
+
+8.	Type “EHWA” in the text field “Name:”.
+
+9.	Select the checkbox “public static void main(String[] args)” 
+	to create method "main" in the EHWA class.
+	
+10. Press “Finish” button.
+	Check that "EHWA" is created.
+
+11. In the right pane in the method “main” of the class EHWA.EHWA put the line:
+	System.out.println(“Hello, world!”);
+
+12.	Press Ctrl+S to save changes.
+
+13.	In menu select Run -> Run… The dialog “Run” will popup.
+
+14.	Select Java application -> New_application in the left pane.
+
+15.	Ensure that “EHWA” is typed in the “Main” tab in the test field “Project:” 
+	and “EHWA” is typed in the text field “Main class:”.
+	Press “Run” button.
+
+16.	Ensure that the string “Hello, world!” is output in the console and 
+	that status “<terminated> … <time>” is output just above the console.

Propchange: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/EHWA.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/README.txt
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/tests/ehwa/README.txt?view=auto&rev=542087
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/tests/ehwa/README.txt (added)
+++ harmony/enhanced/buildtest/branches/2.0/tests/ehwa/README.txt Sun May 27 19:49:32 2007
@@ -0,0 +1,121 @@
+       =================================================================
+             Eclipse 3.2.1 Hello World Application (EHWA) Scenario
+       =================================================================
+
+This directory contains scripts to automatically run EHWA scenario on the tested JRE.
+
+Main purpose of this test scenario is to make sure that JRE implementation
+under test is able to run simple Hello World Application in Eclipse.
+
+Scenario automation is based on AutoIt3 tool on Windows* and X11 GUITest tool on Linux.
+
+This README file contains short description how to run EHWA in standalone mode.
+Please, refer to EHWA.txt concerning initial (manual) EHWA scenario description.
+
+
+PREREQUISITES
+=============
+
+Supported platforms are: Windows*/ia32, Windows*/em64t, 
+                         Linux/ia32/gtk, Linux/em64t/gtk
+                         
+The following tools are needed for EHWA scenario run:
+
+1) J2SDK* 1.5.0 (http://java.sun.com, http://www.jrockit.com)
+
+2) Apache Ant 1.6.5 or better (http://ant.apache.org) 
+
+3) Eclipse SDK 3.2.1 (http://www.eclipse.org)
+
+4)                 Windows              |                  Linux
+   ---------------------------------------------------------------------------------
+                   AutoIt3              |         X11 GUITest-0.20  or better  
+   http://www.autoitscript.com/autoit3  | http://sourceforge.net/projects/x11guitest
+                                        |                                         
+
+NOTE:
+
+1) On Windows* AutoIt3 home should be added to the PATH before the EHWA scenario run 
+
+2) The problems may exist with X11 GUITest installation on Linux/em64t.
+   It is recommended to use X11 GUITest-0.20 version.
+   The following steps are standard installation: 
+       1) perl Makefile.PL
+       2) make
+       3) make test 
+       4) make install
+   But for Linux/em64t you may need to correct path to X11 libs 
+   in Makefile.PL before the step 1):
+   
+   'LIBS'  => ['-L/usr/X11R6/lib -L/usr/X/lib -lX11 -lXtst -lXext'], ->
+   'LIBS'  => ['-L/usr/X11R6/lib64 -L/usr/X/lib -lX11 -lXtst -lXext'], 
+  
+   Also, please, do the following change in Makefile generated after the step 1), if needed:
+   
+   LIBC = /lib64/libc.so.6 ->
+   LIBC = /lib64//lib64/libc.so.6
+
+
+
+CONTENTS
+========
+
+Here and below <INSTALL_DIR> is the directory containing EHWA scripts.
+
+<INSTALL_DIR>
+       |
+       +-- ehwa_eclipse_3.2.1.au3  -  Script for running EHWA on Windows           
+       |
+       +-- ehwa_eclipse_3.2.1.pl   -  Script for running EHWA on Linux 
+       |
+       +-- ehwa_run.xml            -  Scenario ant run file; launches proper script        
+       |
+       +-- EHWA.txt                -  Manual scenario description
+       |
+       +-- README.txt              -  This file         
+           
+
+
+EHWA SCENARIO RUN
+=================
+
+To run EHWA on Eclipse 3.2.1 scenario, please, do the following:
+
+1) Set up required tools: Ant, AutoIt3/X11 GUITest, JDK, Eclipse 3.2.1.
+
+2) Change directory to <INSTALL_DIR>
+
+3) Run ehwa_run.xml as follows:
+   
+   ant -buildfile ehwa_run.xml -Declipse.home=<Eclipse-3.2.1 Home> \
+                               -Dtested.jre=<Path to JRE under test> \
+                               [-Dtested.jre.options=<Tested JRE options>] \
+                               [-Dresult.dir=<Dir for storing EHWA run results>]
+ 
+Where tested.jre.options property is empty by default and
+result.dir is <INSTALL_DIR> by default
+                                  
+NOTE: Use only 'clean' Eclipse, which isn't bound to any working projects, 
+      for running EHWA scenario, because Eclipse config will be cleaned 
+      during the scenario run!
+
+NOTE: Do not any movements on the screen during EHWA run,
+      this may cause the scenario fail. 
+      It is better to use a remote machine for running EHWA scenario.
+  
+ 
+Please, see EHWA run results in result.dir.
+Results are stored in the timestamps dir under result.dir.
+It contains EHWA log and may contain Eclipse launching log, 
+Eclipse workspace log and picture of the screen if an error has occurred.
+
+
+DISCLAIMER AND LEGAL INFORMATION
+================================
+
+*) Other brands and names are the property of their respective owners.
+
+
+
+
+

Propchange: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/README.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.au3
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.au3?view=auto&rev=542087
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.au3 (added)
+++ harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.au3 Sun May 27 19:49:32 2007
@@ -0,0 +1,443 @@
+
+;     Licensed to the Apache Software Foundation (ASF) under one
+;     or more contributor license agreements.  See the NOTICE file
+;     distributed with this work for additional information
+;     regarding copyright ownership.  The ASF licenses this file
+;     to you under the Apache License, Version 2.0 (the
+;     "License"); you may not use this file except in compliance
+;     with the License.  You may obtain a copy of the License at
+;
+;         http://www.apache.org/licenses/LICENSE-2.0
+;
+;     Unless required by applicable law or agreed to in writing,
+;     software distributed under the License is distributed on an
+;     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+;     KIND, either express or implied.  See the License for the
+;     specific language governing permissions and limitations
+;     under the License.   
+
+; Set options
+Opt("WinWaitDelay", 1000) ; wait for 1c
+Opt("SendKeyDelay", 150) ; wait for 150mc
+Opt("WinTitleMatchMode", 4)
+Opt("WinDetectHiddenText", 1)
+Opt("TrayIconDebug", 1)
+
+; Set variables
+Select 
+	Case $CmdLine[0] = 3 OR $CmdLine[0] = 4
+		Dim Const $eclipse_home = $CmdLine[1]
+		Dim Const $tested_jre = $CmdLine[2]
+		Dim Const $resultsDir = $CmdLine[3]
+		Dim $jre_options = ""
+		If $CmdLine[0] = 4 Then
+			$jre_options  = $CmdLine[4]
+		EndIf
+	Case Else 
+		ConsoleWrite("ERROR! Wrong number of input parameters! STOP." & @LF & "EHWA FAILED!" & @LF)
+		Sleep(3000)
+		Exit(1)
+EndSelect
+
+LogWrite(@LF & "--- Automated Eclipse EHWA scenario for Eclipse 3.2.1 ---" & @LF & @LF)
+
+; Check if some Eclipse window is already olpened
+Opt("WinTitleMatchMode", 2)
+If WinExists("Eclipse SDK") Then
+	LogWrite("ERROR! Some Eclipse window is already opened. STOP." & @LF & "EHWA FAILED!" & @LF)
+	Sleep(3000)
+	Exit(1)
+EndIf
+
+LogWrite("Eclipse Home = " & $eclipse_home & @LF)
+LogWrite("Tested JRE = " &  $tested_jre & @LF)
+LogWrite("Tested JRE options for Eclipse launching = " & $jre_options & @LF)
+
+; Start
+LogWrite(@LF & "Start:" & @LF)
+LogWrite(@TAB & "Run Eclipse" & @LF)
+$run =  $tested_jre & "\bin\java.exe "  & $jre_options & " -cp """ & $eclipse_home & "\startup.jar"" -Dosgi.install.area=""" & $eclipse_home & """ org.eclipse.core.launcher.Main -debug > " & $resultsDir & "\eclipse.log 2>&1"
+Run(@ComSpec & " /c " & $run, "", @SW_HIDE)
+
+
+; 1
+LogWrite(@TAB & "Wait Eclipse 'Workspace Launcher' window to appear " & @LF)
+WinWaitImpl("Workspace Launcher", "", 180)
+If Not WinActive("Workspace Launcher", "Select a workspace") Then WinActivate("Workspace Launcher")
+WinWaitActiveImpl("Workspace Launcher", "", 30)
+LogWrite(@TAB & "window appeared " & @LF)
+
+; 2
+LogWrite(@TAB & "Select " & @WorkingDir & "\workspace as workspace" & @LF)
+ControlFocus("Workspace Launcher", "", "Edit1")
+ControlSetText("Workspace Launcher", "", "Edit1", @WorkingDir & "\workspace" )
+LogWrite(@TAB & "Press OK button" & @LF)
+ControlSend("Workspace Launcher", "", "", "{ENTER}")
+WinWaitCloseImpl("Workspace Launcher", "", 60)
+
+; 3
+LogWrite(@TAB & "Wait 'Java - Eclipse SDK' window to appear " & @LF)
+WinWaitImpl("Java - Eclipse SDK", "", 180)
+If Not WinActive("Java - Eclipse SDK", "") Then WinActivate("Java - Eclipse SDK","")
+WinWaitActiveImpl("Java - Eclipse SDK", "", 30)
+LogWrite(@TAB & "window appeared " & @LF)
+ControlFocus("Java - Eclipse SDK", "", "ToolbarWindow321") 
+ControlClick("Java - Eclipse SDK", "", "ToolbarWindow321") 
+If @error=1 Then 	
+	LogWrite(@TAB & "ERROR! Welcome page window wasn't found. STOP." & @LF)
+	PrintErrorScreen()
+	ExitImpl(1)
+EndIf
+LogWrite(@TAB & "Close Welcome page " & @LF)
+ControlFocus("Java - Eclipse SDK", "", "ToolbarWindow321") 
+ControlSend("Java - Eclipse SDK", "", "ToolbarWindow321", "!+Q") 
+WinWaitNotActive("Java - Eclipse SDK", "")
+Send("p")
+WinWaitActiveImpl("Java - Eclipse SDK", "", 30)
+Sleep(3000)
+
+; 4
+LogWrite(@TAB & "Create new  Java project" & @LF)
+Send("!f")
+Send("n")
+Send("r")
+
+; 5
+LogWrite(@TAB & "Wait 'New Project' window to appear" & @LF)
+WinWaitImpl("New Project","",60)
+If Not WinActive("New Project","") Then WinActivate("New Project","")
+WinWaitActiveImpl("New Project","",30)
+LogWrite(@TAB & "window appeared " & @LF)
+LogWrite(@TAB & "Select Java project" & @LF)
+ControlFocus("New Project", "", "Edit1")
+ControlSend("New Project", "", "Edit1", "{ENTER}")
+LogWrite(@TAB & "Press Next button" & @LF)
+ControlFocus("New Project", "&Next >", "Button2",)
+ControlClick("New Project", "&Next >", "Button2") 
+If @error=1 Then 	
+	LogWrite(@TAB & "ERROR! Next button wasn't found. STOP." & @LF)
+	PrintErrorScreen()
+	ExitImpl(1)
+EndIf
+WinWaitCloseImpl("New Project", "", 60)
+
+; 6
+LogWrite(@TAB & "Wait 'New Java Project' window to appear " & @LF)
+WinWaitImpl("New Java Project","",60)
+If Not WinActive("New Java Project") Then WinActivate("New Java Project")
+WinWaitActiveImpl("New Java Project","",30)
+LogWrite(@TAB & "window appeared, " & @LF)
+LogWrite(@TAB & "Type EHWA as a project name" & @LF)
+ControlFocus("New Java Project", "", "Edit2") 
+ControlSetText("New Java Project", "", "Edit2", "EHWA" )
+LogWrite(@TAB & "Press Finish button" & @LF)
+ControlFocus("New Java Project", "&Finish", "Button27",)
+ControlClick("New Java Project", "&Finish", "Button27") 
+If @error=1 Then 	
+	LogWrite(@TAB & "ERROR! Finish button wasn't found. STOP." & @LF)
+	PrintErrorScreen()
+	ExitImpl(1)
+EndIf
+LogWrite(@TAB & "Wait while project is being created ... " & @LF)
+WinWaitClose("New Java Project", "", 60)
+LogWrite(@TAB & "Project was created" & @LF)
+
+; 7
+WinWaitImpl("Java - Eclipse SDK", "", 60)
+If Not WinActive("Java - Eclipse SDK", "") Then WinActivate("Java - Eclipse SDK","")
+WinWaitActiveImpl("Java - Eclipse SDK", "", 30)
+LogWrite(@TAB & "Create new Java class" & @LF)
+$result=WinMenuSelectItem("Java - Eclipse SDK", "", "&File", "&New", "Class")
+if $result=0 Then
+	LogWrite(@TAB & "ERROR! Menu 'File -> New -> Class' wasn't found. STOP." & @LF)
+	PrintErrorScreen()
+	ExitImpl(1)
+EndIf
+LogWrite(@TAB & "Wait 'New Java Class' window to appear" & @LF)
+WinWaitImpl("New Java Class","",60)
+If Not WinActive("New Java Class") Then WinActivate("New Java Class")
+WinWaitActiveImpl("New Java Class","",30)
+LogWrite(@TAB & "window appeared " & @LF)
+
+; 8
+LogWrite(@TAB & "Type EHWA as class name" & @LF)
+ControlFocus("New Java Class", "", "Edit4")
+ControlSetText("New Java Class", "", "Edit4", "EHWA" )
+
+;9
+LogWrite(@TAB & "Select 'public static void main(String[] args)' checkbox" & @LF)
+ControlFocus("New Java Class", "", "Button15")
+ControlCommand("New Java Class", "", "Button15", "Check", "")
+
+; 10
+LogWrite(@TAB & "Click Finish button" & @LF)
+ControlFocus("New Java Class", "&Finish", "Button19")
+ControlClick("New Java Class", "&Finish", "Button19")
+If @error=1 Then 	
+	LogWrite(@TAB & "ERROR! Finish button wasn't found. STOP." & @LF)
+	PrintErrorScreen()
+	ExitImpl(1)
+EndIf
+LogWrite(@TAB & "Wait while EHWA class is being created ..." & @LF)
+WinWaitClose("New Java Class", "", 60)
+
+; 11
+WinWaitImpl("Java - EHWA.java - Eclipse SDK","",60)
+If Not WinActive("New Java Class") Then WinActivate("Java - EHWA.java - Eclipse SDK")
+WinWaitActiveImpl("Java - EHWA.java - Eclipse SDK","",30)
+LogWrite(@TAB & "EHWA class was successfully created" & @LF)
+Sleep(3000)
+LogWrite(@TAB & "Add System.out.println(""Hello, world!""); string in the main method of EHWA class" & @LF)
+ControlFocus("Java - EHWA.java - Eclipse SDK", "", "SWT_Window039")
+ControlSend("Java - EHWA.java - Eclipse SDK", "", "SWT_Window039", "{DOWN 8}{TAB}")
+ControlSend("Java - EHWA.java - Eclipse SDK", "", "SWT_Window039", "System.out.println(""Hello, world{!}"");")
+Sleep(3000)
+
+; 12
+WinWaitImpl("Java - EHWA.java - Eclipse SDK","",60)
+If Not WinActive("Java - EHWA.java - Eclipse SDK","") Then WinActivate("Java - EHWA.java - Eclipse SDK","")
+WinWaitActiveImpl("Java - EHWA.java - Eclipse SDK","",30)
+LogWrite(@TAB & "Save EHWA class " & @LF)
+$result=WinMenuSelectItem("Java - EHWA.java - Eclipse SDK", "", "&File", "&Save")
+if $result=0 Then
+	LogWrite(@TAB & "ERROR! Menu 'File->Save' wasn't found. Stop." & @LF)
+	PrintErrorScreen()
+	ExitImpl(1)
+EndIf
+LogWrite(@TAB & "Open console" & @LF)
+Send("!w")
+Send("v")
+Send("c")
+Sleep(3000)
+
+; 13
+WinWaitImpl("Java - EHWA.java - Eclipse SDK","",60)
+If Not WinActive("Java - EHWA.java - Eclipse SDK","") Then WinActivate("Java - EHWA.java - Eclipse SDK","")
+WinWaitActiveImpl("Java - EHWA.java - Eclipse SDK","",30)
+LogWrite(@TAB & "Run EHWA class" & @LF)
+Send("!r")
+Send("n")
+LogWrite(@TAB & "Wait 'Run' window to appear " & @LF)
+WinWaitImpl("Run","",60)
+If Not WinActive("Run") Then WinActivate("Run")
+WinWaitActiveImpl("Run","",30)
+LogWrite(@TAB & "window appeared " & @LF)
+
+; 14
+LogWrite(@TAB & "Select Java application " & @LF)
+ControlFocus("Run", "", "Edit1")
+ControlSend("Run", "", "Edit1", "{ENTER}")
+ControlFocus("Run", "", "SysTreeView321")
+ControlSend("Run", "", "SysTreeView321", "{j 2}")
+LogWrite(@TAB & "Create new run configuration" & @LF)
+ControlSend("Run", "", "SysTreeView321", "{ENTER}")
+
+; 15
+WinWaitImpl("Run","",60)
+If Not WinActive("Run","") Then WinActivate("Run","")
+WinWaitActiveImpl("Run","",30)
+LogWrite(@TAB & "Wait while EHWA run configuration is being created ..." & @LF)
+$iter = 0
+While StringInStr(WinGetText("Run"), "EHWA") = 0 
+	$iter = $iter+1
+	Sleep(500)
+	If $iter = 360 Then
+		LogWrite(@TAB & "ERROR! Can't create EHWA run configuration diring 3 min. STOP." & @LF)
+		PrintErrorScreen()
+		ExitImpl(1)
+	EndIf
+WEnd
+LogWrite(@TAB & "Run EHWA class" & @LF)
+ControlFocus("Run", "&Run", "Button55")
+ControlSend("Run", "&Run", "Button55", "{ENTER}")
+WinWaitClose("Run", "", 60)
+
+; 16
+WinWaitActiveImpl("Java - EHWA.java - Eclipse SDK","",30)
+LogWrite(@TAB & "Check Run result" & @LF)
+$iter = 0
+While StringInStr(WinGetText("Java - EHWA.java - Eclipse SDK"), "<terminated>") = 0 
+	$iter = $iter+1
+	Sleep(500)
+	If $iter = 360 Then
+		LogWrite(@TAB & "ERROR! EHWA run didn't stop diring 3 min. STOP." & @LF)
+		PrintErrorScreen()
+		ExitImpl(1)
+	EndIf
+WEnd
+Sleep(3000)
+If Not WinExists("Java - EHWA.java - Eclipse SDK") Then
+	LogWrite(@TAB & "ERROR! Window 'Java - EHWA.java - Eclipse SDK' doesn't exists. STOP." & @LF)
+	PrintErrorScreen()
+	ExitImpl(1)
+EndIf
+
+; Exit 
+ExitImpl(0)
+
+; Auxiliary functions
+
+Func LogWrite($string)
+	Dim Const $logfile = $resultsDir & "\EHWA.log"
+	Local Const $log = FileOpen($logfile, 1)	
+	FileWrite($logfile, $string)
+	FileClose($log)
+EndFunc
+
+Func WinWaitImpl($wname, $wtext, $wdelay) 
+	Dim $newdelay = 120
+	Dim $wreturn = WinWait($wname, $wtext, $wdelay)
+	If $wreturn=0 Then
+		LogWrite(@TAB & "WARNING! Window '" & $wname & "' didn't appear during " & $wdelay & "c. Add extra delay for " & $newdelay & "c." & @LF)
+		$wreturn = WinWait($wname, $wtext, $newdelay)
+		If $wreturn=0 Then
+			LogWrite(@TAB & "ERROR! Window '" & $wname & "' didn't appear during additional " & $newdelay & "c. STOP." & @LF)
+			PrintErrorScreen()
+			ExitImpl(1)
+		Else
+			LogWrite(@TAB & "Window '" & $wname & "' appeared in additional time!" & @LF)
+		EndIf
+	EndIf
+EndFunc
+
+Func WinWaitActiveImpl($wname, $wtext, $wdelay) 
+	Dim $newdelay =  120
+	Dim $wreturn = WinWaitActive($wname, $wtext, $wdelay)
+	If $wreturn=0 Then
+		LogWrite(@TAB & "WARNING! Window '" & $wname & "' didn't become active during " & $wdelay & "c. Add extra delay for " & $newdelay & "c." & @LF)
+		$wreturn = WinWaitActive($wname, $wtext, $newdelay)
+		If $wreturn=0 Then
+			LogWrite(@TAB & "ERROR! Window '" & $wname & "' didn't become active during additional " & $newdelay & "c. STOP." & @LF)
+			PrintErrorScreen()
+			ExitImpl(1)
+		Else
+			LogWrite(@TAB & "Window '" & $wname & "' became active in additional time!" & @LF)
+		EndIf
+	EndIf
+EndFunc
+
+Func WinWaitCloseImpl($wname, $wtext, $wdelay) 
+	Dim $newdelay = 120
+	LogWrite(@TAB & "Closing window '" & $wname & "'" & @LF)
+	Dim $wreturn = WinWaitClose($wname, $wtext, $wdelay)
+	If $wreturn=0 Then
+		LogWrite(@TAB & "WARNING! Window '" & $wname & "' didn't close during " & $wdelay & "c. Add extra delay for " & $newdelay & "c." & @LF)
+		$wreturn = WinWaitClose($wname, $wtext, $newdelay)
+		If $wreturn=0 Then
+			LogWrite(@TAB & "ERROR! Window '" & $wname & "' didn't close during additional " & $newdelay & "c. STOP." & @LF)
+			PrintErrorScreen()
+			ExitImpl(1)
+		Else
+			LogWrite(@TAB & "Window '" & $wname & "' closed in additional time!" & @LF)
+		EndIf
+	EndIf
+EndFunc
+
+Func ExitImpl($error_code)
+	Opt("WinTitleMatchMode",2)
+	LogWrite(@LF & "Exit Eclipse: " & @LF)
+	if WinExists("Eclipse SDK") Then
+		If Not WinActive("Eclipse SDK","") Then WinActivate("Eclipse SDK","")
+		$wr = WinWaitActive("Eclipse SDK", "", 30)
+		If $wr=1 Then
+			$title = WinGetTitle("Eclipse SDK")
+			$exit = WinMenuSelectItem($title, "", "&File", "E&xit" )
+			if $exit=0 Then
+				LogWrite(@TAB & "Menu """ & $title & "->File->Exit"" wasn't found" & @LF)
+				Send("!f")
+				Send("x")
+			EndIf
+			WinWaitClose("Progress Information", "", 120)
+			$wr = WinWaitClose("Eclipse SDK", "", 60)
+			If $wr=1 Then
+				LogWrite(@TAB & "Eclipse was found and closed." & @LF)
+			Else 
+				KillEclipse()
+			EndIf
+		Else
+			KillEclipse()
+		EndIf
+	Else
+		LogWrite(@TAB & "Eclipse wasn't found" & @LF)
+		$error_code=1
+	EndIf
+	Sleep(5000)
+	If $error_code=0 Then 
+		LogWrite(@LF & "EHWA PASSED!" & @LF)
+	Else 
+		LogWrite(@LF & "EHWA FAILED!" & @LF)
+	EndIf
+	FileCopy(@WorkingDir & "/workspace/.metadata/.log", $resultsDir  & "/workspace.log", 1)
+	Exit($error_code)
+EndFunc
+
+Func KillEclipse() 
+	LogWrite(@TAB & "Can't exit Eclipse! Trying to kill ..." & @LF)
+	WinKill("Eclipse SDK")
+	If Not WinExists("Eclipse SDK") Then
+		LogWrite(@TAB & "Eclipse window was found and killed" & @LF)
+	Else 
+		$pid = WinGetProcess("Eclipse SDK")
+		If ProcessExists($pid) Then
+			ProcessClose($pid)
+		EndIf
+		Sleep(3000)
+		If ProcessExists($pid) Then
+			LogWrite(@TAB & "Can't kill Eclipse!" & @LF)
+		Else
+			LogWrite(@TAB & "Eclipse was killed!" & @LF)
+		EndIf
+	EndIf
+EndFunc
+
+Func PrintErrorScreen()
+	Opt("WinTitleMatchMode", 2)
+	LogWrite(@LF & "An ERROR has ocurred!" & @LF)
+	If Not WinExists("Eclipse SDK") Then
+		ExitImpl(1)
+	EndIf
+	LogWrite(@LF & "Print error screen:" & @LF)
+ 	$file = FileOpen($resultsDir & "\error.bmp", 2)
+	FileClose($file) 
+	Send("{PRINTSCREEN}")
+	LogWrite(@TAB & "Open mspaint to save errror screen" & @LF)
+	Run("mspaint " & $resultsDir & "\error.bmp")
+	LogWrite(@TAB & "Wait for 'error - Paint' window" & @LF)
+	$result = WinWait(" - Paint", "", 180)
+	If $result=0 Then
+			LogWrite(@TAB & "ERROR! Paint window didn't appear during 3 min. Can't save error screen." & @LF)
+			ExitImpl(1)
+	EndIf
+	If Not WinActive(" - Paint") Then WinActivate("- Paint")
+    WinWaitActive(" - Paint", "", 180)
+	$result = WinMenuSelectItem(" - Paint", "", "&Edit", "&Paste")
+	If $result = 0 Then
+		LogWrite(@TAB & "Mspaint menu 'Edit -> Paste' wasn't found" & @LF)
+		LogWrite(@TAB & "Can't save error picture!" & @LF)
+		ExitImpl(1)
+	EndIf
+	LogWrite(@TAB & "Save error screen" & @LF)
+	$result = WinMenuSelectItem(" - Paint", "", "&File", "&Save")
+	if $result = 0 Then
+		LogWrite(@TAB & "Mspaint menu 'File -> Save' wasn't found" & @LF)
+		LogWrite(@TAB & "Can't save error picture!" & @LF)
+		ExitImpl(1)
+	EndIf
+	LogWrite(@TAB & "Exit mspaint" & @LF)
+	$result = WinMenuSelectItem(" - Paint", "", "&File", "E&xit")
+	if $result = 0 Then
+		LogWrite(@TAB & "Mspaint menu 'File -> Exit' wasn't found" & @LF)
+		LogWrite(@TAB & "Can't save error picture!" & @LF)
+		Exitimpl(1)
+	EndIf
+	WinWaitClose(" - Paint", "", 60)
+	If WinExists("Eclipse SDK") Then
+		LogWrite(@TAB & "Switch to Eclipse" & @LF)
+		If Not WinActive("Eclipse SDK") Then WinActivate("Eclipse SDK")
+		WinWaitActive("Eclipse SDK", "", 120)
+	EndIf
+	Opt("WinTitleMatchMode", 4)
+EndFunc
+
+;
+

Added: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.pl
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.pl?view=auto&rev=542087
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.pl (added)
+++ harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.pl Sun May 27 19:49:32 2007
@@ -0,0 +1,337 @@
+#!/usr/bin/perl 
+
+## ===================================================================
+##     Licensed to the Apache Software Foundation (ASF) under one
+##     or more contributor license agreements.  See the NOTICE file
+##     distributed with this work for additional information
+##     regarding copyright ownership.  The ASF licenses this file
+##     to you under the Apache License, Version 2.0 (the
+##     "License"); you may not use this file except in compliance
+##     with the License.  You may obtain a copy of the License at
+##
+##         http://www.apache.org/licenses/LICENSE-2.0
+##
+##     Unless required by applicable law or agreed to in writing,
+##     software distributed under the License is distributed on an
+##     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+##     KIND, either express or implied.  See the License for the
+##     specific language governing permissions and limitations 
+##       under the License.    
+## ===================================================================
+
+use X11::GUITest qw/
+
+    FindWindowLike
+    
+    GetWindowName
+
+    SetInputFocus
+    GetInputFocus
+
+    WaitWindowViewable
+    WaitWindowClose
+
+    SendKeys
+    SetKeySendDelay
+
+    StartApp
+    RunApp
+/;
+
+ # Set option
+ SetKeySendDelay(150);
+
+ # Current directory
+ $curdir = `pwd`;
+ $curdir =~ s/\n//;
+
+ # Set variables
+ $vm_options = "";
+ if ((scalar(@ARGV) == 4) || (scalar(@ARGV) == 5)) {
+    $os_arch = $ARGV[0];
+ 	$eclipse_home = $ARGV[1];
+    $java_home = $ARGV[2];
+	$resultsDir = $ARGV[3];
+	if(scalar(@ARGV) == 5) {
+	    $vm_options = $ARGV[4];
+	}
+    LogWrite("\nEclipse Home = $eclipse_home\n");
+	LogWrite("Tested JRE = $java_home\n");
+	LogWrite("Tested JRE options for Eclipse launching = $vm_options\n\n");
+ } else {
+    print("ERROR: Wrong number of input parameters! \n\nEHWA FAILED!\n");
+    die "ERROR: Wrong number of input parameters!";
+ }
+
+ LogWrite("--- Automated EHWA scenario for Eclipse 3.2.1 --- \n\n");
+
+ # Check if some Eclipse window is already olpened
+ my ($eclipse_win) = FindWindowLike('Eclipse SDK');
+ if (($eclipse_win)) {
+	LogWrite("\nERROR: Some Eclipse window is already opened! \n\n EHWA FAILED!\n");
+    die "ERROR: Some Eclipse window is already opened!"
+ }
+
+ LogWrite("Start: \n\n");
+
+ LogWrite("Run Eclipse \n");
+ $result = StartApp("$java_home/bin/java $vm_options -cp \"$eclipse_home/startup.jar\" -Dosgi.install.area=\"$eclipse_home\" org.eclipse.core.launcher.Main -ws gtk -os linux -arch $os_arch -debug > $resultsDir/eclipse.log 2\>\&1");
+
+ if ($result == 0) {	
+	LogWrite("ERROR: Can't start Eclipse! \n EHWA FAILED!\n");
+    die "ERROR: Can't start Eclipse!"
+ }
+
+ # Select default workspace
+ LogWrite("Select workspace \n");
+ my $winID = WinWaitImpl('Workspace Launcher', 180);
+ SleepImpl();
+ WinSendKeys($curdir.'/workspace', 'Workspace Launcher');
+ LogWrite("Press 'OK' button \n");
+ SleepImpl();
+ WinSendKeys('{ENT}', 'Workspace Launcher');
+ WinWaitCloseImpl($winID);
+
+ # Close Welcome page
+ LogWrite("Close Welcome page \n");
+ $winID = WinWaitImpl('Java - Eclipse SDK', 180);
+ SleepImpl();
+ WinSendKeys('%({+}{-})', 'Java - Eclipse SDK');
+ SleepImpl();
+ WinSendKeys('c', 'Java - Eclipse SDK');
+ SleepImpl();
+
+ # Create new Java project
+ LogWrite("Create new project \n");
+ WinSendKeys('^(n)', 'Java - Eclipse SDK');
+ SleepImpl();
+ $winID = WinWaitImpl('New');
+ LogWrite("Select new Java project \n");
+ WinSendKeys('{ENT}', 'New');
+ SleepImpl();
+ WinSendKeys('{DOW 2} {ENT}', 'New');
+
+ # Wait New Java Project window to appear      
+ $winID = WinWaitImpl('New Java Project');
+ LogWrite("Type 'EHWA' as project name \n");
+ WinSendKeys('EHWA', 'New Java Project');
+ SleepImpl();
+ LogWrite("Press 'Finish' button \n");
+ WinSendKeys('{ENT}', 'New Java Project');
+ WinWaitCloseImpl($winID);
+
+ # Create New Java Class
+ LogWrite("Create new Java class \n");
+ $winID = WinWaitImpl('Java - Eclipse SDK'); 
+ SleepImpl();
+ WinSendKeys('^(n)', 'Java - Eclipse SDK');
+
+ # Wait 'New' dialog window to appear
+ $winID = WinWaitImpl('New');
+ SleepImpl();
+
+ # Select new Java class
+ LogWrite("Select new Java class for 'EHWA' project \n");
+ WinSendKeys('c', 'New');
+ SleepImpl();
+ WinSendKeys('{ENT 2}', 'New');
+
+ # Wait 'Java Class' window to appear
+ $winID = WinWaitImpl('Java Class');
+
+ # Create EHWA class
+ LogWrite("Type 'EHWA' as class name, press 'Finish' button \n");
+ SleepImpl();
+ WinSendKeys('EHWA', 'Java Class');
+ LogWrite("Select the 'public static void main(String[] args)' checkbox \n"); 
+ SleepImpl();
+ WinSendKeys('%(g)', 'Java Class');
+ LogWrite("Press 'Finish' button \n");
+ SleepImpl();
+ WinSendKeys('%(f)', 'Java Class');
+ WinWaitCloseImpl($winID);   
+
+ # Paste System.out.println("Hello, world"); into EHWA class
+ LogWrite("Put System.out.println(\"Hello, world\"); into EHWA class \n");
+ $winID = WinWaitImpl('Java - EHWA.java - Eclipse SDK');
+ SleepImpl();
+ WinSendKeys('{DOW 8}', 'Java - EHWA.java - Eclipse SDK');
+ SleepImpl();
+ WinSendKeys('{TAB}', 'Java - EHWA.java - Eclipse SDK');
+ SleepImpl();
+ WinSendKeys('System.out.println{(}"Hello, World{RIG}{RIG};', 'Java - EHWA.java - Eclipse SDK');
+ SleepImpl();
+
+ # Save EHWA class
+ LogWrite("Save EHWA class \n");
+ WinSendKeys('^(s)', 'Java - EHWA.java - Eclipse SDK');
+ SleepImpl();
+
+ # Run EHWA class
+ LogWrite("Run EHWA class \n");
+ WinSendKeys('%(r)s', 'Java - EHWA.java - Eclipse SDK');
+ SleepImpl();
+ WinSendKeys('{ENT}', 'Java - EHWA.java - Eclipse SDK');
+ SleepImpl(10000);
+ my @winIds = FindWindowLike('Progress Information');
+ if (scalar(@winIds) > 0) {
+     WinWaitCloseImpl($winIds[0], 300);
+ }
+
+ # Exit Eclipse
+ LogWrite("Exit Eclipse \n");
+ $winID = WinWaitImpl('Java - EHWA.java - Eclipse SDK');
+ WinSendKeys('%(f)', 'Java - EHWA.java - Eclipse SDK');
+ SleepImpl();
+ WinSendKeys('x', 'Java - EHWA.java - Eclipse SDK');
+ WinWaitCloseImpl($winID);
+ SleepImpl();
+
+ # EHWA passed
+ LogWrite("\nEHWA PASSED! \n");
+ exit 0;
+
+
+### User-defined functions ###
+
+sub WinWaitImpl {    
+      my $winName = shift;
+      my $delay = shift || 120;       
+      LogWrite(" wait window '".$winName."' to appear ...\n");
+      my @wins = WaitWindowViewable($winName, 0, $delay);
+      if(scalar(@wins) > 0) {
+        my $win = @wins[0];        
+      	LogWrite(" window '".$winName."' appeared\n");
+	    if (GetInputFocus() != $win) {
+	        SetInputFocus($win);
+	        if (GetInputFocus() != $win) {  
+		        LogWrite("ERROR: Unable to set focus to '".$winName."' window! \n");
+		        PrintScreen();
+		        KillEclipse();	
+ 		        LogWrite("\n\nEHWA FAILED! \n");
+    	    	die "ERROR: Unable to set focus to '".$winName."' window!"; 
+	        }
+	    }
+	    return $win;	
+      } else {
+          LogWrite("ERROR: Window '".$winName."' didn't appear for ".$delay." sec! \n");
+          PrintScreen();
+	      KillEclipse();
+	      LogWrite("\n\nEHWA FAILED! \n");
+          die "ERROR: Window '".$winName."' didn't appear for ".$delay." sec!";	
+      }      
+}
+
+sub WinWaitCloseImpl {    
+      my $win = shift;
+      my $winName = GetWindowName($win);
+      my $delay = shift || 120;     
+      LogWrite(" wait window '".$winName."' to close ...\n");
+      my $result = WaitWindowClose($win, $delay);
+      if($result > 0) {                
+          LogWrite(" window '".$winName."' successfully closed \n");
+      } else { 
+          LogWrite("ERROR: Failed to close '".$winName."' window during ".$delay." sec! \n");
+          PrintScreen();
+	      KillEclipse();
+	      LogWrite("\n\nEHWA FAILED! \n");
+	      die "ERROR: Failed to close '".$winName."' window during ".$delay." sec!";	
+      }      
+}
+
+sub WinSendKeys {
+    my $keys = shift;
+    my $target_win_name = shift;
+    my @ids = WaitWindowViewable($target_win_name, 0, 5);
+    if (scalar(@ids) > 0) {
+        my $focus_win_id = GetInputFocus();
+        my $focus_win_name = GetWindowName($focus_win_id);
+        my $target_win_id = @ids[0];
+        if ($focus_win_id == $target_win_id) {
+	        SendKeys($keys);
+	    } else {
+	        if (index($focus_win_name, "error") != -1 || index($focus_win_name, "Error") != -1 ) {
+	            LogWrite("\nERROR: Some error window is appeared: '".$focus_win_name."'! \n");	
+		        PrintScreen();
+		        KillEclipse();
+		        LogWrite("\n\nEHWA FAILED! \n");
+    	        die "ERROR: Some error window is appeared: '".$focus_win_name."'!"; 
+	        } else {
+                SendKeys($keys);
+	        } 
+	    }
+    } else {
+	    LogWrite("\nERROR: Window '".$target_win_name."' isn't viewable! \n");
+	    PrintScreen();
+	    KillEclipse();
+	    LogWrite("\n\nEHWA FAILED! \n");
+    	die "ERROR: Window '".$target_win_name."' isn't viewable!"; 
+    }      
+}
+
+sub LogWrite {
+	open(LOG, ">>$resultsDir/EHWA.log") || die("ERROR: Can't open log file $resultsDir/EHWA.log! \n");
+	my $text = shift;
+	print LOG $text;
+	close(LOG);
+}
+
+sub KillEclipse {
+    if (-e "$curdir/workspace/.metadata/.log") { 
+        my $result =`cp -f $curdir/workspace/.metadata/.log $resultsDir/workspace.log`;
+    }
+    LogWrite("\nKill Eclipse: \n");
+    my $user = `whoami`;
+    $user =~ s/\n//;
+    my $proc_info = `ps U $user | grep $eclipse_home/startup.jar | grep -v grep`;
+    my @procs = split(/\n/, $proc_info);
+    my $length = scalar(@procs); 
+    if ($length < 1) {
+        LogWrite("\tEclipse process wasn't found \n");
+        return;
+    } else {
+        LogWrite("\tFound ".$length." Eclipse processes \n");
+        for ($i = 0; $i < $length; $i++) {
+            LogWrite("\tProcess ".$i.": \n");
+            my $proc_ID = $procs[$i];
+            $proc_ID =~ s/\s*(\d\d*).*/\1/;
+            if ($proc_ID != 0) {
+                my $result = kill(9, $proc_ID);
+                if ($result == 1) {
+                    LogWrite("\tEclipse process was killed \n");
+                } else {
+                    if ($result == 0) {
+                        LogWrite("\tERROR: Eclipse process can't be killed! \n");    
+                    }
+                    if ($result > 1) {
+                        LogWrite("\tERROR: More than one process was killed! \n");
+                    }
+                }
+            }            
+        }
+    }
+}
+
+sub PrintScreen {
+	my $user = `whoami`;
+	$user =~ s/\n//;
+	my $proc_info = `ps U $user | grep $eclipse_home/startup.jar | grep -v grep`;
+	my @procs = split(/\n/, $proc_info);
+	my $length = scalar(@procs); 
+	if ($length < 1) { return; }
+	LogWrite("\nPrint error screen picture: \n");
+    $result = RunApp("xwd -root -screen -silent -out $resultsDir/error.xwd");
+ 	if ($result != 0) {	
+ 		LogWrite("\tERROR: Can't save screen picture to $resultsDir/error.xwd! \n");
+ 	} else {
+		LogWrite("\tPicture was saved to $resultsDir/error.xwd \n");
+	}
+}
+
+sub SleepImpl {
+      $delay = shift || 6000;
+      SendKeys('{PAUSE '.$delay.'}');
+}
+
+### END ###
+

Propchange: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_eclipse_3.2.1.pl
------------------------------------------------------------------------------
    svn:eol-style = native

Added: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_run.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_run.xml?view=auto&rev=542087
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_run.xml (added)
+++ harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_run.xml Sun May 27 19:49:32 2007
@@ -0,0 +1,239 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+    Copyright 2006 The Apache Software Foundation or its licensors, as applicable
+     
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+     
+         http://www.apache.org/licenses/LICENSE-2.0
+     
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License. 
+-->
+
+<project name="ehwa" default="run" basedir=".">
+	
+	<description>
+		Eclipse 3.2.1 Hello World Application scenario 
+    	for Apache Harmony http://incubator.apache.org/harmony
+    </description>
+	
+	<tstamp>
+		<format property="timestamp" pattern="yyyyMMdd_hhmm" />
+	</tstamp>
+	
+	<condition property="is.windows.x86">
+    	    	<and>
+        	 	<os family="windows"/>
+        		<contains string="${os.arch}" substring="86"/>
+        		<not><contains string="${os.arch}" substring="64"/></not>                                           
+       	</and>
+	</condition>
+
+	<condition property="is.windows.x86_64">
+	    <and>
+	        <os family="windows"/>
+		 	<or>
+	        	<contains string="${os.arch}" substring="86_64"/> 
+		    	<contains string="${os.arch}" substring="amd64"/>
+		 	</or>
+	    </and>                              
+	</condition>
+
+	
+	<condition property="is.linux.x86">
+	    <and>
+	    	<os family="unix"/>
+	        <os name="linux"/>
+            <contains string="${os.arch}" substring="86"/>
+	    	<not><contains string="${os.arch}" substring="64"/></not>
+	    </and>                                 
+	</condition>
+
+	<condition property="is.linux.x86_64">
+	    <and>
+	        <os family="unix"/>
+	        <os name="linux"/>
+		 	<or>
+	        	<contains string="${os.arch}" substring="86_64"/> 
+		    	<contains string="${os.arch}" substring="amd64"/>
+		 	</or>
+	    </and>                              
+	</condition>
+													
+	<condition property="is.linux">
+	    <or>
+	    	<istrue value="${is.linux.x86}"/>
+	      <istrue value="${is.linux.x86_64}"/>
+	    </or>                                 
+	</condition>
+	
+	<condition property="is.windows">
+	    <or>
+	    	<istrue value="${is.windows.x86}"/>
+	      <istrue value="${is.windows.x86_64}"/>
+	    </or>                                 
+	</condition>
+
+	<condition property="platform.supported">
+		<or>
+		    <istrue value="${is.windows}"/>
+		    <istrue value="${is.linux}"/>
+		</or>                                 
+	</condition>
+	
+	<property environment="env"/>
+
+	<condition property="runner" value="AutoIt3.exe">
+		<isset property="is.windows"/>
+	</condition>
+	       
+	<condition property="runner" value="perl">
+		<isset property="is.linux"/>
+	</condition>
+	
+	<condition property="file.ext" value=".exe">
+		<isset property="is.windows"/>
+	</condition>	
+	
+	<condition property="file.ext" value="">
+		<isset property="is.linux"/>
+	</condition>
+	
+	<condition property="jre.options" value="${tested.jre.options}" else="">
+		<and>
+			<isset property="tested.jre.options"/>
+			<length string="${tested.jre.options}" trim="true" length="0" when="greater"/>
+		</and>
+	</condition>
+	
+	<condition property="res.dir" value="${result.dir}/${timestamp}" else="${basedir}/results/${timestamp}">
+		<isset property="result.dir"/>
+	</condition>
+	
+	<condition property="args" 
+		value="ehwa_eclipse_3.2.1.au3 &quot;${eclipse.home}&quot; &quot;${tested.jre}&quot; &quot;${res.dir}&quot; &quot;${jre.options}&quot;">
+		<isset property="is.windows"/>
+	</condition>
+	
+	<condition property="args" 
+		value="./ehwa_eclipse_3.2.1.pl x86 &quot;${eclipse.home}&quot; &quot;${tested.jre}&quot; &quot;${res.dir}&quot; &quot;${jre.options}&quot;">
+		<isset property="is.linux.x86"/>
+	</condition>
+	
+	<condition property="args" 
+		value="./ehwa_eclipse_3.2.1.pl x86_64 &quot;${eclipse.home}&quot; &quot;${tested.jre}&quot; &quot;${res.dir}&quot; &quot;${jre.options}&quot;">
+		<isset property="is.linux.x86_64"/>
+	</condition>
+	
+	<target name="run" description="Run EHWA scenario" if="platform.supported">
+		
+		<echo>--- Run EHWA scenario on the following configuration ---</echo>
+		<echo>TESTED JRE = ${tested.jre}</echo>
+		<echo>TESTED JRE OPTIONS = ${jre.options}</echo>
+		<echo>ECLIPSE HOME = ${eclipse.home}</echo>
+		<echo>---------------------------------------------------------</echo>
+
+		<antcall target="check.autoit"/>
+		<antcall target="check.tested.jre"/>
+		<antcall target="check.eclipse"/>
+		<antcall target="check.eclipse.version"/> 
+		
+		<echo>Cleaning Eclipse configuration ...</echo>
+		<echo>Save a copy of Eclipse configuration to ${eclipse.home}/configuration.backup</echo>
+		<copy todir="${eclipse.home}/configuration.backup" failonerror="false">
+			<fileset dir="${eclipse.home}/configuration"/>
+		</copy>
+		<delete dir="${eclipse.home}/configuration/org.eclipse.osgi"/>
+		<delete dir="${eclipse.home}/configuration/org.eclipse.core.runtime"/>
+		<delete dir="${eclipse.home}/configuration/org.eclipse.update"/>
+		<delete dir="${eclipse.home}/configuration/.settings"/>
+		
+		<echo>Removing Eclipse workspace ...</echo>
+		<delete dir="${basedir}/workspace"/>
+
+		<echo>Creating results directory ...</echo>
+		<mkdir dir="${res.dir}"/> 
+		
+		<echo>Start EHWA scenario</echo>
+		<echo>Please, see ${res.dir}/EHWA.log for details</echo>
+		<exec executable="${runner}" dir="${basedir}" resultproperty="ehwa.exit.code">
+		    <arg line="${args}"/>
+		</exec>
+			
+		<condition property="ehwa.passed">
+			<equals arg1="${ehwa.exit.code}" arg2="0"/>
+		</condition>
+		
+		<loadfile property="ehwa.log" srcFile="${res.dir}/EHWA.log"/>
+		<loadfile property="eclipse.log" srcFile="${res.dir}/eclipse.log" failonerror="false"/>
+		
+		<condition property="eclipse.log.message" value="
+${line.separator}======================= eclipse.log =======================
+${line.separator}${eclipse.log}" else="">
+			<isset property="eclipse.log"/>
+		</condition>
+		
+		<property name="fail.message" value="
+${line.separator}========================== EHWA.log =======================
+${line.separator}${ehwa.log}
+${eclipse.log.message}
+${line.separator}==========================================================="/>
+		
+		<condition property="ehwa.passed">
+			<equals arg1="${ehwa.exit.code}" arg2="0"/>
+		</condition>
+			
+		<antcall target="print.fail.message"/>
+		<fail message="EHWA FAILED!" unless="ehwa.passed"/>
+		<echo>EHWA PASSED!</echo>
+	</target>
+		
+	<target name="print.fail.message" unless="ehwa.passed">
+		<echo message="${line.separator}${fail.message}${line.separator}"/>
+	</target>
+	
+	<target name="check.tested.jre" description="Checks if tested.jre is correct">
+		<condition property="no.java">
+			<not><available file="${tested.jre}/bin/java${file.ext}"/></not>
+		</condition>
+		<fail message="ERROR! Tested JRE home is incorrect.${line.separator}
+Please, use -Dtested.jre=&lt;JRE UNDER TEST&gt;.
+${line.separator}EHWA FAILED!" if="no.java"/>
+	</target>
+	
+	<target name="check.eclipse" description="Checks if eclipse.home is correct">
+		<condition property="eclipse" value="eclipse.exe">
+			<isset property="is.windows"/>
+		</condition>	
+		<condition property="eclipse" value="eclipse">
+			<isset property="is.linux"/>
+		</condition>
+		<condition property="no.eclipse">
+			<not><available file="${eclipse.home}/${eclipse}"/></not>
+		</condition>
+		<fail message="ERROR! Eclipse home is incorrect.
+${line.separator}Please, use -Declipse.home=&lt;ECLIPSE_HOME&gt; or set eclipse.home variable.
+${line.separator}EHWA FAILED!" if="no.eclipse"/>
+	</target>
+	
+	<target name="check.eclipse.version" description="Checks if eclipse.home points to Eclipse 3.2.1">
+		<fileset id="found.plugin" dir="${eclipse.home}/plugins" includes="org.eclipse.jdt.core_3.2.1*.jar"/>
+		<property name="plugin-3.2.1" refid="found.plugin"/>
+		<condition property="wrong.eclipse.version">
+			<length string="${plugin-3.2.1}" when="less" length="1"/>
+		</condition>
+		<fail message="ERROR! eclipse.home doesn't point to Ecipse 3.2.1.${line.separator}EHWA FAILED!" if="wrong.eclipse.version"/>
+	</target>
+	
+	<target name="check.autoit" if="is.windows" description="Checks if AutoIt3 is installed for EHWA run on Windows">
+		<available file="AutoIt3.exe" filepath="${env.Path}" property="autoit"/>
+		<fail message="ERROR! AutoIt3 is not installed or it is not in the Path.${line.separator}EHWA FAILED!" unless="autoit"/>
+	</target>
+	
+</project>
+

Propchange: harmony/enhanced/buildtest/branches/2.0/tests/ehwa/ehwa_run.xml
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message