You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by mu...@apache.org on 2008/11/19 19:47:35 UTC
svn commit: r719021 - in /struts/struts2/trunk/core/src:
main/resources/template/simple/ test/java/org/apache/struts2/views/jsp/ui/
test/resources/org/apache/struts2/views/jsp/ui/
Author: musachy
Date: Wed Nov 19 10:47:34 2008
New Revision: 719021
URL: http://svn.apache.org/viewvc?rev=719021&view=rev
Log:
WW-2610 dont set "style" attribute, if there are field errors and cssClass was set. Tests added.
Thanks to Gabriel Belingueres for the patch
Added:
struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/ValidationStylesTest.java
struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-1.txt (with props)
struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-2.txt
struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-3.txt
Modified:
struts/struts2/trunk/core/src/main/resources/template/simple/css.ftl
Modified: struts/struts2/trunk/core/src/main/resources/template/simple/css.ftl
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/template/simple/css.ftl?rev=719021&r1=719020&r2=719021&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/template/simple/css.ftl (original)
+++ struts/struts2/trunk/core/src/main/resources/template/simple/css.ftl Wed Nov 19 10:47:34 2008
@@ -28,7 +28,7 @@
<#elseif !(parameters.cssClass?exists) && (hasFieldErrors && parameters.cssErrorClass?exists)>
class="${parameters.cssErrorClass?html}"<#rt/>
</#if>
-<#if parameters.cssStyle?exists && !(hasFieldErrors && parameters.cssErrorStyle?exists)>
+<#if parameters.cssStyle?exists && !(hasFieldErrors && (parameters.cssErrorStyle?exists || parameters.cssErrorClass?exists))>
style="${parameters.cssStyle?html}"<#rt/>
<#elseif hasFieldErrors && parameters.cssErrorStyle?exists>
style="${parameters.cssErrorStyle?html}"<#rt/>
Added: struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/ValidationStylesTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/ValidationStylesTest.java?rev=719021&view=auto
==============================================================================
--- struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/ValidationStylesTest.java (added)
+++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/jsp/ui/ValidationStylesTest.java Wed Nov 19 10:47:34 2008
@@ -0,0 +1,85 @@
+/*
+ * $Id: User.java 651946 2008-04-27 13:41:38Z apetrelli $
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.struts2.views.jsp.ui;
+
+import org.apache.struts2.TestAction;
+import org.apache.struts2.views.jsp.AbstractUITagTest;
+
+public class ValidationStylesTest extends AbstractUITagTest {
+ private TextFieldTag tag;
+
+ public void testNormalStyle() throws Exception {
+ tag.setCssStyle("style");
+ tag.doStartTag();
+ tag.doEndTag();
+
+ verify(ValidationStylesTest.class.getResource("validationstyles-1.txt"));
+ }
+
+ public void testErrorStyle() throws Exception {
+ tag.setCssErrorStyle("errstyle");
+ tag.doStartTag();
+ tag.doEndTag();
+
+ verify(ValidationStylesTest.class.getResource("validationstyles-2.txt"));
+ }
+
+ public void testErrorClass() throws Exception {
+ tag.setCssErrorClass("errclass");
+ tag.doStartTag();
+ tag.doEndTag();
+
+ verify(ValidationStylesTest.class.getResource("validationstyles-3.txt"));
+ }
+
+ public void testStyleAndErrorStyle() throws Exception {
+ tag.setCssStyle("style");
+ tag.setCssErrorStyle("errstyle");
+ tag.doStartTag();
+ tag.doEndTag();
+
+ verify(ValidationStylesTest.class.getResource("validationstyles-2.txt"));
+ }
+
+ public void testStyleAndErrorClass() throws Exception {
+ tag.setCssStyle("style");
+ tag.setCssErrorClass("errclass");
+ tag.doStartTag();
+ tag.doEndTag();
+
+ verify(ValidationStylesTest.class.getResource("validationstyles-3.txt"));
+ }
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ TestAction testAction = (TestAction) action;
+ tag = new TextFieldTag();
+ tag.setPageContext(pageContext);
+ tag.setId("myId");
+ tag.setLabel("mylabel");
+ tag.setName("foo");
+ tag.setValue("bar");
+ tag.setTitle("mytitle");
+
+ testAction.addFieldError("foo", "bar error message");
+ }
+}
Added: struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-1.txt
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-1.txt?rev=719021&view=auto
==============================================================================
--- struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-1.txt (added)
+++ struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-1.txt Wed Nov 19 10:47:34 2008
@@ -0,0 +1,7 @@
+<tr errorFor="myId">
+ <td align="center" valign="top" colspan="2"><span class="errorMessage">bar error message</span></td>
+</tr>
+<tr>
+ <td class="tdLabel"><label for="myId" class="errorLabel">mylabel:</label></td>
+ <td><input type="text" name="foo" value="bar" id="myId" style="style" title="mytitle"/></td>
+</tr>
Propchange: struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-1.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-1.txt
------------------------------------------------------------------------------
svn:keywords =
Added: struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-2.txt
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-2.txt?rev=719021&view=auto
==============================================================================
--- struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-2.txt (added)
+++ struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-2.txt Wed Nov 19 10:47:34 2008
@@ -0,0 +1,7 @@
+<tr errorFor="myId">
+ <td align="center" valign="top" colspan="2"><span class="errorMessage">bar error message</span></td>
+</tr>
+<tr>
+ <td class="tdLabel"><label for="myId" class="errorLabel">mylabel:</label></td>
+ <td><input type="text" name="foo" value="bar" id="myId" style="errstyle" title="mytitle"/></td>
+</tr>
Added: struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-3.txt
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-3.txt?rev=719021&view=auto
==============================================================================
--- struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-3.txt (added)
+++ struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/jsp/ui/validationstyles-3.txt Wed Nov 19 10:47:34 2008
@@ -0,0 +1,7 @@
+<tr errorFor="myId">
+ <td align="center" valign="top" colspan="2"><span class="errorMessage">bar error message</span></td>
+</tr>
+<tr>
+ <td class="tdLabel"><label for="myId" class="errorLabel">mylabel:</label></td>
+ <td><input type="text" name="foo" value="bar" id="myId" class="errclass" title="mytitle"/></td>
+</tr>