You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by sm...@apache.org on 2007/10/10 17:06:41 UTC
svn commit: r583505 [1/4] - in /harmony/enhanced/buildtest/branches/2.0:
adaptors/mauve_test/ tests/mauve_test/
Author: smishura
Date: Wed Oct 10 08:06:40 2007
New Revision: 583505
URL: http://svn.apache.org/viewvc?rev=583505&view=rev
Log:
Apply patch from HARMONY-4828:
([buildtest] New test suite for mauve unit test.)
Added:
harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/
harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/MAUVE.BTI.README.txt (with props)
harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/adaptor.xml (with props)
harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/parameters.xml (with props)
harmony/enhanced/buildtest/branches/2.0/tests/mauve_test/
harmony/enhanced/buildtest/branches/2.0/tests/mauve_test/all.include.list.txt
harmony/enhanced/buildtest/branches/2.0/tests/mauve_test/include.list.txt (with props)
Added: harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/MAUVE.BTI.README.txt
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/MAUVE.BTI.README.txt?rev=583505&view=auto
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/MAUVE.BTI.README.txt (added)
+++ harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/MAUVE.BTI.README.txt Wed Oct 10 08:06:40 2007
@@ -0,0 +1,86 @@
+ ================================================
+ Running Muave Unit Tests under BT infrastructure
+ ================================================
+
+
+This document describes how to run Mauve Unit Test on Apache Harmony
+within Apache Harmony Build&Test infrastructure.
+Please see BTI's README.txt for general instructions on BT usage.
+The following platforms are currently supported: Linux x86, Linux x86_64.
+
+---------------
+Archive Content
+---------------
+
+This archive contains scripts for running Mauve Test within BT.
+The directories structure within BT trunk directory is as follows:
+
++<BTI trunk>/
+|-+adaptors/ - scripts connecting test suites to BTI (called "adaptors")
+| |
+| |-+mauve_test/ - mauve_test suite adaptor directory
+| |
+| |--adaptor.xml - mauve_test suite adaptor
+| |
+| |--MAUVE.BTI.README.txt - this readme file
+| |
+| |--parameters.xml - parameters file
+|
+|-+tests/ - test suites integrated into BTI
+ |
+ |-+muave_test/ - mauve_test scripts directory
+ |
+ |--all.include.list.txt - all test list that can run within harmony jre
+ |
+ |--include.list.txt - test list can pass 100% within RI
+ |
+
+-----------------------------------------------------------------
+Running Mauve Unit Tests on Harmony JRE under BT infrastructure
+-----------------------------------------------------------------
+
+1. Follow instructions from <BTI trunk>/README.txt to satisfy general BTI
+ pre-requisites (install necessary software, specify environment variables,
+ specify proxy settings if necessary).
+
+2. Unpack this archive to <BTI trunk> directory
+
+3. Perform setup:
+
+ buildtest -Dtest.suites="classlib,drlvm,mauve_test" setup
+
+4. Configure Mauve Test for BT
+
+ * Modify platform specific include.list in <BTI trunk>/tests/mauve_test if necessary.
+ You can change the ${required.test.list} in <BTI trunk>/adaptors/mauve_test/parameters.xml
+ for the wanted test list to run. Default is the all.include.list.txt.
+
+ * Copy ecj_3.2.2.jar downloaded by BTI from <BTI trunk>/build/jar
+ to your ${ANT_HOME}/lib, since the mauve test need to compiled by ecj.jar.
+
+ * Make sure configure the mauve test first, since by default the compilation is compiled by make.
+ There are still some variable undefined in <mauve_src>/gnu/testlet/config.java.in.
+ You can configure it by "./configure", it will set the variable and change the file to cofig.java.
+ You can finish it manually. Refer to <mauve_src>/README for more details.
+
+5. Configure BT for Mauve Unit Test run:
+
+ * Specify appropriate mail settings in <BTI trunk>/framework.local.properties file
+ if you want Cruise Control to send mail notifications.
+
+ * Specify appropriate mail settings in <BTI trunk>/framework.local.properties file
+ if you want Cruise Control to send mail notifications.
+
+6. Build classlib and drlvm and run Mauve Unit Test on it:
+
+ buildtest -Dtest.suites="classlib,drlvm,mauve_test" run
+
+7. To continuously perform Harmony JRE build (classlib and drlvm) and EUT run under Cruise Control:
+
+ buildtest -Dtest.suites="classlib,drlvm,mauve_test" run-cc
+
+--------------------------------
+DISCLAIMER AND LEGAL INFORMATION
+--------------------------------
+Other brands and names are the property of their respective owners.
+
Propchange: harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/MAUVE.BTI.README.txt
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/adaptor.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/adaptor.xml?rev=583505&view=auto
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/adaptor.xml (added)
+++ harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/adaptor.xml Wed Oct 10 08:06:40 2007
@@ -0,0 +1,131 @@
+<?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 Mauve Test
+ ====================================================================== -->
+<project name="mauve_test" default="run" basedir=".">
+
+ <property name="mauve.results.dir" location="${results.dir}/${suite.name}"/>
+ <property name="mauve.classes.dir" location="${classes.dir}/${suite.name}"/>
+ <property name="current.results.dir" location="${mauve.results.dir}/results"/>
+ <property name="mauve.summary" location="${mauve.results.dir}/summary.txt"/>
+
+ <target name="setup">
+ <echo level="info" message="============= Adaptor for ${suite.name}: Set Up ..."/>
+ <echo level="info" message=""/>
+ <echo level="info" message="Tested JVM: ${mauve_test.parameters.required.tested.jvm}"/>
+ <echo level="info" message="Compiler(ecj.jar) location: ${ext.ecj.jar.location}"/>
+ <echo level="info" message="Mauve source location: ${mauve.location}"/>
+ <echo level="info" message="Mauve classes location: ${mauve.classes.dir}"/>
+ <echo level="info" message=""/>
+
+ <mkdir dir="${current.results.dir}"/>
+ <mkdir dir="${mauve.classes.dir}"/>
+ <antcall target="-compile"/>
+ </target>
+
+ <target name="run">
+ <condition property="jvm.not.exist">
+ <not>
+ <available file="${tested.jvm}"/>
+ </not>
+ </condition>
+ <fail message="Path to JVM does not exist: ${tested.jvm}" if="jvm.not.exist"/>
+
+ <!-- Run mauve test -->
+ <java classname="gnu.testlet.runner.Mauve"
+ fork="yes"
+ jvm="${tested.jvm}"
+ dir="${mauve.classes.dir}">
+ <arg line="-o ${current.results.dir} ${test.sources.dir}/${suite.name}/${test.list}"/>
+ <classpath>
+ <pathelement path="${mauve.classes.dir}"/>
+ </classpath>
+ </java>
+
+ <!-- Generate mail summary -->
+ <echo file="${mauve.summary}" message="========== Mauve Test Summary =========="/>
+ <echo file="${mauve.summary}" append="true" message="${line.separator}${line.separator}"/>
+ <echo file="${mauve.summary}" append="true" message="Tested JVM: ${mauve_test.parameters.required.tested.jvm}"/>
+ <echo file="${mauve.summary}" append="true" message="${line.separator}"/>
+ <echo file="${mauve.summary}" append="true" message="Report Location: ${current.results.dir}"/>
+ <echo file="${mauve.summary}" append="true" message="${line.separator}${line.separator}"/>
+ <echo file="${mauve.summary}" append="true" message="Check the summary of mauve test in the attach file."/>
+ <echo file="${mauve.summary}" append="true" message="${line.separator}"/>
+ <echo file="${mauve.summary}" append="true" message="========================================"/>
+ <echo file="${mauve.summary}" append="true" message="${line.separator}"/>
+
+ <!--Backup test result-->
+ <tstamp>
+ <format property="test.run.time" pattern="yyyyMMdd_HHmm"/>
+ </tstamp>
+ <mkdir dir="${current.results.dir}_${test.run.time}" />
+ <copy todir="${current.results.dir}_${test.run.time}" >
+ <fileset dir="${current.results.dir}"/>
+ </copy>
+
+ </target>
+
+ <target name="-compile" description="Compile the Mauve source for test">
+ <!-- Ecj is required to compile the mauve test -->
+ <property name="mauve.javac.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
+ <fail message=">>>>>>>> Error >>>>>>>>>${line.separator}${line.separator}
+ The Eclipse compiler class for ant could not be found! ${line.separator}
+ Please copy ${ext.ecj.jar.location} to ${ANT_HOME}/lib${line.separator}">
+ <condition>
+ <not>
+ <available classname="org.eclipse.jdt.core.JDTCompilerAdapter"/>
+ </not>
+ </condition>
+ </fail>
+
+ <!-- Configure the mauve test first -->
+ <fail message=">>>>>>>> Error >>>>>>>>>${line.separator}
+ Pls configure the mauve first, using './configure'. Or you can configure maunually.${line.separator}
+ Replace the make tag in ${mauve.location}/gnu/testlet/config.java.in and rename it to config.java${line.separator}
+ You can refer to the detail in ${mauve.location}/README. ${line.separator}">
+ <condition>
+ <not>
+ <available file="${mauve.location}/gnu/testlet/config.java"/>
+ </not>
+ </condition>
+ </fail>
+
+ <!-- Compile the test code within ecj, there exist compile failures -->
+ <javac compiler="${mauve.javac.compiler}"
+ srcdir="${mauve.location}"
+ sourcepath="${mauve.location}"
+ destdir="${mauve.classes.dir}"
+ nowarn="on"
+ failonerror="false">
+ <bootclasspath>
+ <fileset dir="${tested.jre}">
+ <include name="**/*.jar"/>
+ <exclude name="**/*-src.jar"/>
+ </fileset>
+ </bootclasspath>
+ </javac>
+
+ </target>
+
+ <target name="clean">
+ <delete dir="${mauve.results.dir}" quiet="true"/>
+ <delete dir="${mauve.classes.dir}" quiet="true"/>
+ </target>
+
+</project>
Propchange: harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/adaptor.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/parameters.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/parameters.xml?rev=583505&view=auto
==============================================================================
--- harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/parameters.xml (added)
+++ harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/parameters.xml Wed Oct 10 08:06:40 2007
@@ -0,0 +1,53 @@
+<?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.jre
+ description="Path to Tested Jre Directory"
+ value="${drlvm.parameters.shared.jre.dir}"/>
+
+ <tested.jvm
+ description="Path to Tested Runtime"
+ value="${drlvm.parameters.shared.jvm.location}"/>
+
+ <test.list
+ description="Testcase list that will be run by mauve test suite"
+ value="all.include.list.txt"/>
+
+ <mauve.location
+ description="Path to Mauve test classes. Assigned by user"
+ value=""/>
+ </required>
+
+ <external>
+ <ecj.jar
+ url="http://www.eclipse.org/jdt/core/patches/ecj_3.2.2.jar"
+ md5="f855d48f159618b0c945cf773a6694e1"
+ />
+ </external>
+
+ <shared/>
+
+ <cc>
+ <summary value="${mauve.summary}"/>
+ <attachs value="${current.results.dir}/index.html"/>
+ </cc>
+
+</parameters>
Propchange: harmony/enhanced/buildtest/branches/2.0/adaptors/mauve_test/parameters.xml
------------------------------------------------------------------------------
svn:eol-style = native