You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2012/04/10 20:20:26 UTC

svn commit: r1311902 - in /struts/struts2/trunk/core/src/test: java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java resources/org/apache/struts2/views/freemarker/manual-list.ftl resources/struts.xml

Author: lukaszlenart
Date: Tue Apr 10 18:20:25 2012
New Revision: 1311902

URL: http://svn.apache.org/viewvc?rev=1311902&view=rev
Log:
WW-3173 adds additional test case to proof that there is no error

Added:
    struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/manual-list.ftl
      - copied, changed from r1311705, struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/dynaAttributes.ftl
Modified:
    struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java
    struts/struts2/trunk/core/src/test/resources/struts.xml

Modified: struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java?rev=1311902&r1=1311901&r2=1311902&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java (original)
+++ struts/struts2/trunk/core/src/test/java/org/apache/struts2/views/freemarker/FreeMarkerResultTest.java Tue Apr 10 18:20:25 2012
@@ -219,6 +219,48 @@ public class FreeMarkerResultTest extend
         assertEquals(expected, stringWriter.toString());
     }
 
+    public void testManualListInTemplate() throws Exception {
+        FreemarkerManager freemarkerManager = container.getInstance(FreemarkerManager.class);
+        Configuration freemarkerConfig = freemarkerManager.getConfiguration(ServletActionContext.getServletContext());
+        freemarkerConfig.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);
+
+        ServletContext servletContext = EasyMock.createNiceMock(ServletContext.class);
+
+        File file = new File(FreeMarkerResultTest.class.getResource("manual-list.ftl").toURI());
+        EasyMock.expect(servletContext.getRealPath("/tutorial/org/apache/struts2/views/freemarker/manual-list.ftl")).andReturn(file.getAbsolutePath());
+
+        file = new File(ClassLoaderUtil.getResource("template/simple/radiomap.ftl", getClass()).toURI());
+        EasyMock.expect(servletContext.getRealPath("/template/simple/radiomap.ftl")).andReturn(file.getAbsolutePath());
+
+        file = new File(ClassLoaderUtil.getResource("template/simple/css.ftl", getClass()).toURI());
+        EasyMock.expect(servletContext.getRealPath("/template/simple/css.ftl")).andReturn(file.getAbsolutePath());
+
+        file = new File(ClassLoaderUtil.getResource("template/simple/scripting-events.ftl", getClass()).toURI());
+        EasyMock.expect(servletContext.getRealPath("/template/simple/scripting-events.ftl")).andReturn(file.getAbsolutePath());
+
+        file = new File(ClassLoaderUtil.getResource("template/simple/common-attributes.ftl", getClass()).toURI());
+        EasyMock.expect(servletContext.getRealPath("/template/simple/common-attributes.ftl")).andReturn(file.getAbsolutePath());
+
+        file = new File(ClassLoaderUtil.getResource("template/simple/dynamic-attributes.ftl", getClass()).toURI());
+        EasyMock.expect(servletContext.getRealPath("/template/simple/dynamic-attributes.ftl")).andReturn(file.getAbsolutePath());
+
+        EasyMock.expect(servletContext.getAttribute(FreemarkerManager.CONFIG_SERVLET_CONTEXT_KEY)).andReturn(freemarkerConfig).anyTimes();
+        EasyMock.replay(servletContext);
+
+        freemarkerConfig.setServletContextForTemplateLoading(servletContext, null);
+        ServletActionContext.setServletContext(servletContext);
+
+
+        request.setRequestURI("/tutorial/test7.action");
+        Dispatcher dispatcher = Dispatcher.getInstance();
+        ActionMapping mapping = dispatcher.getContainer().getInstance(ActionMapper.class).getMapping(request, dispatcher.getConfigurationManager());
+        dispatcher.serviceAction(request, response, servletContext, mapping);
+        String expected =
+                "<input type=\"radio\" name=\"client\" id=\"client_foo\" value=\"foo\"/><label for=\"client_foo\">foo</label>\n" +
+                "<input type=\"radio\" name=\"client\" id=\"client_bar\" value=\"bar\"/><label for=\"client_bar\">bar</label>\n";
+        assertEquals(expected, stringWriter.toString());
+    }
+
     protected void setUp() throws Exception {
         super.setUp();
         mgr = new FreemarkerManager();

Copied: struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/manual-list.ftl (from r1311705, struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/dynaAttributes.ftl)
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/manual-list.ftl?p2=struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/manual-list.ftl&p1=struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/dynaAttributes.ftl&r1=1311705&r2=1311902&rev=1311902&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/dynaAttributes.ftl (original)
+++ struts/struts2/trunk/core/src/test/resources/org/apache/struts2/views/freemarker/manual-list.ftl Tue Apr 10 18:20:25 2012
@@ -20,5 +20,4 @@
  * under the License.
  */
 -->
-<@s.textfield name="test" dynamicAttributes={"placeholder":"input","foo":"bar"}/>
-<@s.textfield name="test" placeholder="input" foo="bar"/>
\ No newline at end of file
+<@s.radio name="client" id="client_" list='{"foo", "bar"}' />
\ No newline at end of file

Modified: struts/struts2/trunk/core/src/test/resources/struts.xml
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/test/resources/struts.xml?rev=1311902&r1=1311901&r2=1311902&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/test/resources/struts.xml (original)
+++ struts/struts2/trunk/core/src/test/resources/struts.xml Tue Apr 10 18:20:25 2012
@@ -69,6 +69,12 @@
             </result>
         </action>
 
+         <action name="test7" class="com.opensymphony.xwork2.ActionSupport">
+            <result type="freemarker">
+                <param name="location">org/apache/struts2/views/freemarker/manual-list.ftl</param>
+            </result>
+        </action>
+
     </package>
 
     <package name="sitegraph" namespace="/tutorial/sitegraph" extends="struts-default">