You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by jk...@apache.org on 2008/01/23 23:55:10 UTC

svn commit: r614722 - in /tapestry/tapestry4/trunk: ./ tapestry-framework/src/java/org/apache/tapestry/html/ tapestry-framework/src/java/org/apache/tapestry/services/impl/ tapestry-framework/src/scripts/ tapestry-framework/src/test/org/apache/tapestry/...

Author: jkuhnert
Date: Wed Jan 23 14:55:08 2008
New Revision: 614722

URL: http://svn.apache.org/viewvc?rev=614722&view=rev
Log:
-) Enabled integration tests with regular maven build and fixed new Radio related errors.
-) Fixed ExpressionEvaluator intermittent failures by not relying on HiveMindExpressionCompiler.

Modified:
    tapestry/tapestry4/trunk/pom.xml
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/Shell.jwc
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionCacheImpl.java
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionEvaluatorImpl.java
    tapestry/tapestry4/trunk/tapestry-framework/src/scripts/TestRadio.xml
    tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/mock/TestMockApplications.java
    tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/impl/TestExpressionEvaluator.java

Modified: tapestry/tapestry4/trunk/pom.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/pom.xml?rev=614722&r1=614721&r2=614722&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/pom.xml (original)
+++ tapestry/tapestry4/trunk/pom.xml Wed Jan 23 14:55:08 2008
@@ -260,6 +260,7 @@
                     <version>2.3</version>
                     <inherited>true</inherited>
                     <configuration>
+                        <argLine>-Xmx612m -XX:MaxPermSize=324m</argLine>
                         <systemProperties>
                             <property>
                                 <name>user.language</name>

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/Shell.jwc
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/Shell.jwc?rev=614722&r1=614721&r2=614722&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/Shell.jwc (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/html/Shell.jwc Wed Jan 23 14:55:08 2008
@@ -138,7 +138,7 @@
             document. It is highly reccomended that you keep this at its default value of false.
         </description>
     </parameter>
-    
+
     <parameter name="searchIds">
         <description>
             Provides a way to have dojo automatically parse a known set of page 
@@ -158,7 +158,7 @@
             Sets the tapestry path, needed for dojo to properly detect and find tapestry js modules
             when overriding the default dojo bundled with tapestry.
         </description>
-    </parameter>ey
+    </parameter>
 
     <parameter name="dojoSource" default-value="ognl:jsManager.firstAsset">
         <description>

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionCacheImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionCacheImpl.java?rev=614722&r1=614721&r2=614722&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionCacheImpl.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionCacheImpl.java Wed Jan 23 14:55:08 2008
@@ -103,7 +103,7 @@
             Map cached = (Map)_objectCache.get(target.getClass());
             
             if (cached == null)
-            {    
+            {
                 cached = new HashMap();
                 _objectCache.put(target.getClass(), cached);
             }

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionEvaluatorImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionEvaluatorImpl.java?rev=614722&r1=614721&r2=614722&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionEvaluatorImpl.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/services/impl/ExpressionEvaluatorImpl.java Wed Jan 23 14:55:08 2008
@@ -70,8 +70,7 @@
     public void initializeService()
     {
         if (_applicationSpecification.checkExtension(Tapestry.OGNL_TYPE_CONVERTER))
-            _typeConverter = (TypeConverter) _applicationSpecification.getExtension(Tapestry.OGNL_TYPE_CONVERTER,
-                    TypeConverter.class);
+            _typeConverter = (TypeConverter) _applicationSpecification.getExtension(Tapestry.OGNL_TYPE_CONVERTER, TypeConverter.class);
 
         Iterator i = _contributions.iterator();
 
@@ -143,8 +142,8 @@
         }
         catch (Exception ex)
         {
-            throw new ApplicationRuntimeException(ImplMessages.unableToReadExpression(ImplMessages
-                    .parsedExpression(), target, ex), target, null, ex);
+            throw new ApplicationRuntimeException(ImplMessages.unableToReadExpression(ImplMessages.parsedExpression(),
+                                                                                      target, ex), target, null, ex);
         } finally {
             try { if (context != null) _contextPool.returnObject(context); } catch (Exception e) {}
         }

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/scripts/TestRadio.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/scripts/TestRadio.xml?rev=614722&r1=614721&r2=614722&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/scripts/TestRadio.xml (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/scripts/TestRadio.xml Wed Jan 23 14:55:08 2008
@@ -18,405 +18,406 @@
 <mock-test>
     <context name="c18" root="context18" />
 
-  	<servlet name="app" class="org.apache.tapestry.ApplicationServlet" />
+    <servlet name="app" class="org.apache.tapestry.ApplicationServlet" />
 
-	<request>
-		
-		<assert-output name="Page Title">
-<![CDATA[
+    <request>
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Home</title>
-]]>	
-		</assert-output>
-		
-		<assert-output-matches name="Radio Fields">
-<![CDATA[
+]]>
+        </assert-output>
+
+        <assert-output-matches name="Radio Fields">
+            <![CDATA[
 <input type="radio" .*?> \w+
 ]]>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" value="1" /> Medium]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" value="2" /> Large]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
-									
-		</assert-output-matches>
-		
-		<assert-output name="Size Field">
-		Size: [20]	
-		</assert-output>
-
-	</request>
-	
-	<!-- Pretend to click the "Large" button. -->
-	
-	<request>
-		<parameter name="service" value="direct" />
-    <parameter name="page" value="Home" />
-    <parameter name="component" value="$Form" />
-		<parameter name="RadioGroup" value="2" />
-		<parameter name="formids" value="RadioGroup" />
-		
-		<assert-output name="Page Title">
-<![CDATA[
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" value="1" /> Medium]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" value="2" /> Large]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
+
+        </assert-output-matches>
+
+        <assert-output name="Size Field">
+            Size: [20]
+        </assert-output>
+
+    </request>
+
+    <!-- Pretend to click the "Large" button. -->
+
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="page" value="Home" />
+        <parameter name="component" value="$Form" />
+        <parameter name="RadioGroup" value="2" />
+        <parameter name="formids" value="RadioGroup,Radio,Radio_0,Radio_1,Radio_2" />
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Home</title>
-]]>	
-		</assert-output>
-		
-		<assert-output-matches name="Radio Fields">
-<![CDATA[
+]]>
+        </assert-output>
+
+        <assert-output-matches name="Radio Fields">
+            <![CDATA[
 <input type="radio" .*?> \w+
 ]]>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" value="1" /> Medium]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" checked="checked" value="2" /> Large]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
-									
-		</assert-output-matches>
-		
-		<assert-output name="Size Field">
-		Size: [30]	
-		</assert-output>
-
-	</request>
-
-	<!-- Submit with no option selected. -->
-	
-	<request>
-		<parameter name="service" value="direct" />
-    <parameter name="page" value="Home" />
-    <parameter name="component" value="$Form" />
-		<parameter name="formids" value="RadioGroup" />
-		
-		<assert-output name="Page Title">
-<![CDATA[
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" value="1" /> Medium]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" checked="checked" value="2" /> Large]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
+
+        </assert-output-matches>
+
+        <assert-output name="Size Field">
+            Size: [30]
+        </assert-output>
+
+    </request>
+
+    <!-- Submit with no option selected. -->
+
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="page" value="Home" />
+        <parameter name="component" value="$Form" />
+        <parameter name="formids" value="RadioGroup,Radio,Radio_0,Radio_1,Radio_2" />
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Home</title>
-]]>	
-		</assert-output>
-		
-		<assert-output-matches name="Radio Fields">
-<![CDATA[
+]]>
+        </assert-output>
+
+        <assert-output-matches name="Radio Fields">
+            <![CDATA[
 <input type="radio" .*?> \w+
 ]]>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" value="1" /> Medium]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" value="2" /> Large]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
-									
-		</assert-output-matches>
-		
-		<assert-output name="Size Field">
-		Size: [20]	
-		</assert-output>
-
-	</request>
-
-	<!-- Pretend to click the "Gargantuan" button (even though it is disabled). -->
-	
-	<request>
-		<parameter name="service" value="direct" />
-    <parameter name="page" value="Home" />
-    <parameter name="component" value="$Form" />
-		<parameter name="RadioGroup" value="3" />
-		<parameter name="formids" value="RadioGroup" />
-		
-		<assert-output name="Page Title">
-<![CDATA[
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" value="1" /> Medium]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" value="2" /> Large]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
+
+        </assert-output-matches>
+
+        <assert-output name="Size Field">
+            Size: [20]
+        </assert-output>
+
+    </request>
+
+    <!-- Pretend to click the "Gargantuan" button (even though it is disabled). -->
+
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="page" value="Home" />
+        <parameter name="component" value="$Form" />
+        <parameter name="RadioGroup" value="3" />
+        <parameter name="formids" value="RadioGroup,Radio,Radio_0,Radio_1,Radio_2" />
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Home</title>
-]]>	
-		</assert-output>
-		
-		<assert-output-matches name="Radio Fields">
-<![CDATA[
+]]>
+        </assert-output>
+
+        <assert-output-matches name="Radio Fields">
+            <![CDATA[
 <input type="radio" .*?> \w+
 ]]>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" value="1" /> Medium]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" value="2" /> Large]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
-									
-		</assert-output-matches>
-		
-		<assert-output name="Size Field">
-		Size: [20]	
-		</assert-output>
-
-	</request>
-
-	<!-- Click the dummy form (using action service). -->
-	
-	<request>
-		<parameter name="service" value="direct" />
-    <parameter name="page" value="Home" />
-    <parameter name="direct" value="1" />
-    <parameter name="component" value="dummy" />
-		<parameter name="formids" value="" />
-		
-		<assert-output name="Page Title">
-<![CDATA[
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" value="1" /> Medium]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" value="2" /> Large]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
+
+        </assert-output-matches>
+
+        <assert-output name="Size Field">
+            Size: [20]
+        </assert-output>
+
+    </request>
+
+    <!-- Click the dummy form (using action service). -->
+
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="page" value="Home" />
+        <parameter name="direct" value="1" />
+        <parameter name="component" value="dummy" />
+        <parameter name="formids" value="" />
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Home</title>
-]]>	
-		</assert-output>
-		
-		<assert-output-matches name="Radio Fields">
-<![CDATA[
+]]>
+        </assert-output>
+
+        <assert-output-matches name="Radio Fields">
+            <![CDATA[
 <input type="radio" .*?> \w+
 ]]>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" value="1" /> Medium]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" value="2" /> Large]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
-									
-		</assert-output-matches>
-		
-		<assert-output name="Size Field">
-		Size: [20]	
-		</assert-output>
-
-	</request>
-
-	<!-- Click the link to disable the group. -->
-	
-	<request>
-		<parameter name="service" value="direct" />
-    <parameter name="page" value="Home" />
-    <parameter name="component" value="$DirectLink" />
-    
-		<assert-output name="Page Title">
-<![CDATA[
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" value="0" /> Small]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" value="1" /> Medium]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" value="2" /> Large]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
+
+        </assert-output-matches>
+
+        <assert-output name="Size Field">
+            Size: [20]
+        </assert-output>
+
+    </request>
+
+    <!-- Click the link to disable the group. -->
+
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="page" value="Home" />
+        <parameter name="component" value="$DirectLink" />
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Home</title>
-]]>	
-		</assert-output>
-		
-		<assert-output-matches name="Radio Fields">
-<![CDATA[
+]]>
+        </assert-output>
+
+        <assert-output-matches name="Radio Fields">
+            <![CDATA[
 <input type="radio" .*?> \w+
 ]]>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" disabled="disabled" value="0" /> Small]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" disabled="disabled" value="1" /> Medium]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" disabled="disabled" value="2" /> Large]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
-									
-		</assert-output-matches>
-		
-		<assert-output name="Size Field">
-		Size: [20]	
-		</assert-output>
-			
-	</request>
-	
-	<!-- Select the (now disabled) large value. -->
-	<request>
-		<parameter name="service" value="direct" />
-    <parameter name="page" value="Home" />
-    <parameter name="component" value="$Form" />
-		<parameter name="RadioGroup" value="2" />
-		<parameter name="formids" value="RadioGroup" />
-		
-		<assert-output name="Page Title">
-<![CDATA[
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" disabled="disabled" value="0" /> Small]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" disabled="disabled" value="1" /> Medium]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" disabled="disabled" value="2" /> Large]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
+
+        </assert-output-matches>
+
+        <assert-output name="Size Field">
+            Size: [20]
+        </assert-output>
+
+    </request>
+
+    <!-- Select the (now disabled) large value. -->
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="page" value="Home" />
+        <parameter name="component" value="$Form" />
+        <parameter name="RadioGroup" value="2" />
+        <parameter name="formids" value="RadioGroup" />
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Home</title>
-]]>	
-		</assert-output>
-		
-		<assert-output-matches name="Radio Fields">
-<![CDATA[
+]]>
+        </assert-output>
+
+        <assert-output-matches name="Radio Fields">
+            <![CDATA[
 <input type="radio" .*?> \w+
 ]]>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" disabled="disabled" value="0" /> Small]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" disabled="disabled" value="1" /> Medium]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" disabled="disabled" value="2" /> Large]]></match>
-			<match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
-									
-		</assert-output-matches>
-		
-		<assert-output name="Size Field">
-		Size: [20]	
-		</assert-output>
-		
-	</request>
-	
-	<request>
-		<parameter name="service" value="page" />
-    <parameter name="page" value="NestedGroups" />
-		
-		<assert-output name="Page Title">
-<![CDATA[
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup0" disabled="disabled" value="0" /> Small]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup1" checked="checked" disabled="disabled" value="1" /> Medium]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup2" disabled="disabled" value="2" /> Large]]></match>
+            <match><![CDATA[<input type="radio" name="RadioGroup" id="RadioGroup3" disabled="disabled" value="3" /> Gargantuan]]></match>
+
+        </assert-output-matches>
+
+        <assert-output name="Size Field">
+            Size: [20]
+        </assert-output>
+
+    </request>
+
+    <request>
+        <parameter name="service" value="page" />
+        <parameter name="page" value="NestedGroups" />
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Exception</title>
 ]]>
-		</assert-output>
-		
-		<assert-output name="Exception Name">
-		org.apache.hivemind.ApplicationRuntimeException
-		</assert-output>
-		
-		<assert-output name="Exception Messge">
-		RadioGroup components may not be nested.
-		</assert-output>
-		
-		<assert-output name="Component Id">
-		[NestedGroups/inner]
-		</assert-output>
-	</request>
-	
-	<request>
-		<parameter name="service" value="page" />
-    <parameter name="page" value="NoGroup" />
-		
-		<assert-output name="Page Title">
-<![CDATA[
+        </assert-output>
+
+        <assert-output name="Exception Name">
+            org.apache.hivemind.ApplicationRuntimeException
+        </assert-output>
+
+        <assert-output name="Exception Messge">
+            RadioGroup components may not be nested.
+        </assert-output>
+
+        <assert-output name="Component Id">
+            [NestedGroups/inner]
+        </assert-output>
+    </request>
+
+    <request>
+        <parameter name="service" value="page" />
+        <parameter name="page" value="NoGroup" />
+
+        <assert-output name="Page Title">
+            <![CDATA[
 <title>Exception</title>
 ]]>
-		</assert-output>
-		
-		<assert-output name="Exception Name">
-		org.apache.hivemind.ApplicationRuntimeException
-		</assert-output>
-		
-		<assert-output name="Exception Messge">
-		Radio component must be contained within a RadioGroup.
-		</assert-output>
-		
-		<assert-output name="Component Id">
-		[NoGroup/orphan]
-		</assert-output>
-	</request>
-	
-<!-- Now some tests to check for handling of null as the current selection of a RadioGroup. -->
-
-	<request>
-			<parameter name="service" value="page" />
-      <parameter name="page" value="NullSelection" />
-			
-			<assert-output name="Page Title">
-<![CDATA[<title>NullSelection</title>]]>	
-			</assert-output>
-			
-			<assert-output name="No Choice">
-<![CDATA[<input type="radio" name="group" id="group0" checked="checked" value="0" /> No Choice]]>				
-			</assert-output>
-			
-			<assert-output name="Tapestry">
-<![CDATA[<input type="radio" name="group" id="group1" value="1" /> Tapestry]]>				
-			</assert-output>
-
-			<assert-output name="Struts">
-<![CDATA[<input type="radio" name="group" id="group2" value="2" /> Struts]]>				
-			</assert-output>
-			
-			<assert-output name="WebWork">
-<![CDATA[<input type="radio" name="group" id="group3" value="3" /> WebWork]]>				
-			</assert-output>
-			
-			<assert-output name="Selection">
-Framework: []
-			</assert-output>
-					
-	</request>
-	
-	<!-- Submit the form. -->
-	
-	<request>
-		<parameter name="service" value="direct" />
-    <parameter name="session" value="T" />
-    <parameter name="page" value="NullSelection" />
-    <parameter name="component" value="$Form" />
-		<parameter name="formids" value="group" />
-		<parameter name="group" value="1" />
-		
-			<assert-output name="No Choice">
-<![CDATA[<input type="radio" name="group" id="group0" value="0" /> No Choice]]>				
-			</assert-output>
-					
-			<assert-output name="Tapestry">
-<![CDATA[<input type="radio" name="group" id="group1" checked="checked" value="1" /> Tapestry]]>				
-			</assert-output>
-
-			<assert-output name="Struts">
-<![CDATA[<input type="radio" name="group" id="group2" value="2" /> Struts]]>				
-			</assert-output>
-			
-			<assert-output name="WebWork">
-<![CDATA[<input type="radio" name="group" id="group3" value="3" /> WebWork]]>				
-			</assert-output>
-			
-			<assert-output name="Selection">
-Framework: [tapestry]
-			</assert-output>		
-	</request>
-	
-	<!-- Submit the form with *no* selection for group. -->
-	<request>
-		<parameter name="service" value="direct" />
-    <parameter name="session" value="T" />
-    <parameter name="page" value="NullSelection" />
-    <parameter name="component" value="$Form" />
-		<parameter name="formids" value="group" />	
-
-			<assert-output name="No Choice">
-<![CDATA[<input type="radio" name="group" id="group0" checked="checked" value="0" /> No Choice]]>				
-			</assert-output>
-			
-			<assert-output name="Tapestry">
-<![CDATA[<input type="radio" name="group" id="group1" value="1" /> Tapestry]]>				
-			</assert-output>
-
-			<assert-output name="Struts">
-<![CDATA[<input type="radio" name="group" id="group2" value="2" /> Struts]]>				
-			</assert-output>
-			
-			<assert-output name="WebWork">
-<![CDATA[<input type="radio" name="group" id="group3" value="3" /> WebWork]]>				
-			</assert-output>
-			
-			<assert-output name="Selection">
-Framework: []
-			</assert-output>
-		
-		</request>			
-		
-		<request>
-			<parameter name="service" value="page" />
-      <parameter name="page" value="LanguageSelection" />
-			
-		<assert-output name="Selected Language">
-		Selected Language: []
-		</assert-output>
-		
-		<assert-output name="Java">
-<![CDATA[<input type="radio" name="group" id="group0" value="0" /> Java]]>					
-		</assert-output>
-
-		<assert-output name="C#">
-<![CDATA[<input type="radio" name="group" id="group1" value="1" /> C#]]>					
-		</assert-output>
-			
-		<assert-output name="C#">
-<![CDATA[<input type="radio" name="group" id="group2" value="2" /> Python]]>					
-		</assert-output>			
-		</request>
-		
-		<request>
-			<parameter name="service" value="direct" />
-      <parameter name="session" value="T" />
-      <parameter name="page" value="LanguageSelection" />
-      <parameter name="component" value="form" />      
-			<parameter name="formids" value="group" />
-			<parameter name="group" value="2" />
-			
-
-		<assert-output name="Selected Language">
-		Selected Language: [Language[PYTHON]]
-		</assert-output>
-		
-		<assert-output name="Java">
-<![CDATA[<input type="radio" name="group" id="group0" value="0" /> Java]]>					
-		</assert-output>
-
-		<assert-output name="C#">
-<![CDATA[<input type="radio" name="group" id="group1" value="1" /> C#]]>					
-		</assert-output>
-			
-		<assert-output name="C#">
-<![CDATA[<input type="radio" name="group" id="group2" checked="checked" value="2" /> Python]]>					
-		</assert-output>			
-		</request>
-			
+        </assert-output>
+
+        <assert-output name="Exception Name">
+            org.apache.hivemind.ApplicationRuntimeException
+        </assert-output>
+
+        <assert-output name="Exception Messge">
+            Radio component must be contained within a RadioGroup.
+        </assert-output>
+
+        <assert-output name="Component Id">
+            [NoGroup/orphan]
+        </assert-output>
+    </request>
+
+    <!-- Now some tests to check for handling of null as the current selection of a RadioGroup. -->
+
+    <request>
+        <parameter name="service" value="page" />
+        <parameter name="page" value="NullSelection" />
+
+        <assert-output name="Page Title">
+            <![CDATA[<title>NullSelection</title>]]>
+        </assert-output>
+
+        <assert-output name="No Choice">
+            <![CDATA[<input type="radio" name="group" id="group0" checked="checked" value="0" /> No Choice]]>
+        </assert-output>
+
+        <assert-output name="Tapestry">
+            <![CDATA[<input type="radio" name="group" id="group1" value="1" /> Tapestry]]>
+        </assert-output>
+
+        <assert-output name="Struts">
+            <![CDATA[<input type="radio" name="group" id="group2" value="2" /> Struts]]>
+        </assert-output>
+
+        <assert-output name="WebWork">
+            <![CDATA[<input type="radio" name="group" id="group3" value="3" /> WebWork]]>
+        </assert-output>
+
+        <assert-output name="Selection">
+            Framework: []
+        </assert-output>
+
+    </request>
+
+    <!-- Submit the form. -->
+
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="session" value="T" />
+        <parameter name="page" value="NullSelection" />
+        <parameter name="component" value="$Form" />
+        <parameter name="formids" value="group,r0,r1,r2,r3" />
+        
+        <parameter name="group" value="1" />
+
+        <assert-output name="No Choice">
+            <![CDATA[<input type="radio" name="group" id="group0" value="0" /> No Choice]]>
+        </assert-output>
+
+        <assert-output name="Tapestry">
+            <![CDATA[<input type="radio" name="group" id="group1" checked="checked" value="1" /> Tapestry]]>
+        </assert-output>
+
+        <assert-output name="Struts">
+            <![CDATA[<input type="radio" name="group" id="group2" value="2" /> Struts]]>
+        </assert-output>
+
+        <assert-output name="WebWork">
+            <![CDATA[<input type="radio" name="group" id="group3" value="3" /> WebWork]]>
+        </assert-output>
+
+        <assert-output name="Selection">
+            Framework: [tapestry]
+        </assert-output>
+    </request>
+
+    <!-- Submit the form with *no* selection for group. -->
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="session" value="T" />
+        <parameter name="page" value="NullSelection" />
+        <parameter name="component" value="$Form" />
+        <parameter name="formids" value="group,r0,r1,r2,r3" />
+
+        <assert-output name="No Choice">
+            <![CDATA[<input type="radio" name="group" id="group0" checked="checked" value="0" /> No Choice]]>
+        </assert-output>
+
+        <assert-output name="Tapestry">
+            <![CDATA[<input type="radio" name="group" id="group1" value="1" /> Tapestry]]>
+        </assert-output>
+
+        <assert-output name="Struts">
+            <![CDATA[<input type="radio" name="group" id="group2" value="2" /> Struts]]>
+        </assert-output>
+
+        <assert-output name="WebWork">
+            <![CDATA[<input type="radio" name="group" id="group3" value="3" /> WebWork]]>
+        </assert-output>
+
+        <assert-output name="Selection">
+            Framework: []
+        </assert-output>
+
+    </request>
+
+    <request>
+        <parameter name="service" value="page" />
+        <parameter name="page" value="LanguageSelection" />
+
+        <assert-output name="Selected Language">
+            Selected Language: []
+        </assert-output>
+
+        <assert-output name="Java">
+            <![CDATA[<input type="radio" name="group" id="group0" value="0" /> Java]]>
+        </assert-output>
+
+        <assert-output name="C#">
+            <![CDATA[<input type="radio" name="group" id="group1" value="1" /> C#]]>
+        </assert-output>
+
+        <assert-output name="C#">
+            <![CDATA[<input type="radio" name="group" id="group2" value="2" /> Python]]>
+        </assert-output>
+    </request>
+
+    <request>
+        <parameter name="service" value="direct" />
+        <parameter name="session" value="T" />
+        <parameter name="page" value="LanguageSelection" />
+        <parameter name="component" value="form" />
+        <parameter name="formids" value="group,Radio,Radio_0,Radio_1" />
+        <parameter name="group" value="2" />
+
+
+        <assert-output name="Selected Language">
+            Selected Language: [Language[PYTHON]]
+        </assert-output>
+
+        <assert-output name="Java">
+            <![CDATA[<input type="radio" name="group" id="group0" value="0" /> Java]]>
+        </assert-output>
+
+        <assert-output name="C#">
+            <![CDATA[<input type="radio" name="group" id="group1" value="1" /> C#]]>
+        </assert-output>
+
+        <assert-output name="C#">
+            <![CDATA[<input type="radio" name="group" id="group2" checked="checked" value="2" /> Python]]>
+        </assert-output>
+    </request>
+
 </mock-test>

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/mock/TestMockApplications.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/mock/TestMockApplications.java?rev=614722&r1=614721&r2=614722&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/mock/TestMockApplications.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/junit/mock/TestMockApplications.java Wed Jan 23 14:55:08 2008
@@ -159,7 +159,7 @@
     /**
      * Invoked to execute the request cycle.
      */
-    @Test(dataProvider = "mockTestScripts", enabled = false)
+    @Test(dataProvider = "mockTestScripts", enabled = true)
     public void execute(String testRootDirectory, String path, String fileName)
       throws Exception
     {

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/impl/TestExpressionEvaluator.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/impl/TestExpressionEvaluator.java?rev=614722&r1=614721&r2=614722&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/impl/TestExpressionEvaluator.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/services/impl/TestExpressionEvaluator.java Wed Jan 23 14:55:08 2008
@@ -14,7 +14,9 @@
 
 package org.apache.tapestry.services.impl;
 
+import ognl.OgnlRuntime;
 import ognl.TypeConverter;
+import ognl.enhance.ExpressionCompiler;
 import org.apache.hivemind.ApplicationRuntimeException;
 import org.apache.tapestry.BaseComponentTestCase;
 import org.apache.tapestry.Tapestry;
@@ -22,6 +24,7 @@
 import org.apache.tapestry.services.ExpressionEvaluator;
 import org.apache.tapestry.spec.IApplicationSpecification;
 import static org.easymock.EasyMock.expect;
+import org.testng.annotations.BeforeMethod;
 import org.testng.annotations.Test;
 
 import java.util.Collections;
@@ -38,7 +41,6 @@
 
         ExpressionEvaluatorImpl result = new ExpressionEvaluatorImpl();
         result.setClassFactory(new ClassFactoryImpl());
-
         result.setExpressionCache(cache);
         
         cache.setEvaluator(result);
@@ -46,6 +48,16 @@
         return result;
     }
 
+    // make sure hivemind compiler isn't configured
+    @BeforeMethod
+    public void setup_Ognl()
+    {
+        if (HiveMindExpressionCompiler.class.isInstance(OgnlRuntime.getCompiler()))
+        {
+            OgnlRuntime.setCompiler(new ExpressionCompiler());
+        }
+    }
+
     public static class Fixture
     {
         private String _value;
@@ -83,7 +95,6 @@
     public void test_Read_Fail()
     {
         Fixture f = new Fixture();
-
         ExpressionEvaluator ee = create();
 
         try
@@ -112,7 +123,6 @@
     public void test_Write_Fail()
     {
         Fixture f = new Fixture();
-
         ExpressionEvaluator ee = create();
 
         try