Author: jsong
Date: Mon Apr 11 11:09:04 2005
New Revision: 160931
URL: http://svn.apache.org/viewcvs?view=rev&rev=160931
Log:
Contributed by Joe Pemberton. Add support for webapp metadata in TCH.
Modified:
incubator/beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/AntProperties.java
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/Filter.java
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/PropertyNames.java
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/TestMetadataTask.java
Modified:
incubator/beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd?view=diff&r1=160930&r2=160931
==============================================================================
---
incubator/beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd
(original)
+++
incubator/beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd
Mon Apr 11 11:09:04 2005
@@ -571,6 +571,11 @@
/>
<xs:element
minOccurs="0"
+ name="webapps"
+ type="webappsType"
+ />
+ <xs:element
+ minOccurs="0"
name="misc"
type="miscType"
/>
@@ -746,6 +751,23 @@
</xs:restriction>
</xs:simpleType>
<!-- end frequency definition -->
+
+ <xs:simpleType name="webappsOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="controlsWeb"/>
+ <xs:enumeration value="jmsControlWeb"/>
+ <xs:enumeration value="testWeb"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="webappsList">
+ <xs:list itemType="webappsOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="webappsType">
+ <xs:restriction base="webappsList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="3"/>
+ </xs:restriction>
+ </xs:simpleType>
<xs:simpleType name="serverModeOptions">
<xs:restriction base="xs:string">
Modified:
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/AntProperties.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/AntProperties.java?view=diff&r1=160930&r2=160931
==============================================================================
---
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/AntProperties.java
(original)
+++
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/AntProperties.java
Mon Apr 11 11:09:04 2005
@@ -695,6 +695,24 @@
return null;
}
+ public static Collection getWebappsListFilter()
+ {
+ String s =
+ getGlobalProperty(appendTch(TCH_FILTER_WEBAPPS_PROPERTY));
+ if (s != null)
+ {
+ // also accept '+' as delimter because the cc setup sucks.
+ String delimiter = DELIMITER;
+ if (s.indexOf('+') > -1)
+ delimiter = "+";
+ Collection rtn = new HashSet();
+ TchUtils.parseStringToStrings(s, delimiter, rtn);
+ return rtn;
+ }
+ else
+ return null;
+ }
+
public static Collection getCRListFilter()
{
String s = getGlobalProperty(appendTch(TCH_FILTER_CRS_PROPERTY));
Modified:
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/Filter.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/Filter.java?view=diff&r1=160930&r2=160931
==============================================================================
---
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/Filter.java
(original)
+++
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/Filter.java
Mon Apr 11 11:09:04 2005
@@ -32,6 +32,7 @@
//Filterable quantities, can be null if not filtered
private Integer filterTestLevel = null;
+ private Collection filterWebapps= null;
private Collection filterFrequencies = null;
private Collection filterServerModes = null;
private Collection filterOwnerList = null;
@@ -60,6 +61,7 @@
setStatus();
setConversations();
setFrequencies();
+ setWebapps();
setServerModes();
setTestLevel();
setCRList();
@@ -116,6 +118,7 @@
&& passCondition()
&& passCRList()
&& passFrequencies()
+ && passWebapps()
&& passDomains()
&& passStatus()
&& passOwner()
@@ -244,6 +247,22 @@
return true; //no filter
}
+ private boolean passWebapps()
+ {
+ //Strict override
+ if (filterWebapps != null)
+ {
+ if (testMetadata.getWebapps() != null)
+ return checkWebapps(testMetadata.getWebapps());
+ else if (testSuiteMetadata.getWebapps() != null)
+ return checkWebapps(testSuiteMetadata.getWebapps());
+ else
+ return true;
+ }
+ else
+ return true; //no filter
+ }
+
private boolean passDomains()
{
//Strict override
@@ -533,6 +552,11 @@
return isSubset(inFrequencies, filterFrequencies);
}
+ private boolean checkWebapps(Collection inWebapps)
+ {
+ return isSubset(inWebapps, filterWebapps);
+ }
+
private boolean checkDBs(Collection inDBs)
{
// "any" cannot be mixed with other values, so just take first filter value
@@ -637,6 +661,11 @@
private void setFrequencies()
{
filterFrequencies = AntProperties.getFrequenciesListFilter();
+ }
+
+ private void setWebapps()
+ {
+ filterWebapps = AntProperties.getWebappsListFilter();
}
private void setTestLevel()
Modified:
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/PropertyNames.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/PropertyNames.java?view=diff&r1=160930&r2=160931
==============================================================================
---
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/PropertyNames.java
(original)
+++
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/PropertyNames.java
Mon Apr 11 11:09:04 2005
@@ -43,6 +43,7 @@
TCH_FILTER_CRS_MATCH_ALL_PROPERTY = "filter.crs-match-all",
TCH_FILTER_DOMAINS_PROPERTY = "filter.domains",
TCH_FILTER_FREQUENCIES_PROPERTY = "filter.frequencies",
+ TCH_FILTER_WEBAPPS_PROPERTY = "filter.webapps",
TCH_FILTER_MISC_PROPERTY = "filter.misc",
TCH_FILTER_IGNORE_TEST_PROPERTY = "filter.silently-ignore",
TCH_FILTER_KNOWN_FAILURES_PROPERTY = "filter.knownFailures",
Modified:
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/TestMetadataTask.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/TestMetadataTask.java?view=diff&r1=160930&r2=160931
==============================================================================
---
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/TestMetadataTask.java
(original)
+++
incubator/beehive/trunk/controls/test/tools/tch/src/java/org/apache/beehive/test/tools/tch/core/TestMetadataTask.java
Mon Apr 11 11:09:04 2005
@@ -44,6 +44,7 @@
private Collection dbs = null;
private String status = Filter.DEFAULT_STATUS;
+ private Collection webapps = null;
private Collection frequencies = null;
private Collection testLevels = null;
private Collection serverModes = null;
@@ -234,6 +235,19 @@
}
}
+ public void addConfiguredWebapps(TextElement inWebapps)
+ {
+ if (inWebapps.getText() != null
+ && inWebapps.getText().trim().length() > 0)
+ {
+ webapps = new HashSet();
+ TchUtils.parseStringToStrings(
+ inWebapps.getText().trim(),
+ " ",
+ webapps);
+ }
+ }
+
public void addConfiguredServermode(TextElement inServermodes)
{
if (inServermodes.getText() != null
@@ -316,6 +330,11 @@
public Collection getFrequencies()
{
return frequencies;
+ }
+
+ public Collection getWebapps()
+ {
+ return webapps;
}
public Collection getServerModes()