Author: jsong
Date: Thu Aug 5 11:50:20 2004
New Revision: 35751
Added:
incubator/beehive/trunk/controls/test/common/
incubator/beehive/trunk/controls/test/common/path.properties
incubator/beehive/trunk/controls/test/infra/
incubator/beehive/trunk/controls/test/infra/milton/
incubator/beehive/trunk/controls/test/infra/milton/milton.jar (contents,
props changed)
incubator/beehive/trunk/controls/test/infra/tch/
incubator/beehive/trunk/controls/test/infra/tch/build.xml
incubator/beehive/trunk/controls/test/infra/tch/messages/
incubator/beehive/trunk/controls/test/infra/tch/messages/end.txt
incubator/beehive/trunk/controls/test/infra/tch/messages/start.txt
incubator/beehive/trunk/controls/test/infra/tch/schema/
incubator/beehive/trunk/controls/test/infra/tch/schema/config.xsd
incubator/beehive/trunk/controls/test/infra/tch/schema/everything-suite.xsd
incubator/beehive/trunk/controls/test/infra/tch/setenv.sh
incubator/beehive/trunk/controls/test/infra/tch/tch
incubator/beehive/trunk/controls/test/infra/tch/tch-base-process-config.xml
incubator/beehive/trunk/controls/test/infra/tch/tch-dd
incubator/beehive/trunk/controls/test/infra/tch/tch-error-messages.xml
incubator/beehive/trunk/controls/test/infra/tch/tch-logger-conf.xml
incubator/beehive/trunk/controls/test/infra/tch/tch-props.xml
incubator/beehive/trunk/controls/test/infra/tch/tch-root-template.xml
incubator/beehive/trunk/controls/test/infra/tch/tch-root.xml
incubator/beehive/trunk/controls/test/infra/tch/tch-update-conf.xml
incubator/beehive/trunk/controls/test/infra/tch/tch.cmd
incubator/beehive/trunk/controls/test/infra/tch/tch.sh
incubator/beehive/trunk/controls/test/infra/tch/tchcmd.cmd
incubator/beehive/trunk/controls/test/infra/tch/tchx.jar (contents, props
changed)
Modified:
incubator/beehive/trunk/controls/test/build.xml
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/context/test.xml
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/contextevent/test.xml
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/event/test.xml
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/extension/test.xml
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/instantiate/test.xml
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/property/test.xml
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/root.xml
Log:
Add compiled artifacts of tch and milton into controls/test/infra, update
test.xml for controls tests.
Update controls/test/build.xml and switch running tests using tch.
Modified: incubator/beehive/trunk/controls/test/build.xml
==============================================================================
--- incubator/beehive/trunk/controls/test/build.xml (original)
+++ incubator/beehive/trunk/controls/test/build.xml Thu Aug 5 11:50:20 2004
@@ -4,6 +4,7 @@
<property environment="os"/>
<property file="${os.BEEHIVE_HOME}/beehive.properties"/>
+ <property file="common/path.properties"/>
<property name="dev.root" value="${os.DEV_ROOT}"/>
@@ -30,6 +31,29 @@
<os family="unix" />
</condition>
+
+ <path id="tch.run.classpath">
+ <pathelement location="${tch.jar}"/>
+ <pathelement location="${milton.jar}"/>
+ <pathelement location="${ant.jar}"/>
+ <pathelement path="${os.ANT_HOME}/lib/ant-launcher.jar"/>
+
+ <pathelement location="${junit.jar}"/>
+ <pathelement location="${tools.jar}"/>
+ <pathelement location="${velocity14.jar}"/>
+ <pathelement location="${velocitydep14.jar}"/>
+ <pathelement location="${servlet24.jar}"/>
+ <pathelement location="../build/jars/controls.jar"/>
+ <pathelement path="${build.beans}"/>
+
+ <pathelement path="${build.tests.driver}"/>
+ <pathelement location="${build.tests}" />
+
+ <pathelement location="${jakarta.jar}"/>
+ <pathelement location="${xerces.jar}"/>
+ </path>
+
+
<!-- ===================================================================
-->
<!-- Usage - print the usage -->
<!-- ====================================================================
-->
@@ -145,27 +169,37 @@
<!-- =============================================== -->
<property name="junit.src.dir" value="${basedir}/src/units"/>
- <property name="peanut.home" location="tools/peanut"/>
-
+ <taskdef name="tch"
+ classname="org.apache.beehive.test.tools.tch.TchVMTask"
+ classpathref="tch.run.classpath"/>
-
- <!-- TODO: relative pathname (should be based on ${beehive.home}, or
${tools.home, or something similar -->
- <property name="peanut.jar" location="${peanut.home}/peanut.jar"/>
-
-
- <taskdef name="peanut"
- classname="org.apache.beehive.peanut.PeanutTask"
- classpath="${peanut.jar}"/>
-
-
+ <echo message="milton.jar: ${milton.jar}"/>
<target name="run">
<property name="test-suite" value="${junit.src.dir}/root.xml"/>
- <peanut peanutHome="${peanut.home}" testfile="${test-suite}"
fork="true">
+
+
+ <tch tchHome="${tch.home}"
+ testfile="${test-suite}"
+ fork="true"
+ classpathref="tch.run.classpath"
+ failureproperty="run.failed">
+
+
+
+ <arg value="-emacs"/>
+ <property name="tch.replication.entry-point" value="ant -f
${controls.test.dir}/build.xml run"/>
+
+
+
+ </tch>
+
+
+ <!--
+ <peanut peanutHome="${peanut.home}" testfile="${test-suite}"
fork="true">
<classpath>
- <!--pathelement path="${os.ANT_CLASSPATH}"/-->
<pathelement path="${ant.jar}"/>
<pathelement path="${os.ANT_HOME}/lib/ant-launcher.jar"/>
<pathelement path="${tools.jar}"/>
@@ -182,5 +216,6 @@
</classpath>
</peanut>
+ -->
</target>
</project>
Added: incubator/beehive/trunk/controls/test/common/path.properties
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/common/path.properties Thu Aug
5 11:50:20 2004
@@ -0,0 +1,22 @@
+#need to do <property environment="os"/> before loading this property file
+
+
+#directories
+beehive.home=${os.BEEHIVE_HOME}
+controls.dir=${beehive.home}/controls
+controls.test.dir=${controls.dir}/test
+controls.test.infra.dir=${controls.test.dir}/infra
+
+external.dir=${beehive.home}/external
+
+
+#locations of built tools
+tch.home=${controls.test.infra.dir}/tch
+tch.jar=${tch.home}/tchx.jar
+
+milton.jar=${controls.test.infra.dir}/milton/milton.jar
+
+crimson.jar=${external.dir}/crimson/crimson-1.1.jar
+jakarta.jar=${external.dir}/jakarta/jakarta-regexp-1.2.jar
+jaxp.jar=${external.dir}/jaxp/jaxp.jar
+xerces.jar=${external.dir}/xerces/xerces-1.4.4.jar
Added: incubator/beehive/trunk/controls/test/infra/milton/milton.jar
==============================================================================
Binary file. No diff available.
Added: incubator/beehive/trunk/controls/test/infra/tch/build.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/build.xml Thu Aug 5
11:50:20 2004
@@ -0,0 +1,42 @@
+<project name="tch-project" default="usage">
+ <taskdef name="tch" classname="org.apache.beehive.test.tools.tch.TchVMTask"/>
+ <property name="tch.verbose" value="false"/>
+ <property name="test-suite" value="test/regression.xml"/>
+ <property file="../buildenv.properties"/>
+
+ <property name="tch.home" value="${basedir}"/>
+ <target name="usage" depends="version">
+ <loadfile property="helpfile" srcfile="help/helpfile"/>
+ <echo message="${helpfile}"/>
+ </target>
+
+ <target name="version">
+ <java classname="org.apache.beehive.test.tools.tch.core.version"/>
+ </target>
+
+ <target name="run" depends="set-java-opts">
+ <tch
+ testfile="${test-suite}"
+ tchHome="${tch.home}"
+ failOnError="true"
+ verbose="${tch.verbose}"
+ >
+ <arg value="-emacs"/>
+ </tch>
+ </target>
+
+ <target name="set-java-opts">
+ <condition property="javaopts" value="">
+ <not>
+ <isset property="javaopts"/>
+ </not>
+ </condition>
+ <condition property="tch.javaopts" value="">
+ <not>
+ <isset property="tch.javaopts"/>
+ </not>
+ </condition>
+ </target>
+
+</project>
+
Added: incubator/beehive/trunk/controls/test/infra/tch/messages/end.txt
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/messages/end.txt Thu Aug
5 11:50:20 2004
@@ -0,0 +1,21 @@
+
+
+
+
+*****************************************************************
+*****************************************************************
+** **
+** **
+** **
+** TCH TEST RUN HAS COMPLETED. **
+** **
+** (please see log files to view results in detail, **
+** e.g. tch.debug, tch.log) **
+** **
+** **
+** **
+*****************************************************************
+*****************************************************************
+
+
+
Added: incubator/beehive/trunk/controls/test/infra/tch/messages/start.txt
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/messages/start.txt Thu Aug
5 11:50:20 2004
@@ -0,0 +1,20 @@
+
+
+
+
+*****************************************************************
+*****************************************************************
+** **
+** **
+** **
+** TCH TEST RUN HAS BEGUN. **
+** **
+** INITIALIZATION AND VALIDATION COMMENCING ... **
+** **
+** **
+** **
+*****************************************************************
+*****************************************************************
+
+
+
Added: incubator/beehive/trunk/controls/test/infra/tch/schema/config.xsd
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/schema/config.xsd Thu Aug
5 11:50:20 2004
@@ -0,0 +1,336 @@
+<xs:schema elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="config-root">
+ <xs:complexType>
+ <xs:all>
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="environment-config"
+ type="environment-configType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="machine-config"
+ type="machine-configType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="process-config"
+ type="process-configType"
+ />
+ </xs:all>
+ </xs:complexType>
+ </xs:element>
+
+ <!-- FIXME: the attribute values here should be checked as existant. Easier
to do this programatically -->
+ <xs:complexType name="configured-process-typeType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="process-type"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="env"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="configuration"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="envType">
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="var"
+ type="varType"
+ />
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="environment-configType">
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ name="env"
+ type="envType"
+ />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="exec-process-configType">
+ <xs:sequence>
+ <xs:element name="cmd" type="xs:string"/>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="tch-agent-process-configType">
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="property"
+ type="propertyType"
+ />
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="port"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="bindname"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="javaopts"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="startup-timeout"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="machineType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="host"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="externalhost"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute name="ip" use="optional"/>
+ <xs:attribute
+ name="login"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="machine-configType">
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ name="machine"
+ type="machineType"
+ />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="processType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="nested-process"
+ type="nested-processType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="machine"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="requires-started"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="implicit"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="auto-start"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="sleep-seconds-after-started"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="window"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="home"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="java-home"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="configured-process-type"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="configuration"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="abstract"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="inherit"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="process-type"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="nested-processType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="process-configType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process-type"
+ type="process-typeType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="configured-process-type"
+ type="configured-process-typeType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="exec-process-config"
+ type="exec-process-configType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="listener-process-config"
+ type="tch-agent-process-configType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="tch-agent"
+ type="tch-agent-process-configType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="tch-agent-process-config"
+ type="tch-agent-process-configType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process"
+ type="processType"
+ />
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="process-typeType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="default-process-manager"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute name="process-handler" use="required"/>
+ <xs:attribute
+ name="configuration-manager"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="xml-handler"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="root-config-tagname"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="varType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="propertyType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+</xs:schema>
Added:
incubator/beehive/trunk/controls/test/infra/tch/schema/everything-suite.xsd
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/schema/everything-suite.xsd
Thu Aug 5 11:50:20 2004
@@ -0,0 +1,1870 @@
+<xs:schema elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:complexType name="configuration-dependencyType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute
+ name="file"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="jvmargType">
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="line"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="javatestType">
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="methodnames"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <xs:complexType name="roctestType">
+ <xs:attribute
+ name="scripts"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="consoleconfig"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="wrconfig"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <xs:complexType name="webServerType">
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="methodnames"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="webservers"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="webserverstoexclude"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <xs:complexType name="tchtestType">
+ <xs:attribute
+ name="propsfile"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="basefile"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="baselogname"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="ant-exec-taskType">
+ <xs:sequence>
+ <xs:any
+ maxOccurs="unbounded"
+ minOccurs="0"
+ processContents="skip"
+ />
+ </xs:sequence>
+ <xs:attribute
+ name="successMessage"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="stfType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute
+ name="file"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="processType">
+ <xs:choice>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="configuration-dependency"
+ type="configuration-dependencyType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute name="default" use="optional">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="true"/>
+ <xs:enumeration value="false"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:element name="project">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="taskdef"
+ type="taskdefType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="property"
+ type="propertyType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="1"
+ name="target"
+ type="targetType"
+ />
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="default"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="propertyType">
+ <xs:attribute name="name" use="optional"/>
+ <xs:attribute name="value" use="optional"/>
+ <xs:attribute name="file" use="optional"/>
+ <xs:attribute name="environment" use="optional"/>
+ </xs:complexType>
+ <xs:element name="property" type="propertyType"/>
+ <xs:complexType name="targetType">
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="property"
+ type="propertyType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element name="test-suite" type="test-suiteType"/>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+
+ <xs:complexType name="taskdefType">
+ <xs:choice maxOccurs="unbounded" minOccurs="0">
+ <xs:element
+ maxOccurs="1"
+ name="classpath"
+ type="classpathType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="classname"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="resource"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="classpath"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="pathelement"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="file"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <!-- Leave classpath open since it's the native ant construct -->
+ <xs:complexType name="classpathType">
+ <xs:sequence>
+ <xs:any
+ maxOccurs="unbounded"
+ minOccurs="0"
+ processContents="skip"
+ />
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- FIXME jbaker: Within a given buildfile, each "name" attribute of a
test tag must be
+ unique -->
+ <xs:complexType name="testType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-metadata"
+ type="test-metadataType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process"
+ type="processType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-parameter"
+ type="test-parameterType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="utility"
+ type="utilityType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="1">
+ <xs:element
+ maxOccurs="1"
+ name="javatest"
+ type="javatestType"
+ />
+ <xs:element
+ maxOccurs="1"
+ name="roctest"
+ type="roctestType"
+ />
+ <xs:element
+ maxOccurs="1"
+ name="junit"
+ type="javatestType"
+ />
+ <xs:element name="wstest" type="webServerType"/>
+ <xs:element name="tch-diff-test" type="tchtestType"/>
+ <xs:element name="test-vehicle" type="test-vehicleType"/>
+ <xs:element name="http-url-connection" type="http-url-connectionType"/>
+ <xs:element name="servlettask" type="servlettaskType"/>
+ <xs:element name="servletwritabletask" type="servletwritabletaskType"/>
+ <xs:element name="webappstandardtask" type="webappstandardtaskType"/>
+ <xs:element name="cmdline" type="cmdlineType"/>
+ <xs:element name="stf" type="stfType"/>
+ <xs:element name="ant-task" type="ant-exec-taskType"/>
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="utility"
+ type="utilityType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="requiresRun"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="requiresSuccess"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="testunit"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="timeoutSeconds"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <!-- FIXME: it is not possible to require a choice of attributes, so value
+ and valueProp are made optional.
+ In order to fix this, the data model would have to be changed -->
+
+ <!-- FIXME: For test-parameter tag, make sure that the value/valueProp
+ attributes, if set, do not start with "$" -->
+ <xs:complexType name="test-parameterType">
+ <xs:choice maxOccurs="unbounded" minOccurs="0">
+ <xs:element name="element" type="elementType"/>
+ <xs:element name="value" type="xs:string"/>
+ </xs:choice>
+ <xs:attribute name="name" use="required"/>
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="valueProp"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="valueprop"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="elementType">
+ <xs:attribute
+ name="valueprop"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="test-unit-modifierType">
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ </xs:sequence>
+ <xs:attribute name="value" use="required"/>
+ </xs:complexType>
+ <xs:complexType name="testUnitChangeType">
+ <xs:attribute name="value" use="required"/>
+ </xs:complexType>
+ <xs:complexType name="test-sequentialType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element name="test-unit-modifier" type="test-unit-modifierType"/>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element name="test-parallel" type="test-parallelType"/>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="test-parallelType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element name="test-unit-modifier" type="test-unit-modifierType"/>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element name="test-sequential" type="test-sequentialType"/>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="test-suite-callType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="property"
+ type="propertyType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="test-unit-override"
+ type="testUnitChangeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="testUnitChangeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="test-name-modifier"
+ type="testUnitChangeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="append-to-test-unit"
+ type="testUnitChangeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="append-to-test-name"
+ type="testUnitChangeType"
+ />
+ </xs:choice>
+ <xs:attribute name="antfile" use="optional"/>
+ <xs:attribute name="testfile" use="optional"/>
+ <xs:attribute name="target" use="optional"/>
+ </xs:complexType>
+ <xs:complexType name="test-metadataType">
+ <xs:all>
+ <xs:element
+ minOccurs="0"
+ name="usage"
+ type="xs:string"
+ />
+ <xs:element
+ minOccurs="0"
+ name="description"
+ type="xs:string"
+ />
+ <xs:element
+ minOccurs="0"
+ name="testLevel"
+ type="testLevelType"
+ />
+ <!--
+ REMOVED
+ <xs:element
+ minOccurs="0"
+ name="owner"
+ type="ownerType"
+ />
+ -->
+ <xs:element
+ minOccurs="0"
+ name="freq"
+ type="frequencyType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="misc"
+ type="miscType"
+ />
+ <!--
+ REMOVED
+ <xs:element
+ minOccurs="0"
+ name="serverMode"
+ type="serverModeType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="db"
+ type="dbType"
+ />
+ -->
+ <xs:element
+ minOccurs="0"
+ name="status"
+ type="statusType"
+ />
+ <!--
+ REMOVED
+ <xs:element
+ minOccurs="0"
+ name="conversation"
+ type="conversationType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="domain"
+ type="domainType"
+ />
+
+ <xs:element
+ minOccurs="0"
+ name="scenario"
+ type="scenarioType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="knownFailure"
+ type="knownFailureType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="CRList"
+ type="CRListType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="SSLRestriction"
+ type="SSLRestrictionType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="condition"
+ type="conditionalType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="OSRestriction"
+ type="OSRestrictionType"
+ />
+
+ <xs:element
+ minOccurs="0"
+ name="os"
+ type="osType"
+ />
+
+ <xs:element
+ minOccurs="0"
+ name="JavaRestriction"
+ type="JavaRestrictionType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="clientTypes"
+ type="clientTypesType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="securityType"
+ type="securityTypeType"
+ />
+ -->
+ </xs:all>
+ </xs:complexType>
+ <xs:complexType name="testLevelType">
+ <xs:attribute name="level" use="optional">
+ <xs:simpleType>
+ <xs:restriction base="xs:integer">
+ <xs:minInclusive value="1"/>
+ <xs:maxInclusive value="4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="levels" use="optional"/>
+ </xs:complexType>
+ <xs:complexType name="knownFailureType">
+ <xs:attribute name="value" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:complexType name="scenarioType">
+ <xs:attribute
+ name="ssl"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="thinclient"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="thinclientStrict"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="jdkClient"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <!-- FIXME: not doing full validation on the contents of the "ids" tag
+ this would only be possble if we followed the convention for list
type, which
+ is whitespace, not comma, separated items -->
+ <xs:complexType name="CRListType">
+ <xs:attribute
+ name="ids"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+
+ <xs:simpleType name="ownerType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+
+ <xs:simpleType name="miscType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+
+ <!-- all this just to create a list type?-->
+ <!-- how can i make sure there are no duplicates in the enum? -->
+ <xs:simpleType name="frequencyOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="drt"/>
+ <xs:enumeration value="bvt"/>
+ <xs:enumeration value="daily"/>
+ <xs:enumeration value="weekly"/>
+ <!-- the following values are used for xbean tests -->
+ <xs:enumeration value="checkin"/>
+ <xs:enumeration value="detailed"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="frequencyList">
+ <xs:list itemType="frequencyOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="frequencyType">
+ <xs:restriction base="frequencyList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- end frequency definition -->
+
+ <xs:simpleType name="serverModeOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="prod"/>
+ <xs:enumeration value="dev"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="serverModeList">
+ <xs:list itemType="serverModeOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="serverModeType">
+ <xs:restriction base="serverModeList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="2"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="dbOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="all"/>
+ <xs:enumeration value="none"/>
+ <xs:enumeration value="oracle8"/>
+ <xs:enumeration value="oracle9"/>
+ <xs:enumeration value="db2"/>
+ <xs:enumeration value="mssql"/>
+ <xs:enumeration value="pointbase"/>
+ <xs:enumeration value="sybase"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="dbList">
+ <xs:list itemType="dbOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="dbType">
+ <xs:restriction base="dbList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="7"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="statusOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="active"/>
+ <xs:enumeration value="inactive"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="statusList">
+ <xs:list itemType="statusOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="statusType">
+ <xs:restriction base="statusList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="2"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="conversationOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="db"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="conversationList">
+ <xs:list itemType="conversationOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="conversationType">
+ <xs:restriction base="conversationList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!--
+ REMOVED
+ <xs:simpleType name="domainOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="knexbvt"/>
+ <xs:enumeration value="securitybvt"/>
+ <xs:enumeration value="transecuritybvt"/>
+ <xs:enumeration value="runtime9QADomain"/>
+ <xs:enumeration value="samplesDomain"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="domainList">
+ <xs:list itemType="domainOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="domainType">
+ <xs:restriction base="domainList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ -->
+
+ <xs:simpleType name="osOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="win"/>
+ <xs:enumeration value="sol"/>
+ <xs:enumeration value="lin"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="osList">
+ <xs:list itemType="osOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="osType">
+ <xs:restriction base="osList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="3"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="clientTypesType">
+ <xs:attribute
+ name="jdkclient"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="thinclient"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="thinclientstrict"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="securityTypeType">
+ <xs:attribute
+ name="security61"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="security70"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="SSLRestrictionType">
+ <xs:attribute
+ name="value"
+ type="xs:boolean"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="OSRestrictionType">
+ <xs:attribute
+ name="names"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="excluded"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="JavaRestrictionType">
+ <xs:attribute
+ name="versions"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="excluded"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="test-vehicleType">
+ <xs:sequence>
+ <xs:element name="javatest" type="javatestType"/>
+ </xs:sequence>
+ <xs:attribute
+ name="type"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="process"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="test-blockType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process"
+ type="processType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-parameter"
+ type="test-parameterType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-metadata"
+ type="test-metadataType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="test-parallel"
+ type="test-parallelType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-sequential"
+ type="test-sequentialType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="test-unit-modifierType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="count"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="requiresRun"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="requiresSuccess"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="independent-test-groupType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process"
+ type="processType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-parameter"
+ type="test-parameterType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-metadata"
+ type="test-metadataType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="test-parallel"
+ type="test-parallelType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-sequential"
+ type="test-sequentialType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="test-unit-modifierType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="independent-test-group"
+ type="independent-test-groupType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="rerunFailedTestOnly"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="utilityType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="arg"
+ type="argType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="classname"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="methodname"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="argType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="http-url-connectionType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestheader"
+ type="requestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="miscrequestheader"
+ type="miscrequestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestparam"
+ type="requestparamType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedstring"
+ type="expectedstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedresponsecode"
+ type="expectedresponsecodeType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="expectedheader"
+ type="expectedheaderType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="authenticate"
+ type="authenticateType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="target"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="checkmode"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute name="connectionmode" type="xs:string"/>
+ <xs:attribute name="followredirect" type="xs:string"/>
+ <xs:attribute name="sendcookie" type="xs:string"/>
+ <xs:attribute name="secure" type="xs:string"/>
+ <xs:attribute name="sendSSLCookie" type="xs:string"/>
+ <xs:attribute name="protocol" type="xs:string"/>
+ <xs:attribute name="clearcookies" type="xs:string"/>
+ </xs:complexType>
+ <xs:complexType name="servlettaskType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestheader"
+ type="requestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestparam"
+ type="requestparamType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="authenticate"
+ type="authenticateType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="target"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="testmethod"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute name="connectionmode" type="xs:string"/>
+ <xs:attribute name="followredirect" type="xs:string"/>
+ <xs:attribute name="sendcookie">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="secure">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="sendSSLCookie">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="protocol" type="xs:string"/>
+ <xs:attribute name="clearcookies">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:complexType name="servletwritabletaskType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestheader"
+ type="requestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="miscrequestheader"
+ type="miscrequestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestparam"
+ type="requestparamType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedstring"
+ type="expectedstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedresponsecode"
+ type="xs:integer"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="expectedheader"
+ type="expectedheaderType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="authenticate"
+ type="authenticateType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="target"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="testmethod"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="checkmode"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute name="connectionmode" type="xs:string"/>
+ <xs:attribute name="followredirect" type="xs:string"/>
+ <xs:attribute name="sendcookie">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="secure">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="sendSSLCookie">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="protocol" type="xs:double"/>
+ <xs:attribute name="clearcookies">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:complexType name="webappstandardtaskType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="1"
+ name="testmethod"
+ type="testmethodType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="cmdlineType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="1"
+ minOccurs="1"
+ name="cmd"
+ type="cmdType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="cmdtoken"
+ type="cmdtokenType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="enventry"
+ type="enventryType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedexitcode"
+ type="expectedexitcodeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedoutputstring"
+ type="expectedoutputstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectederrorstring"
+ type="expectederrorstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedoutputerrorstring"
+ type="expectedoutputerrorstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="timeout"
+ type="xs:integer"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="workingdir"
+ type="workingdirType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="checkmode"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="echo"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="cmdType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="cmdtokenType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="enventryType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="expectedexitcodeType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="expectedoutputstringType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute
+ name="regexp"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="expectederrorstringType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute
+ name="regexp"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="expectedoutputerrorstringType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute
+ name="regexp"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="timeoutType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="workingdirType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="expectedstringType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute
+ name="regexp"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="requestheaderType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="miscrequestheaderType">
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="requestparamType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="expectedresponsecodeType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="expectedheaderType">
+ <xs:attribute
+ name="regexp"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="authenticateType">
+ <xs:attribute
+ name="user"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="password"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="testmethodType">
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="test-suiteType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process"
+ type="processType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-parameter"
+ type="test-parameterType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-metadata"
+ type="test-metadataType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="test-parallel"
+ type="test-parallelType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="test-unit-modifierType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="independent-test-group"
+ type="independent-test-groupType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="init-hook"
+ type="anythingType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="cleanup-hook"
+ type="anythingType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="testunit"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="timeoutSeconds"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType mixed="true" name="anythingType">
+ <xs:sequence>
+ <xs:any
+ maxOccurs="unbounded"
+ minOccurs="0"
+ processContents="skip"
+ />
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="group"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="requiredForTest"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="ifType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="1"
+ name="conditional"
+ type="conditionalType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="test-parallel"
+ type="test-parallelType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="independent-test-group"
+ type="independent-test-groupType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="test-unit-modifierType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="conditionalType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="requiresType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="test-parallel"
+ type="test-parallelType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="test-unit-modifierType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="requiresDependentType">
+ <xs:sequence>
+ <xs:choice maxOccurs="1" minOccurs="1">
+ <xs:element
+ maxOccurs="1"
+ minOccurs="1"
+ name="requires"
+ type="requiresType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="1" minOccurs="1">
+ <xs:element
+ maxOccurs="1"
+ minOccurs="1"
+ name="dependent"
+ type="requiresType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>
Added: incubator/beehive/trunk/controls/test/infra/tch/setenv.sh
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/setenv.sh Thu Aug 5
11:50:20 2004
@@ -0,0 +1,51 @@
+#!/bin/sh
+
+PATHSEP=":"
+myos=`uname`
+case "$myos" in
+ Window*)
+ PATHSEP=";"
+ ;;
+esac
+
+echo ""
+
+TCH_HOME=`pwd`
+cd ${TCH_HOME}/..
+TCH_LIB=`pwd`
+cd ${TCH_HOME}
+ANT_HOME=${ANT_HOME:-${BEEHIVE_HOME}/installed/apache-ant-1.6.1}
+EXTERNAL_DIR=${BEEHIVE_HOME}/external
+
+echo Adding $TCH_HOME to PATH
+PATH="${TCH_HOME}${PATHSEP}$PATH"
+export PATH
+
+echo Adding $TCH_LIB to PATH
+PATH="${TCH_LIB}${PATHSEP}$PATH"
+export PATH
+
+TCH_JAR=${TCH_HOME}/tchx.jar
+echo Adding $TCH_JAR to CLASSPATH
+CLASSPATH="${TCH_JAR}${PATHSEP}$CLASSPATH"
+
+ANT_JAR=${ANT_JAR:-$ANT_HOME/lib/ant.jar}
+echo Adding ${ANT_JAR} to CLASSPATH
+CLASSPATH="${ANT_JAR}${PATHSEP}${CLASSPATH}"
+
+XERCES_JAR=${EXTERNAL_DIR}/xerces/xerces-1.4.4.jar
+echo Adding ${XERCES_JAR} to CLASSPATH
+CLASSPATH="${XERCES_JAR}${PATHSEP}${CLASSPATH}"
+
+
+export CLASSPATH
+export TCH_HOME
+export BUILDDIR
+
+unset TCH_JAR
+unset XERCES_JAR
+unset ANT_JAR
+unset TCH_LIB
+
+echo ""
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch Thu Aug 5 11:50:20 2004
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+java org.apache.tools.ant.Main -emacs -verbose -f ${TCH_HOME}/build.xml
-Dtch.home=${TCH_HOME} "$@"
Added:
incubator/beehive/trunk/controls/test/infra/tch/tch-base-process-config.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch-base-process-config.xml
Thu Aug 5 11:50:20 2004
@@ -0,0 +1,44 @@
+<config-root>
+ <machine-config>
+ <machine host="localhost" name="localhost"/>
+ </machine-config>
+
+ <process-config>
+
+ <!-- Core Process Types -->
+
+ <!-- Deprecated, see tch-agent-process-type below -->
+ <process-type
+ name="listener-process-type"
+
process-handler="org.apache.beehive.test.tools.tch.extension.process.listener.RemoteListenerProcessHandler"
+
default-process-manager="org.apache.beehive.test.tools.tch.extension.process.listener.RemoteListenerProcessManager"
+ root-config-tagname="listener-process-config"
+
xml-handler="org.apache.beehive.test.tools.tch.extension.process.listener.RemoteListenerXMLHandler"
+
configuration-manager="org.apache.beehive.test.tools.tch.extension.process.listener.RemoteListenerConfigurationManager"
+ />
+ <!-- Same as above, different logical name and configuration-tag name -->
+ <process-type
+ name="tch-agent"
+
process-handler="org.apache.beehive.test.tools.tch.extension.process.listener.RemoteListenerProcessHandler"
+
default-process-manager="org.apache.beehive.test.tools.tch.extension.process.listener.RemoteListenerProcessManager"
+ root-config-tagname="tch-agent-process-config"
+
xml-handler="org.apache.beehive.test.tools.tch.extension.process.listener.RemoteListenerXMLHandler"
+
configuration-manager="org.apache.beehive.test.tools.tch.extension.process.listener.RemoteListenerConfigurationManager"
+ />
+ <process-type
+ name="exec-process-type"
+
process-handler="org.apache.beehive.test.tools.tch.extension.process.exec.ExecProcessHandler"
+
default-process-manager="org.apache.beehive.test.tools.tch.extension.process.exec.ExecProcessManager"
+ root-config-tagname="exec-process-config"
+
xml-handler="org.apache.beehive.test.tools.tch.extension.process.exec.ExecProcessXMLHandler"
+
configuration-manager="org.apache.beehive.test.tools.tch.extension.process.exec.ExecProcessConfigurationManager"
+ />
+
+ </process-config>
+</config-root>
+
+
+
+
+
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch-dd
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch-dd Thu Aug 5
11:50:20 2004
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+java org.apache.beehive.test.tools.tch.util.CmdDashDEmulator -f
${TCH_HOME}/build.xml -Dtch.home=${TCH_HOME} -mainclass
org.apache.tools.ant.Main "$@"
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch-error-messages.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch-error-messages.xml
Thu Aug 5 11:50:20 2004
@@ -0,0 +1,205 @@
+<!-- About local, fatal and global error messages:
+ By default, the error messages are "local". This means they only prevent
+ the entity (test) that is associated with them (that caused them) from
+ running (if failfast-validation disabled).
+
+ If designated as "fatal", these errors will prevent the entire run from
+ starting, even with failfast-validation disabled.
+
+ If a message is "global", all errors with the same id will be aggregated.
+ For many errors, it is enough to print the error message only once, and
+ then list all locations/calling chains. This is what will happen
+ when setting global to "true". Note that the global switch only affects
+ formatting behavior, not behavior.
+-->
+<error-messages>
+
+ <error id="100">
+ <short-message>Could not resolve property:
"%{propname}"</short-message>
+ </error>
+ <error id="110" fatal="true">
+ <short-message>"%{propname}" is not a valid Tch system property
(tch.*). See %{propfilename}.</short-message>
+ </error>
+ <error id="150" fatal="true">
+ <short-message>"%{propname}" is no longer a valid Tch system
property. %{alternative}.</short-message>
+ </error>
+ <error id="120" fatal="true">
+ <short-message>The values for the "%{propname}" property must be
either "on" or "off".</short-message>
+ </error>
+ <error id="130">
+ <short-message>Expecting an integer, but got
"%{broken-int-val}"</short-message>
+ </error>
+ <error id="140" fatal="true">
+ <short-message>Found no tests to run.</short-message>
+ </error>
+
+ <error id="200">
+ <short-message>Name: "%{name}" contains the following illegal
characters: %{illegalchars}</short-message>
+ </error>
+ <error id="201">
+ <short-message>Testunit: "%{testunit}" is not allowed to exceed
%{maxchars} characters. It is %{numchars} chars long.</short-message>
+ </error>
+ <error id="202">
+ <short-message>No Testunit Defined: This testfile does not have a testunit
defined (meaning it cannot be run by itself) and does have a testunit set by a
calling testfile. </short-message>
+ </error>
+ <error id="210">
+ <short-message>A test named "%{testname}" is already
registered.%{sep}These are the respective calling paths:%{sep}Already
registered: %{otherchain}%{sep}and%{sep}Trying to register:
%{chain}</short-message>
+ </error>
+ <error id="212">
+ <short-message>The test-name "%{testname}" is not unique.
Possible resolutions: %{resolutions}</short-message>
+ </error>
+ <error id="213">
+ <short-message>Could not resolve this test name:
"%{testname}"</short-message>
+ </error>
+ <error id="214">
+ <short-message>Could not find test with name: "%{test}". Make
sure you have specified the fully qualified test name
(testunit.testname.[subtestname]) and also make sure the test class
exists.</short-message>
+ </error>
+ <error id="215">
+ <short-message>Test name: "%{test}" is not allowed to exceed
%{maxchars} characters. It is %{numchars} chars long.</short-message>
+ </error>
+ <error id="220">
+ <short-message>A testunit may only be set in a test or test-block directly
within a test-suite.</short-message>
+ </error>
+
+ <error id="230" fatal="false">
+ <short-message>The test specified in the requires clause does not exist:
%{reference}</short-message>
+ </error>
+ <error id="231" fatal="false">
+ <short-message>The test specified in the requires clause does not refer to
a test in the same test-suite: %{reference}</short-message>
+ </error>
+ <error id="232" fatal="false">
+ <short-message>The requires clause is part of a cyclical reference:
%{reference}</short-message>
+ </error>
+
+ <error id="300" global="true">
+ <short-message>No implicit process registered for this run. Have you
forgotten to set your tch.wls.* properties, or to supply your process-config
file, using -Dconfig-file ?</short-message>
+ </error>
+ <error id="310">
+ <short-message>More than one ProcessTask (at least "%{process}"
and "%{process2}") is set as default.</short-message>
+ </error>
+ <error id="311">
+ <short-message>No default process defined for test vehicle</short-message>
+ </error>
+ <error id="320" global="false">
+ <short-message>No process registered with name
"%{process}".%{sep}If name is "null", make sure you have set the
implicit process (in your process-config file), or use the anonymous
process.</short-message>
+ </error>
+ <error id="321">
+ <short-message>No process "%{process}" declared for test
"%{test}", ambiguous as to which process to associate with Test
Vehicle.</short-message>
+ </error>
+
+ <error id="330" fatal="true">
+ <short-message>Already a process registered with name
"%{process}".</short-message>
+ </error>
+
+ <error id="340" fatal="true">
+ <short-message>
+ Cannot find %{reftype} element with name "%{refname}"
referenced by %{type} element with name "%{name}". XML dump of the
referencing tag: %{sep} %{dump}
+ </short-message>
+ </error>
+
+ <error id="341" fatal="true">
+ <short-message>
+ Detected circular inheritance path for element type "%{type}".
%{sep}Inheritance path is: %{inheritance-path}
+ </short-message>
+ </error>
+
+ <error id="342" fatal="true">
+ <short-message>
+ This <process> element must reference a configured-process-type,
or point to a configuration:%{sep} %{dump}
+ </short-message>
+ </error>
+
+ <error id="343" fatal="true">
+ <short-message>
+ Could not resolve property: "%{propname}", in process-config
at %{process-config-file}.%{sep}Global dynamic process-config props need to be
prefixed with %{prefix}.%{sep}If you want to reference an environment variable
directly, prefix the property name with "env.".
+ </short-message>
+ </error>
+
+ <error id="344" fatal="true">
+ <short-message>
+ Could not construct a process management class, check your classpath.
+ </short-message>
+ </error>
+
+ <error id="345" fatal="true">
+ <short-message>
+ Only one process can be configured as "implicit". Check
your process-config file and make sure you only have one <process> tag
that has "implicit" set to "true".
+ </short-message>
+ </error>
+
+ <error id="346" fatal="true">
+ <short-message>
+ Cannot find nested process "%{nested-process-name}" for
process "%{process-name}".
+ </short-message>
+ </error>
+
+ <error id="347" fatal="true">
+ <short-message>
+ Duplicate element in process-config file
%{file}.%{sep}%{dup-element-name}.
+ </short-message>
+ </error>
+
+ <error id="350" fatal="true">
+ <short-message>
+ Error validating process-config %{file}.%{sep}Error is:%{sep}
%{error-message}
+ </short-message>
+ </error>
+
+ <error id="360" fatal="true">
+ <short-message>
+ Could not resolve this processinfo property: %{propname}
+ </short-message>
+ </error>
+
+ <error id="400">
+ <short-message>Invalid testfile "%{file}":
%{message}</short-message>
+ </error>
+
+ <error id="401">
+ <short-message>Invalid test-suite-call "%{file}"</short-message>
+ </error>
+
+ <error id="500">
+ <short-message>Unknown test-vehicle: %{test-vehicle}</short-message>
+ </error>
+
+ <error id="501" fatal="true">
+ <short-message>The property "tch.global-test-vehicle-process"
can only be used in conjunction with the property
"tch.global-test-vehicle".</short-message>
+ </error>
+
+ <error id="502" fatal="true">
+ <short-message>The property "tch.global-test-vehicle" can only
be used in conjunction with the property
"tch.global-test-vehicle-process".</short-message>
+ </error>
+
+ <error id="503" fatal="true">
+ <short-message>The global-test-vehicle-process "%{process}" has
not been registered.</short-message>
+ </error>
+
+ <error id="600">
+ <short-message>File attribute not set, and no embedded CDATA for this
task; one of the two is required.</short-message>
+ </error>
+ <error id="601">
+ <short-message>Could not find configuration dependency file:
%{file}</short-message>
+ </error>
+
+ <error id="700">
+ <short-message>Invalid execution task: %{message}</short-message>
+ </error>
+ <error id="701">
+ <short-message>Validation failed for this execution task:</short-message>
+ </error>
+
+ <error id="751">
+ <short-message>Validation failed for this custom task:
%{message}</short-message>
+ </error>
+
+ <error id="800">
+ <short-message>Validation failed for ProcessManagement extension:
%{message}</short-message>
+ </error>
+
+ <error id="801" fatal="true">
+ <short-message>Fatal error for ProcessManagement extension:
%{message}</short-message>
+ </error>
+
+</error-messages>
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch-logger-conf.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch-logger-conf.xml Thu Aug
5 11:50:20 2004
@@ -0,0 +1,67 @@
+<loggers>
+ <!-- some standard properties for file loggers -->
+ <!-- tch.file-name: the full log filename -->
+ <!-- tch.file-prefix: controls the filename excluding the extension -->
+ <!-- tch.file-postfix: controls the filename extension -->
+
+ <!-- logging to stdout -->
+ <logger classname="org.apache.beehive.test.tools.tch.logger.StandardLogger"
dest="console"/>
+
+ <!-- file loggers -->
+
+ <!-- standard .log (same as stdout) -->
+ <logger classname="org.apache.beehive.test.tools.tch.logger.StandardLogger"
dest="file">
+ <property name="tch.file-postfix" value="log"/>
+ </logger>
+
+ <!-- .debug -->
+ <logger classname="org.apache.beehive.test.tools.tch.logger.DebugLogger"
dest="file">
+ <property name="tch.file-postfix" value="debug"/>
+ </logger>
+
+ <!-- verbose .debug -->
+ <logger
+ classname="org.apache.beehive.test.tools.tch.logger.VerboseDebugLogger"
+ type="verbose-debug"
+ dest="file"
+ >
+ <property name="tch.file-postfix" value="debug-all"/>
+ </logger>
+
+ <!-- GTLF logger -->
+ <logger
+ classname="org.apache.beehive.test.tools.tch.logger.GTLFLogger"
type="gtlf" dest="file"
+ >
+ <property name="tch.file-postfix" value="xml"/>
+ </logger>
+
+ <!-- Composite Execution Output (linked to from Sapphire) -->
+ <logger
+ classname="org.apache.beehive.test.tools.tch.logger.ExecutionOutputLogger"
+ type="composite-output"
+ dest="file"
+ >
+ <property name="tch.file-postfix" value="cout"/>
+
+ <!-- Controls what kind of results will be logged into the composite log
-->
+ <!-- If true, only log FAILURE|SCRATCH|ABORT -->
+ <!-- (where result.isProblem() == true) -->
+ <!-- If false, log all outcome results -->
+ <property name="log-only-problems" value="true"/>
+
+ </logger>
+
+
+ <!-- internal Tch self-testing logger -->
+ <logger
+ classname="org.apache.beehive.test.tools.tch.logger.ComparisonLogger"
+ type="clf"
+ dest="file"
+ >
+ <property name="tch.file-postfix" value="clf"/>
+ </logger>
+
+</loggers>
+
+
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch-props.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch-props.xml Thu Aug
5 11:50:20 2004
@@ -0,0 +1,189 @@
+<root>
+
+ <!-- Use %{env.[name]} syntax to access environment variables -->
+
+ <!-- Other special properties that can be referenced: -->
+ <!-- %{tch.home} -->
+
+ <property name="ant-file-gen" default="false" excluded="true"/>
+ <property name="baseDir" excluded="true"/>
+ <property name="base-logfile-name" default="tch" excluded="true"/>
+ <property name="branch" excluded="true"/> <!-- GTLF logging -->
+ <property name="changenumber" excluded="true"/> <!-- GTLF logging -->
+ <property name="code-coverage.enabled" excluded="true" default="0"/>
+ <property name="config-dependency" default="false"/>
+ <property name="debug" default="false"/>
+
+ <property name="env.beanjndiname" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Browser" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.chip-architecture" excluded="true"/> <!-- GTLF logging
-->
+ <property name="env.client" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Client_JVM_Mode" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Client_JVM_Name" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Client_JVM_Version" excluded="true"/> <!-- GTLF logging
-->
+ <property name="env.Database" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.domain_type" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Driver_Type" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Driver_Version" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.GC-mode" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.JVM_Mode" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.JVM_Name" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.JVM_Version" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.NativeIO" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.OS" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.plugin" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.ProdMode" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Protocol" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.rarjndiname" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Remote_VM" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.sharedbeanjndiname" excluded="true"/> <!-- GTLF logging
-->
+ <property name="env.Thread-mode" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.Tier" excluded="true"/> <!-- GTLF logging -->
+ <property name="env.XA" excluded="true"/> <!-- GTLF logging -->
+
+ <property name="execaccount" excluded="true"/> <!-- GTLF logging -->
+ <property name="execdate" excluded="true"/> <!-- GTLF logging -->
+ <property name="fail-build" default="true" excluded="true"/>
+ <property name="failfast-validation" default="true" forceval="false"/>
+
+ <!-- filter props -->
+ <property name="filter.adopt-test-names" default="false" excluded="true"/>
+ <property name="filter.dbs" excluded="true"/>
+ <property name="filter.client-type" excluded="true"/>
+ <property name="filter.conversations" excluded="true"/>
+ <property name="filter.crs" excluded="true"/>
+ <property name="filter.crs-match-all" excluded="true" default="false"/>
+ <property name="filter.domains" excluded="true"/>
+ <property name="filter.knownFailures" excluded="true"/>
+ <property name="filter.frequencies" excluded="true"/>
+ <property name="filter.owners" excluded="true"/>
+ <property name="filter.misc" excluded="true"/>
+ <property name="filter.security-type" excluded="true" default="security70"/>
+ <property name="filter.server-modes" excluded="true"/>
+ <property name="filter.silently-ignore" excluded="true" default="true"/>
+ <property name="filter.ssl" excluded="true"/>
+ <property name="filter.status" excluded="true"/>
+ <property name="filter.test-level" excluded="true"/>
+
+ <property name="fork"/>
+ <property name="global-test-vehicle" default="local"/>
+ <property name="global-test-vehicle-process" excluded="false"/>
+ <property name="home" excluded="true"/>
+ <property name="hostname" excluded="true"/> <!-- GTLF logging -->
+ <property name="importinfo" excluded="true"/> <!-- GTLF logging -->
+ <property name="init-mode-only" default="false"/>
+
+ <!-- Do not set this on the generated java command line so that
+ its length can be kept to a minimum.
+ This means that any subsequent command lines generated from running
+ the generated java command line will not be correct. -->
+ <property name="javaopts" javaExcluded="true"/>
+
+ <!-- deprecated, replaced by process.keep-alive -->
+ <property name="keep-alive" default="true" excluded="true"/>
+
+ <!-- deprecated, append subtest name to test name, set using
+ tch.test-names -->
+ <property name="javatest.method-names" excluded="true"/>
+
+ <property name="junit.force-failure" default="false" excluded="false"/>
+ <property name="junit.validate-class" default="true" excluded="false"/>
+ <property name="junit.validate-method-names" default="true"
excluded="false"/>
+
+ <property name="load" excluded="true"/> <!-- GTLF logging -->
+
+ <property name="log.basedir" excluded="true" default="."/>
+ <property name="log-banners" default="true" excluded="true"/>
+ <property name="log-comparison" default="false" excluded="true"/>
+ <property name="log.composite.enabled" default="true" excluded="true"/>
+ <property name="log.config" default="%{tch.home}/tch-logger-conf.xml"/>
+ <property name="log-custom" excluded="true"/>
+ <property name="log-custom-suffix" excluded="true"/>
+ <property name="log.date-format" default="MMM d, yyyy h:mm:ss aa zzz"
excluded="true"/>
+ <property name="log.debug-level" default="3" excluded="true"/>
+ <property name="log-gtlf" default="true" forceval="false"/>
+ <property name="log.gtlf.file-extension" default="xml" excluded="true"/>
+ <property name="log.stdout-as-inform" default="false" excluded="true"/>
+ <property name="log.inform-as-details" default="true" excluded="true"/>
+
+ <!-- Prefered way to pass envs to the GTLF logger -->
+ <property name="log.gtlf.env.*" excluded="true"/>
+
+ <property name="log-to-stdout" default="true" excluded="true"/>
+ <property name="log.progress-info" default="false" excluded="false"/>
+ <property name="log-verbose-debug" default="true" excluded="true"/>
+ <property name="log.test-names" default="false" excluded="true"/>
+
+ <property name="management-admin-port" default="9425" excluded="true"/>
+
+ <!-- Deprecated, internal, not documented -->
+ <property name="modified-classpath" default="false" excluded="true"/>
+
+ <property name="start-processes-only" default="false"/>
+ <property name="test-info"/>
+ <property name="test-info-also-run" default="false"/>
+ <property name="test-names" excluded="true"/>
+ <property name="test-vehicle.vm.shutdown-after-test" excluded="false"
default="false"/>
+ <property name="test-vehicle.vm.shutdown-if-problem" excluded="false"
default="false"/>
+ <property name="run-timeout" default="false"/>
+ <property name="run-timeout-seconds" default="1800"/>
+ <property name="runmodifier" default="" excluded="true"/> <!-- GTLF logging
-->
+ <property name="test-timeout" default="false"/>
+ <property name="test-timeout-seconds" default="300"/>
+ <property name="process.auto-start" default="false" excluded="false"/>
+ <property name="process.base-home" excluded="false"/>
+ <property name="process.ctrlc-cleanup" default="false" excluded="true"/>
+ <property name="process.configure-all" default="false"/>
+ <property name="process.dynamic.*" excluded="false"/>
+ <property name="process.local-listener-port" default="4242" excluded="true"/>
+ <property name="process.keep-alive" default="true" excluded="true"/>
+ <property name="process.log.basedir" excluded="true"/>
+ <property name="process.merge-output-streams" default="true"
excluded="true"/>
+ <property name="process.window" default="false"/>
+ <property name="process.write-cmd-files" default="true" excluded="true"/>
+ <property name="process.write-process-data-props-file" default="false"
excluded="true"/>
+ <property name="prop-val-substitution" default="false" excluded="true"/>
+ <property name="replication.entry-point" default="tch.sh run"
excluded="true"/>
+ <property name="replication.info" default="" excluded="true"/>
+ <property name="replication.print-win-cmdline" default="false"
excluded="true"/>
+ <property name="replication.set-javaopts" default="true" excluded="true"/>
+ <property name="release" excluded="true"/> <!-- GTLF logging -->
+ <property name="runid" excluded="true"/> <!-- GTLF logging -->
+ <property name="stagger-result-time" default="true" excluded="true"/>
+ <property name="stf.component-files" excluded="true"/>
+ <property name="stf.operation-files" excluded="true"/>
+
+ <!-- not excluded because some tests use it in conditionals -->
+ <property name="string" excluded="false"/> <!-- GTLF logging -->
+
+ <property name="testruntype" excluded="true"/> <!-- GTLF logging -->
+ <property name="threaddump" default="false" excluded="true"/>
+ <property name="toptestfile" excluded="true"/> <!-- GTLF logging -->
+ <property name="update.*" excluded="true"/>
+ <property
+ name="junit.update.src"
+ excluded="true"
+ default="%{tch.home}/../core/java"
+ />
+ <property name="validate" default="true"/>
+ <property name="validate-test-name-length" default="true" excluded="true"/>
+ <property name="validation-error-metafile" default="tch-error-messages.xml"/>
+ <property name="verbose" default="false" excluded="true"/>
+ <property name="verbose-validation" default="true"/>
+
+
+ <property name="wstest.verbose" default="false"/>
+ <property name="wstest.config-file"/>
+ <property name="wstest.host" default="localhost"/>
+ <property name="wstest.builddir" default="."/>
+ <property name="wstest.installdir" default="."/>
+
+ <!-- These are for internal Tch use only, cannot ever be set by user.-->
+ <property name="internal.log-banners-prop-name"/>
+ <property name="internal.srcdir"/>
+ <property name="internal.start-processes-only-prop-name"/>
+ <property name="internal.validation-failed" default="false"/>
+
+</root>
+
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch-root-template.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch-root-template.xml
Thu Aug 5 11:50:20 2004
@@ -0,0 +1,270 @@
+<project name="tch" default="version">
+
+ <!-- This is the root Tch buildfile. It performs process configuration, as
well as
+ calling out to the specified Tch buildfile supplied by the user.
+ See the documentation and the functional description document for more
details. -->
+
+ <!-- Tch core tasks -->
+
+ <taskdef name="process-setup"
classname="org.apache.beehive.test.tools.tch.core.stl.ProcessSetupTask"/>
+
+ <taskdef name="test-suite-call"
classname="org.apache.beehive.test.tools.tch.core.TestSuiteCallTask"/>
+ <taskdef name="test-suite"
classname="org.apache.beehive.test.tools.tch.core.TestSuiteTask"/>
+ <taskdef name="test-block"
classname="org.apache.beehive.test.tools.tch.core.TestBlockTask"/>
+ <taskdef name="test"
classname="org.apache.beehive.test.tools.tch.core.TestTask"/>
+
+ <taskdef name="process"
classname="org.apache.beehive.test.tools.tch.core.ProcessTask"/>
+ <taskdef name="independent-test-group"
classname="org.apache.beehive.test.tools.tch.core.IndependentTestGroupTask"/>
+ <taskdef name="configuration-dependency"
classname="org.apache.beehive.test.tools.tch.core.ConfigurationDependencyTask"/>
+ <taskdef name="jvmarg"
classname="org.apache.beehive.test.tools.tch.core.JvmargTask"/>
+ <taskdef name="test-parameter"
classname="org.apache.beehive.test.tools.tch.core.ParamTask"/>
+ <taskdef name="test-unit-modifier"
classname="org.apache.beehive.test.tools.tch.core.TestUnitModifierTask"/>
+ <taskdef name="test-unit-override"
classname="org.apache.beehive.test.tools.tch.core.TestUnitOverrideTask"/>
+ <taskdef name="append-to-test-unit"
classname="org.apache.beehive.test.tools.tch.core.AppendModifierToTestUnitTask"/>
+ <taskdef name="test-name-modifier"
classname="org.apache.beehive.test.tools.tch.core.TestNameModifierTask"/>
+ <taskdef name="append-to-test-name"
classname="org.apache.beehive.test.tools.tch.core.AppendModifierToTestNameTask"/>
+ <taskdef name="test-parallel"
classname="org.apache.beehive.test.tools.tch.core.TestParallelTask"/>
+ <taskdef name="test-sequential"
classname="org.apache.beehive.test.tools.tch.core.TestSequentialTask"/>
+ <taskdef name="test-vehicle"
classname="org.apache.beehive.test.tools.tch.core.TestVehicleTask"/>
+ <taskdef name="test-metadata"
classname="org.apache.beehive.test.tools.tch.core.TestMetadataTask"/>
+
+ <taskdef name="if"
classname="org.apache.beehive.test.tools.tch.core.IfTask"/>
+ <taskdef name="conditional"
classname="org.apache.beehive.test.tools.tch.core.IfTask$ConditionTask"/>
+
+ <taskdef name="requires-dependent"
classname="org.apache.beehive.test.tools.tch.core.RequiresDependentTask"/>
+ <taskdef name="requires"
classname="org.apache.beehive.test.tools.tch.core.RequiresTask"/>
+ <taskdef name="dependent"
classname="org.apache.beehive.test.tools.tch.core.DependentTask"/>
+
+ <!-- FIXME we can probably remove the 'utility' task -->
+ <taskdef name="utility"
classname="org.apache.beehive.test.tools.tch.core.UtilityTask"/>
+ <taskdef
+ name="javatest-utility"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.javatest.JavatestUtilityTask"/>
+ <taskdef name="parameter"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.javatest.JavatestUtilityTask$ParameterContainer"/>
+
+ <taskdef name="custom-task"
classname="org.apache.beehive.test.tools.tch.core.AnythingTask"/>
+ <taskdef name="init-hook"
classname="org.apache.beehive.test.tools.tch.core.InitHookTask"/>
+ <taskdef name="cleanup-hook"
classname="org.apache.beehive.test.tools.tch.core.CleanupHookTask"/>
+ <taskdef name="prop-val-substitution"
classname="org.apache.beehive.test.tools.tch.core.PropValueSubstitutionSetupTask"/>
+ <taskdef name="inform"
classname="org.apache.beehive.test.tools.tch.core.ant.TchLogTask"/>
+
+ @TASKDEFS@
+
+ <taskdef name="startup"
classname="org.apache.beehive.test.tools.tch.core.StartupTask"/>
+ <taskdef name="file-exists"
classname="org.apache.beehive.test.tools.tch.util.ant.FileExistsTask"/>
+ <taskdef name="message"
classname="org.apache.beehive.test.tools.tch.core.MessageTask"/>
+ <taskdef name="test-list-output"
classname="org.apache.beehive.test.tools.tch.core.TestListOutputTask"/>
+ <taskdef name="update"
classname="org.apache.beehive.test.tools.tch.extension.update.UpdateManager"/>
+
+ <taskdef name="init-pm"
+
classname="org.apache.beehive.test.tools.tch.core.InitProcessManagementTask"/>
+ <taskdef name="resolve-process-info-props"
+
classname="org.apache.beehive.test.tools.tch.core.process.ResolveProcessPropertiesTask"/>
+ <taskdef name="check-references"
+
classname="org.apache.beehive.test.tools.tch.core.ReferenceCheckTask"/>
+ <taskdef name="final-validation"
+
classname="org.apache.beehive.test.tools.tch.core.configuration.FinalValidationCheckTask"/>
+ <taskdef name="auto-start-processes"
+
classname="org.apache.beehive.test.tools.tch.core.AutoStartProcessesTask"/>
+ <taskdef name="init-logger"
+ classname="org.apache.beehive.test.tools.tch.core.InitLoggerTask"/>
+ <taskdef name="test-runner"
classname="org.apache.beehive.test.tools.tch.core.TestRunner"/>
+ <taskdef name="shutdown"
+
classname="org.apache.beehive.test.tools.tch.core.PrepareForShutdown"/>
+
+ <!-- For javatest execution task -->
+ <taskdef name="javatest"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.javatest.JavatestTask"/>
+
+ <taskdef name="junit"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.junit.JunitExecTask"/>
+
+ <!-- For webservertest execution task -->
+ <taskdef name="wstest"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.wstest.WebServerExecTask"/>
+
+ <!-- Tch test (tch testing tch) -->
+ <taskdef name="tch-diff-test"
classname="org.apache.beehive.test.tools.tch.extension.exectask.self.TchExecTask"/>
+
+ @PRODUCTION-EXEC-TASKDEFS@
+
+ <!-- cmdline exec task -->
+ <taskdef name="cmdline"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.cmdline.CommandLineTask"/>
+
+ <!-- For stf execution task
+ <taskdef name="stf"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.stf.STFExecTask"/>
+ -->
+ <!-- For ant-exec-task execution task -->
+ <taskdef name="ant-task"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.ant.AntExecTask"/>
+
+ <property name="test-suite" value="test.xml"/>
+
+ <property name="base-param" value="set-at-base"/>
+
+ <property
+ name="tch.internal.start-processes-only-prop-name"
+ value="tch.start-processes-only"
+ />
+
+ <property
+ name="tch.internal.log-banners-prop-name"
+ value="tch.log-banners"
+ />
+
+ <!-- do not change this prefix, we depend on it for dynamic process config
-->
+ <property environment="env"/>
+
+
+ <target name="version">
+ <echo message="runtime java.version: ${java.version}"/>
+ <echo message="runtime java.home: ${java.home}"/>
+ <java classname="tch.version"/>
+ </target>
+
+ <target name="dtd">
+ <antstructure output="simple.dtd"/>
+ </target>
+
+ <target name="run" depends="version,
+ preRun,
+ InitRun,
+ PostInitRun,
+ PreExecRun,
+ ExecRun,
+ PostRun"/>
+
+ <target name="preRun">
+
+ <startup/> <!-- might want to move both of these to the very beginning,
when we want to have control over all msgs -->
+
+ <fail unless="tch.home" message="tch.home must be set."/>
+ <file-exists dir="${tch.baseDir}" file="${test-suite}" message="Your
supplied test-suite XML testfile was not found. This is set using
"-Dtest-suite=filename" and defaults to "test.xml". The
file not found is: "/>
+
+ <antcall target="print-start-message"/>
+
+ <process-setup/>
+
+ <!--java
classname="org.apache.beehive.test.tools.tch.core.configuration.ProcessSetup"
+ failonerror="true"/-->
+
+ @INIT-ANONYMOUS-PROCESS@
+ @INIT-TEST-VEHICLE@
+
+ </target>
+
+ <target name="InitRun" depends="is-init-mode-enabled">
+ <echo message="Running test suite: ${test-suite} ..."/>
+ <test-suite-call
+ testfile="${test-suite}"
+ dir="${tch.baseDir}"
+ topLevel="true"
+ />
+ <check-references/>
+ <final-validation checkFatalOnly="true"/>
+
+ <!-- this performs updates to test metadata
+ forces init-mode-only
+ experimental, does not do anything right now
+ -->
+ <update/>
+
+ <!-- There are antcalls since they should only run if
+ tch.internal.validation-failed is not set
+ -->
+ <antcall target="test-runner"/>
+ <antcall target="init-pm"/>
+
+ <!-- this task needs to set properties, on the current project,
+ so it cannot run in its own target -->
+ <resolve-process-info-props/>
+
+ <final-validation/>
+ <message mode="middle"/>
+ <test-list-output/>
+ </target>
+
+ <target name="test-runner" unless="tch.internal.validation-failed">
+ <test-runner/>
+ </target>
+
+ <target name="init-pm" unless="tch.internal.validation-failed">
+ <init-pm/>
+ </target>
+
+ <target name="final-validation" unless="tch.internal.validation-failed">
+ <final-validation/>
+ </target>
+
+ <target name="PostInitRun" unless="tch.internal.init-mode-only-enabled">
+ <init-logger/>
+ <auto-start-processes/>
+ </target>
+
+ <target name="ExitEarly" if="${tch.internal.start-processes-only-prop-name}">
+ <fail message="Exiting after starting processes..."/>
+ </target>
+
+ <target name="PreExecRun" depends="ExitEarly"
unless="tch.internal.init-mode-only-enabled">
+
+ <prop-val-substitution>
+ <arg name="${env.TCH_HOME}" value="TCH_HOME" env="true"/>
+ </prop-val-substitution>
+
+ @ENV-PROP-MAPPING@
+
+ <!-- Switching from init mode to run mode -->
+ <java classname="org.apache.beehive.test.tools.tch.core.DirtyClass"
+ failonerror="true"/>
+ <test-runner/>
+ </target>
+
+ <target name="ExecRun" unless="tch.internal.init-mode-only-enabled">
+ <test-suite-call testfile="${test-suite}" dir="${tch.baseDir}"
topLevel="true"/>
+ </target>
+
+ <target name="PostRun" unless="tch.internal.init-mode-only-enabled">
+ <java
+ classname="org.apache.beehive.test.tools.tch.core.DirtyClass"
+ failonerror="true"
+ />
+
+ <antcall target="print-end-message"/>
+
+ <shutdown/>
+ </target>
+
+ <target name="print-start-message"
unless="${tch.internal.log-banners-prop-name}">
+ <loadfile
+ srcfile="${tch.home}/messages/start.txt"
+ property="tch.internal.start-message"
+ />
+ <echo message="${tch.internal.start-message}"/>
+ </target>
+
+ <target name="print-end-message"
unless="${tch.internal.log-banners-prop-name}">
+ <loadfile
+ srcfile="${tch.home}/messages/end.txt"
+ property="tch.internal.end-message"
+ />
+ <echo message="${tch.internal.end-message}"/>
+ </target>
+
+ <target name="is-init-mode-enabled">
+ <condition
+ property="tch.internal.init-mode-only-enabled"
+ value="set"
+ >
+ <equals
+ arg1="true"
+ arg2="${tch.init-mode-only}"
+ casesensitive="false"
+ />
+ </condition>
+ </target>
+
+</project>
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch-root.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch-root.xml Thu Aug
5 11:50:20 2004
@@ -0,0 +1,270 @@
+<project name="tch" default="version">
+
+ <!-- This is the root Tch buildfile. It performs process configuration, as
well as
+ calling out to the specified Tch buildfile supplied by the user.
+ See the documentation and the functional description document for more
details. -->
+
+ <!-- Tch core tasks -->
+
+ <taskdef name="process-setup"
classname="org.apache.beehive.test.tools.tch.core.stl.ProcessSetupTask"/>
+
+ <taskdef name="test-suite-call"
classname="org.apache.beehive.test.tools.tch.core.TestSuiteCallTask"/>
+ <taskdef name="test-suite"
classname="org.apache.beehive.test.tools.tch.core.TestSuiteTask"/>
+ <taskdef name="test-block"
classname="org.apache.beehive.test.tools.tch.core.TestBlockTask"/>
+ <taskdef name="test"
classname="org.apache.beehive.test.tools.tch.core.TestTask"/>
+
+ <taskdef name="process"
classname="org.apache.beehive.test.tools.tch.core.ProcessTask"/>
+ <taskdef name="independent-test-group"
classname="org.apache.beehive.test.tools.tch.core.IndependentTestGroupTask"/>
+ <taskdef name="configuration-dependency"
classname="org.apache.beehive.test.tools.tch.core.ConfigurationDependencyTask"/>
+ <taskdef name="jvmarg"
classname="org.apache.beehive.test.tools.tch.core.JvmargTask"/>
+ <taskdef name="test-parameter"
classname="org.apache.beehive.test.tools.tch.core.ParamTask"/>
+ <taskdef name="test-unit-modifier"
classname="org.apache.beehive.test.tools.tch.core.TestUnitModifierTask"/>
+ <taskdef name="test-unit-override"
classname="org.apache.beehive.test.tools.tch.core.TestUnitOverrideTask"/>
+ <taskdef name="append-to-test-unit"
classname="org.apache.beehive.test.tools.tch.core.AppendModifierToTestUnitTask"/>
+ <taskdef name="test-name-modifier"
classname="org.apache.beehive.test.tools.tch.core.TestNameModifierTask"/>
+ <taskdef name="append-to-test-name"
classname="org.apache.beehive.test.tools.tch.core.AppendModifierToTestNameTask"/>
+ <taskdef name="test-parallel"
classname="org.apache.beehive.test.tools.tch.core.TestParallelTask"/>
+ <taskdef name="test-sequential"
classname="org.apache.beehive.test.tools.tch.core.TestSequentialTask"/>
+ <taskdef name="test-vehicle"
classname="org.apache.beehive.test.tools.tch.core.TestVehicleTask"/>
+ <taskdef name="test-metadata"
classname="org.apache.beehive.test.tools.tch.core.TestMetadataTask"/>
+
+ <taskdef name="if"
classname="org.apache.beehive.test.tools.tch.core.IfTask"/>
+ <taskdef name="conditional"
classname="org.apache.beehive.test.tools.tch.core.IfTask$ConditionTask"/>
+
+ <taskdef name="requires-dependent"
classname="org.apache.beehive.test.tools.tch.core.RequiresDependentTask"/>
+ <taskdef name="requires"
classname="org.apache.beehive.test.tools.tch.core.RequiresTask"/>
+ <taskdef name="dependent"
classname="org.apache.beehive.test.tools.tch.core.DependentTask"/>
+
+ <!-- FIXME we can probably remove the 'utility' task -->
+ <taskdef name="utility"
classname="org.apache.beehive.test.tools.tch.core.UtilityTask"/>
+ <taskdef
+ name="javatest-utility"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.javatest.JavatestUtilityTask"/>
+ <taskdef name="parameter"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.javatest.JavatestUtilityTask$ParameterContainer"/>
+
+ <taskdef name="custom-task"
classname="org.apache.beehive.test.tools.tch.core.AnythingTask"/>
+ <taskdef name="init-hook"
classname="org.apache.beehive.test.tools.tch.core.InitHookTask"/>
+ <taskdef name="cleanup-hook"
classname="org.apache.beehive.test.tools.tch.core.CleanupHookTask"/>
+ <taskdef name="prop-val-substitution"
classname="org.apache.beehive.test.tools.tch.core.PropValueSubstitutionSetupTask"/>
+ <taskdef name="inform"
classname="org.apache.beehive.test.tools.tch.core.ant.TchLogTask"/>
+
+
+
+ <taskdef name="startup"
classname="org.apache.beehive.test.tools.tch.core.StartupTask"/>
+ <taskdef name="file-exists"
classname="org.apache.beehive.test.tools.tch.util.ant.FileExistsTask"/>
+ <taskdef name="message"
classname="org.apache.beehive.test.tools.tch.core.MessageTask"/>
+ <taskdef name="test-list-output"
classname="org.apache.beehive.test.tools.tch.core.TestListOutputTask"/>
+ <taskdef name="update"
classname="org.apache.beehive.test.tools.tch.extension.update.UpdateManager"/>
+
+ <taskdef name="init-pm"
+
classname="org.apache.beehive.test.tools.tch.core.InitProcessManagementTask"/>
+ <taskdef name="resolve-process-info-props"
+
classname="org.apache.beehive.test.tools.tch.core.process.ResolveProcessPropertiesTask"/>
+ <taskdef name="check-references"
+
classname="org.apache.beehive.test.tools.tch.core.ReferenceCheckTask"/>
+ <taskdef name="final-validation"
+
classname="org.apache.beehive.test.tools.tch.core.configuration.FinalValidationCheckTask"/>
+ <taskdef name="auto-start-processes"
+
classname="org.apache.beehive.test.tools.tch.core.AutoStartProcessesTask"/>
+ <taskdef name="init-logger"
+ classname="org.apache.beehive.test.tools.tch.core.InitLoggerTask"/>
+ <taskdef name="test-runner"
classname="org.apache.beehive.test.tools.tch.core.TestRunner"/>
+ <taskdef name="shutdown"
+
classname="org.apache.beehive.test.tools.tch.core.PrepareForShutdown"/>
+
+ <!-- For javatest execution task -->
+ <taskdef name="javatest"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.javatest.JavatestTask"/>
+
+ <taskdef name="junit"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.junit.JunitExecTask"/>
+
+ <!-- For webservertest execution task -->
+ <taskdef name="wstest"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.wstest.WebServerExecTask"/>
+
+ <!-- Tch test (tch testing tch) -->
+ <taskdef name="tch-diff-test"
classname="org.apache.beehive.test.tools.tch.extension.exectask.self.TchExecTask"/>
+
+
+
+ <!-- cmdline exec task -->
+ <taskdef name="cmdline"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.cmdline.CommandLineTask"/>
+
+ <!-- For stf execution task
+ <taskdef name="stf"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.stf.STFExecTask"/>
+ -->
+ <!-- For ant-exec-task execution task -->
+ <taskdef name="ant-task"
+
classname="org.apache.beehive.test.tools.tch.extension.exectask.ant.AntExecTask"/>
+
+ <property name="test-suite" value="test.xml"/>
+
+ <property name="base-param" value="set-at-base"/>
+
+ <property
+ name="tch.internal.start-processes-only-prop-name"
+ value="tch.start-processes-only"
+ />
+
+ <property
+ name="tch.internal.log-banners-prop-name"
+ value="tch.log-banners"
+ />
+
+ <!-- do not change this prefix, we depend on it for dynamic process config
-->
+ <property environment="env"/>
+
+
+ <target name="version">
+ <echo message="runtime java.version: ${java.version}"/>
+ <echo message="runtime java.home: ${java.home}"/>
+ <java classname="tch.version"/>
+ </target>
+
+ <target name="dtd">
+ <antstructure output="simple.dtd"/>
+ </target>
+
+ <target name="run" depends="version,
+ preRun,
+ InitRun,
+ PostInitRun,
+ PreExecRun,
+ ExecRun,
+ PostRun"/>
+
+ <target name="preRun">
+
+ <startup/> <!-- might want to move both of these to the very beginning,
when we want to have control over all msgs -->
+
+ <fail unless="tch.home" message="tch.home must be set."/>
+ <file-exists dir="${tch.baseDir}" file="${test-suite}" message="Your
supplied test-suite XML testfile was not found. This is set using
"-Dtest-suite=filename" and defaults to "test.xml". The
file not found is: "/>
+
+ <antcall target="print-start-message"/>
+
+ <process-setup/>
+
+ <!--java
classname="org.apache.beehive.test.tools.tch.core.configuration.ProcessSetup"
+ failonerror="true"/-->
+
+
+
+
+ </target>
+
+ <target name="InitRun" depends="is-init-mode-enabled">
+ <echo message="Running test suite: ${test-suite} ..."/>
+ <test-suite-call
+ testfile="${test-suite}"
+ dir="${tch.baseDir}"
+ topLevel="true"
+ />
+ <check-references/>
+ <final-validation checkFatalOnly="true"/>
+
+ <!-- this performs updates to test metadata
+ forces init-mode-only
+ experimental, does not do anything right now
+ -->
+ <update/>
+
+ <!-- There are antcalls since they should only run if
+ tch.internal.validation-failed is not set
+ -->
+ <antcall target="test-runner"/>
+ <antcall target="init-pm"/>
+
+ <!-- this task needs to set properties, on the current project,
+ so it cannot run in its own target -->
+ <resolve-process-info-props/>
+
+ <final-validation/>
+ <message mode="middle"/>
+ <test-list-output/>
+ </target>
+
+ <target name="test-runner" unless="tch.internal.validation-failed">
+ <test-runner/>
+ </target>
+
+ <target name="init-pm" unless="tch.internal.validation-failed">
+ <init-pm/>
+ </target>
+
+ <target name="final-validation" unless="tch.internal.validation-failed">
+ <final-validation/>
+ </target>
+
+ <target name="PostInitRun" unless="tch.internal.init-mode-only-enabled">
+ <init-logger/>
+ <auto-start-processes/>
+ </target>
+
+ <target name="ExitEarly" if="${tch.internal.start-processes-only-prop-name}">
+ <fail message="Exiting after starting processes..."/>
+ </target>
+
+ <target name="PreExecRun" depends="ExitEarly"
unless="tch.internal.init-mode-only-enabled">
+
+ <prop-val-substitution>
+ <arg name="${env.TCH_HOME}" value="TCH_HOME" env="true"/>
+ </prop-val-substitution>
+
+
+
+ <!-- Switching from init mode to run mode -->
+ <java classname="org.apache.beehive.test.tools.tch.core.DirtyClass"
+ failonerror="true"/>
+ <test-runner/>
+ </target>
+
+ <target name="ExecRun" unless="tch.internal.init-mode-only-enabled">
+ <test-suite-call testfile="${test-suite}" dir="${tch.baseDir}"
topLevel="true"/>
+ </target>
+
+ <target name="PostRun" unless="tch.internal.init-mode-only-enabled">
+ <java
+ classname="org.apache.beehive.test.tools.tch.core.DirtyClass"
+ failonerror="true"
+ />
+
+ <antcall target="print-end-message"/>
+
+ <shutdown/>
+ </target>
+
+ <target name="print-start-message"
unless="${tch.internal.log-banners-prop-name}">
+ <loadfile
+ srcfile="${tch.home}/messages/start.txt"
+ property="tch.internal.start-message"
+ />
+ <echo message="${tch.internal.start-message}"/>
+ </target>
+
+ <target name="print-end-message"
unless="${tch.internal.log-banners-prop-name}">
+ <loadfile
+ srcfile="${tch.home}/messages/end.txt"
+ property="tch.internal.end-message"
+ />
+ <echo message="${tch.internal.end-message}"/>
+ </target>
+
+ <target name="is-init-mode-enabled">
+ <condition
+ property="tch.internal.init-mode-only-enabled"
+ value="set"
+ >
+ <equals
+ arg1="true"
+ arg2="${tch.init-mode-only}"
+ casesensitive="false"
+ />
+ </condition>
+ </target>
+
+</project>
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch-update-conf.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch-update-conf.xml Thu Aug
5 11:50:20 2004
@@ -0,0 +1,39 @@
+<root>
+ <updatable-entity>
+ <entity name="owner" property-name="update.owners"/>
+ <entity name="freq" property-name="update.frequencies"/>
+ <entity name="timeout" property-name="update.timeout"/>
+ <entity name="conversation" property-name="update.conversations"/>
+ <entity name="serverMode" property-name="update.server-modes"/>
+ <entity name="domain" property-name="update.domains"/>
+ <entity name="os" property-name="update.os"/>
+ <entity name="db" property-name="update.dbs"/>
+ <entity name="status" property-name="update.status"/>
+ <entity name="misc" property-name="update.misc"/>
+ </updatable-entity>
+ <update-listener>
+
+ <!-- Default listener -->
+ <!-- (default because it does not specify an exec task -->
+ <listener
+ name="default"
+
classname="org.apache.beehive.test.tools.tch.extension.update.DefaultUpdateListener"
+ exectask=""
+ />
+
+ <!-- Junit update listener -->
+ <listener
+ name="junit-updater"
+
classname="org.apache.beehive.test.tools.tch.extension.update.junit.JunitUpdateListener"
+ exectask="junit"
+ >
+ <configuration>
+ <!-- mapping used if tag name is different from xml metadata name -->
+ <!--metadata-mapping tch-val="frequency" junit-val="freq"/-->
+ </configuration>
+ </listener>
+
+ </update-listener>
+</root>
+
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tch.cmd
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch.cmd Thu Aug 5
11:50:20 2004
@@ -0,0 +1,8 @@
[EMAIL PROTECTED] off
+
+if NOT %ERRORLEVEL% == 0 goto antsh
+%~d0%~p0/tchcmd.cmd %*
+
+rem it won't get here unless you use "call" on the .cmd
+:antsh
+sh %~d0%~p0/tch.sh %*
Added: incubator/beehive/trunk/controls/test/infra/tch/tch.sh
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tch.sh Thu Aug 5
11:50:20 2004
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+java org.apache.tools.ant.Main -emacs -verbose -f ${TCH_HOME}/build.xml
-Dtch.home=${TCH_HOME} "$@"
Added: incubator/beehive/trunk/controls/test/infra/tch/tchcmd.cmd
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/controls/test/infra/tch/tchcmd.cmd Thu Aug 5
11:50:20 2004
@@ -0,0 +1,5 @@
[EMAIL PROTECTED] off
+
+SETLOCAL
+java org.apache.tools.ant.Main -emacs -verbose -f %TCH_HOME%/build.xml
-Dtch.home=%TCH_HOME% %*
+
Added: incubator/beehive/trunk/controls/test/infra/tch/tchx.jar
==============================================================================
Binary file. No diff available.
Modified:
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/context/test.xml
==============================================================================
---
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/context/test.xml
(original)
+++
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/context/test.xml
Thu Aug 5 11:50:20 2004
@@ -8,7 +8,7 @@
</test-metadata>
<junit
testclass="org.apache.beehive.controls.test.java.context.ContextTest" />
</test>
- <test name="Test access other service" timeoutSeconds="300" >
+ <test name="Test_access_other_service" timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
Modified:
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/contextevent/test.xml
==============================================================================
---
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/contextevent/test.xml
(original)
+++
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/contextevent/test.xml
Thu Aug 5 11:50:20 2004
@@ -1,7 +1,7 @@
<project name="org.apache.beehive.controls.test.java.context"
default="org-apache-beehive-controls-test-java-context" >
<target name="org-apache-beehive-controls-test-java-context" >
<test-suite testunit="org-apache-beehive-controls-test-java-context" >
- <test name="Tests Control LifeCycle Event" timeoutSeconds="300" >
+ <test name="Tests_Control_LifeCycle_Event" timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
Modified:
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/event/test.xml
==============================================================================
---
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/event/test.xml
(original)
+++
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/event/test.xml
Thu Aug 5 11:50:20 2004
@@ -1,14 +1,14 @@
<project name="org.apache.beehive.controls.test.java.context"
default="org-apache-beehive-controls-test-java-context" >
<target name="org-apache-beehive-controls-test-java-context" >
<test-suite testunit="org-apache-beehive-controls-test-java-context" >
- <test name="Tests Receiving Events by Listeners" timeoutSeconds="300" >
+ <test name="Tests_Receiving_Events_by_Listeners" timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
</test-metadata>
<junit
testclass="org.apache.beehive.controls.test.java.event.ListenerTest" />
</test>
- <test name="Tests Receiving Events by EventHandlers"
timeoutSeconds="300" >
+ <test name="Tests_Receiving_Events_by_EventHandlers"
timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
Modified:
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/extension/test.xml
==============================================================================
---
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/extension/test.xml
(original)
+++
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/extension/test.xml
Thu Aug 5 11:50:20 2004
@@ -1,7 +1,7 @@
<project name="org.apache.beehive.controls.test.java.context"
default="org-apache-beehive-controls-test-java-context" >
<target name="org-apache-beehive-controls-test-java-context" >
<test-suite testunit="org-apache-beehive-controls-test-java-context" >
- <test name="Tests Control Inheritance" timeoutSeconds="300" >
+ <test name="Tests_Control_Inheritance" timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
Modified:
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/instantiate/test.xml
==============================================================================
---
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/instantiate/test.xml
(original)
+++
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/instantiate/test.xml
Thu Aug 5 11:50:20 2004
@@ -1,7 +1,7 @@
<project name="org.apache.beehive.controls.test.java.instantiate"
default="org-apache-beehive-controls-test-java-instantiate" >
<target name="org-apache-beehive-controls-test-java-instantiate" >
<test-suite
testunit="org-apache-beehive-controls-test-java-instantiate" >
- <test name="Test Control Instantiation" timeoutSeconds="300" >
+ <test name="Test_Control_Instantiation" timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
Modified:
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/property/test.xml
==============================================================================
---
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/property/test.xml
(original)
+++
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/property/test.xml
Thu Aug 5 11:50:20 2004
@@ -1,28 +1,28 @@
<project name="org.apache.beehive.controls.test.java.property"
default="org-apache-beehive-controls-test-java-property" >
<target name="org-apache-beehive-controls-test-java-property" >
<test-suite testunit="org-apache-beehive-controls-test-java-property" >
- <test name="Test Controls Property" timeoutSeconds="300" >
+ <test name="Test_Controls_Property" timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
</test-metadata>
<junit
testclass="org.apache.beehive.controls.test.java.property.PropTest" />
</test>
- <test name="Test Accessing Control Property by Getter"
timeoutSeconds="300" >
+ <test name="Test_Accessing_Control_Property_by_Getter"
timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
</test-metadata>
<junit
testclass="org.apache.beehive.controls.test.java.property.ClientAccessTest" />
</test>
- <test name="Test Accessing Control Property by Control Context"
timeoutSeconds="300" >
+ <test name="Test_Accessing_Control_Property_by_Control_Context"
timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
</test-metadata>
<junit
testclass="org.apache.beehive.controls.test.java.property.ImplAccessTest" />
</test>
- <test name="Test Resetting Control Property by setter"
timeoutSeconds="300" >
+ <test name="Test_Resetting_Control_Property_by_setter"
timeoutSeconds="300" >
<test-metadata>
<freq>daily</freq>
<status>active</status>
Modified:
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/root.xml
==============================================================================
---
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/root.xml
(original)
+++
incubator/beehive/trunk/controls/test/src/units/org/apache/beehive/controls/test/java/root.xml
Thu Aug 5 11:50:20 2004
@@ -2,8 +2,6 @@
<target name="na" >
<test-suite testunit="na" >
<test-suite-call testfile="context\test.xml" />
- </test-suite>
- <test-suite testunit="na" >
<test-suite-call testfile="instantiate\test.xml" />
</test-suite>
</target>