This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch WW-5257-checkbox in repository https://gitbox.apache.org/repos/asf/struts.git
commit 138a8d74f019948d2f39865b04dafbdec4634dce Author: Lukasz Lenart <lukaszlen...@apache.org> AuthorDate: Sat Nov 5 08:32:35 2022 +0100 WW-5257 Cleans up template --- .../main/resources/template/simple/checkbox.ftl | 2 +- .../template/simple/common-attributes.ftl | 4 +- .../src/main/resources/template/xhtml/checkbox.ftl | 5 +-- .../struts2/views/jsp/AbstractUITagTest.java | 44 ++++++++++++---------- .../apache/struts2/views/jsp/ui/CheckboxTest.java | 7 ---- .../apache/struts2/views/jsp/ui/DoubleSelect-5.txt | 2 +- 6 files changed, 30 insertions(+), 34 deletions(-) diff --git a/core/src/main/resources/template/simple/checkbox.ftl b/core/src/main/resources/template/simple/checkbox.ftl index 54507d90a..a344e6d30 100644 --- a/core/src/main/resources/template/simple/checkbox.ftl +++ b/core/src/main/resources/template/simple/checkbox.ftl @@ -45,4 +45,4 @@ disabled="disabled"<#rt/> </#if> /> -</#if> \ No newline at end of file +</#if><#rt/> diff --git a/core/src/main/resources/template/simple/common-attributes.ftl b/core/src/main/resources/template/simple/common-attributes.ftl index d68c0886b..6c821137b 100644 --- a/core/src/main/resources/template/simple/common-attributes.ftl +++ b/core/src/main/resources/template/simple/common-attributes.ftl @@ -19,5 +19,5 @@ */ --> <#if parameters.accesskey?has_content> - accesskey="${parameters.accesskey}" -</#if> \ No newline at end of file + accesskey="${parameters.accesskey}"<#rt/> +</#if><#rt/> diff --git a/core/src/main/resources/template/xhtml/checkbox.ftl b/core/src/main/resources/template/xhtml/checkbox.ftl index 2ec63e0c8..1471a43f1 100644 --- a/core/src/main/resources/template/xhtml/checkbox.ftl +++ b/core/src/main/resources/template/xhtml/checkbox.ftl @@ -106,12 +106,11 @@ ${parameters.label}<#t/> </#if> </td> <td class="tdCheckboxInput"> - <#if (labelPos!"") != 'top'> <#include "/${parameters.templateDir}/simple/checkbox.ftl" /> </#if> <#if (labelPos!"") != 'top' && (labelPos!"") != 'left'> -<#if parameters.label??> <label<#t/> +<#if parameters.label??><label<#rt/> <#if parameters.id??> for="${parameters.id}"<#rt/> </#if> @@ -124,4 +123,4 @@ ${parameters.label}<#t/> </#if> </#if> </#if> - <#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /><#nt/> +<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /><#nt/> diff --git a/core/src/test/java/org/apache/struts2/views/jsp/AbstractUITagTest.java b/core/src/test/java/org/apache/struts2/views/jsp/AbstractUITagTest.java index c0fad07bd..3b0c571fb 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/AbstractUITagTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/AbstractUITagTest.java @@ -19,22 +19,23 @@ package org.apache.struts2.views.jsp; import com.opensymphony.xwork2.ActionContext; -import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.LogManager; import org.apache.commons.beanutils.BeanUtils; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.apache.struts2.ServletActionContext; import org.apache.struts2.dispatcher.mapper.ActionMapper; import org.apache.struts2.dispatcher.mapper.DefaultActionMapper; import org.apache.struts2.views.jsp.ui.AbstractUITag; import java.io.InputStream; -import java.lang.reflect.InvocationTargetException; import java.net.URL; -import java.util.*; - +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.StringTokenizer; -/** - */ public abstract class AbstractUITagTest extends AbstractTagTest { private static final Logger LOG = LogManager.getLogger(AbstractUITagTest.class); @@ -47,7 +48,7 @@ public abstract class AbstractUITagTest extends AbstractTagTest { * * @author <a href="mailto:gie...@it-neering.net">Rene Gielen</a> */ - public class PropertyHolder { + public static class PropertyHolder { String name, value, expectation; public String getName() { @@ -111,18 +112,16 @@ public abstract class AbstractUITagTest extends AbstractTagTest { * subclasses. * * @return A Map of PropertyHolders values bound to {@link org.apache.struts2.views.jsp.AbstractUITagTest.PropertyHolder#getName()} - * as key. + * as key. */ protected Map<String, PropertyHolder> initializedGenericTagTestProperties() { - Map<String, PropertyHolder> result = new HashMap<String, PropertyHolder>(); + Map<String, PropertyHolder> result = new HashMap<>(); new PropertyHolder("name", "someName").addToMap(result); new PropertyHolder("id", "someId").addToMap(result); new PropertyHolder("cssClass", "cssClass1", "class=\"cssClass1\"").addToMap(result); new PropertyHolder("cssStyle", "cssStyle1", "style=\"cssStyle1\"").addToMap(result); new PropertyHolder("title", "someTitle").addToMap(result); new PropertyHolder("disabled", "true", "disabled=\"disabled\"").addToMap(result); - //new PropertyHolder("label", "label", "label=\"label\"").addToMap(result); - //new PropertyHolder("required", "someTitle").addToMap(result); new PropertyHolder("tabindex", "99").addToMap(result); new PropertyHolder("value", "someValue").addToMap(result); new PropertyHolder("onclick", "onclick1").addToMap(result); @@ -155,11 +154,11 @@ public abstract class AbstractUITagTest extends AbstractTagTest { */ public void verifyGenericProperties(AbstractUITag tag, String theme, Map<String, PropertyHolder> propertiesToTest, String[] exclude) throws Exception { if (tag != null && propertiesToTest != null) { - List excludeList; + List<String> excludeList; if (exclude != null) { excludeList = Arrays.asList(exclude); } else { - excludeList = Collections.EMPTY_LIST; + excludeList = Collections.emptyList(); } tag.setPageContext(pageContext); @@ -172,6 +171,9 @@ public abstract class AbstractUITagTest extends AbstractTagTest { BeanUtils.setProperty(tag, propertyHolder.getName(), propertyHolder.getValue()); } } + + tag.setDynamicAttribute(null, "data-id", "id-random"); + tag.doStartTag(); tag.doEndTag(); String writerString = normalize(writer.toString(), true); @@ -184,6 +186,8 @@ public abstract class AbstractUITagTest extends AbstractTagTest { assertTrue("Expected to find: " + propertyHolder.getExpectation() + " in resulting String: " + writerString, writerString.contains(propertyHolder.getExpectation())); } } + + assertTrue(writerString.contains("data-id=\"id-random\"")); } } @@ -227,15 +231,15 @@ public abstract class AbstractUITagTest extends AbstractTagTest { StringBuilder buffer = new StringBuilder(128); try (InputStream in = url.openStream()) { - byte[] buf = new byte[4096]; - int nbytes; + byte[] buf = new byte[4096]; + int nbytes; - while ((nbytes = in.read(buf)) > 0) { - buffer.append(new String(buf, 0, nbytes)); - } + while ((nbytes = in.read(buf)) > 0) { + buffer.append(new String(buf, 0, nbytes)); + } } - /** + /* * compare the trimmed values of each buffer and make sure they're equivalent. however, let's make sure to * normalize the strings first to account for line termination differences between platforms. */ diff --git a/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java b/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java index 7bed748c2..5f35b8acd 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/ui/CheckboxTest.java @@ -23,14 +23,8 @@ import java.util.Map; import org.apache.struts2.TestAction; import org.apache.struts2.views.jsp.AbstractUITagTest; - -/** - */ public class CheckboxTest extends AbstractUITagTest { - public CheckboxTest() { - } - /** * Initialize a map of {@link org.apache.struts2.views.jsp.AbstractUITagTest.PropertyHolder} for generic tag * property testing. Will be used when calling {@link #verifyGenericProperties(org.apache.struts2.views.jsp.ui.AbstractUITag, @@ -472,7 +466,6 @@ public class CheckboxTest extends AbstractUITagTest { // Test value set tag.setSubmitUnchecked("false"); verify(CheckboxTag.class.getResource("Checkbox-7.txt")); - } public void testSubmitUncheckedAsTrue() throws Exception { diff --git a/core/src/test/resources/org/apache/struts2/views/jsp/ui/DoubleSelect-5.txt b/core/src/test/resources/org/apache/struts2/views/jsp/ui/DoubleSelect-5.txt index 247293619..20c5d62d6 100644 --- a/core/src/test/resources/org/apache/struts2/views/jsp/ui/DoubleSelect-5.txt +++ b/core/src/test/resources/org/apache/struts2/views/jsp/ui/DoubleSelect-5.txt @@ -2,7 +2,7 @@ title="someTitle" onclick="onclick1" ondblclick="ondblclick1" onmousedown="onmousedown1" onmouseup="onmouseup1" onmouseover="onmouseover1" onmousemove="onmousemove1" onmouseout="onmouseout1" onfocus="onfocus1" onblur="onblur1" onkeypress="onkeypress1" onkeydown="onkeydown1" onkeyup="onkeyup1" onselect="onchange" - onchange="someIdRedirect(this.selectedIndex)" select-name="firstName"> + onchange="someIdRedirect(this.selectedIndex)" select-name="firstName" data-id="id-random"> <option value="BE">Belgium</option> <option value="FR" selected="selected">France</option> </select>