Added public render parameter test
git-svn-id: https://svn.apache.org/repos/asf/portals/pluto/branches/1.1-286-trunk-merge@609511 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/pluto-testsuite/src/main/java/org/apache/pluto/testsuite/test/jsr286/PublicRenderParameterTest.java b/pluto-testsuite/src/main/java/org/apache/pluto/testsuite/test/jsr286/PublicRenderParameterTest.java
new file mode 100644
index 0000000..4d1994b
--- /dev/null
+++ b/pluto-testsuite/src/main/java/org/apache/pluto/testsuite/test/jsr286/PublicRenderParameterTest.java
@@ -0,0 +1,42 @@
+package org.apache.pluto.testsuite.test.jsr286;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.portlet.ActionRequest;
+import javax.portlet.PortletRequest;
+import javax.portlet.PortletResponse;
+
+import org.apache.pluto.testsuite.TestResult;
+import org.apache.pluto.testsuite.TestUtils;
+import org.apache.pluto.testsuite.annotations.DefaultTestPhase;
+import org.apache.pluto.testsuite.test.AbstractReflectivePortletTest;
+
+/**
+ * Testsuite test to test public render parmeters.
+ *
+ *
+ */
+public class PublicRenderParameterTest extends AbstractReflectivePortletTest {
+ public static final String TEST_PARAM = "public-render-param1";
+ public static final String TEST_PARAM2 = "public-render-param2";
+ public static final String TEST_PARAM_VALUE = "Passed";
+
+ public TestResult checkPublicRenderParameter(PortletResponse response) {
+ TestResult result = new TestResult();
+ result.setDescription("Check the 286 Companion Portlet for evidence " +
+ "that this test passed.");
+ result.setSpecPLT("11.1.2");
+ result.setReturnCode(TestResult.WARNING);
+ return result;
+ }
+
+ @Override
+ public Map<String, String[]> getRenderParameters(PortletRequest request) {
+ Map<String, String[]> params = super.getRenderParameters(request);
+ params.put(TEST_PARAM, new String[]{TEST_PARAM_VALUE});
+ params.put(TEST_PARAM2, new String[]{TEST_PARAM_VALUE});
+ return params;
+ }
+
+}
diff --git a/pluto-testsuite/src/main/webapp/WEB-INF/portlet.xml b/pluto-testsuite/src/main/webapp/WEB-INF/portlet.xml
index f5296e4..1f19dc1 100644
--- a/pluto-testsuite/src/main/webapp/WEB-INF/portlet.xml
+++ b/pluto-testsuite/src/main/webapp/WEB-INF/portlet.xml
@@ -206,6 +206,8 @@
<qname xmlns:pluto="http://portals.apache.org/pluto/altns">event-with-qname</qname>
</supported-publishing-event>
+ <supported-public-render-parameter>public-render-param1</supported-public-render-parameter>
+
</portlet>
<portlet>
@@ -239,6 +241,8 @@
<qname xmlns:pluto="http://portals.apache.org/pluto/altns">event-with-qname</qname>
</supported-processing-event>
+ <supported-public-render-parameter>public-render-param1</supported-public-render-parameter>
+
</portlet>
<filter>
@@ -313,4 +317,8 @@
<value-type>java.lang.Integer</value-type>
</event-definition>
+ <public-render-parameter>
+ <identifier>public-render-param1</identifier>
+ </public-render-parameter>
+
</portlet-app>
\ No newline at end of file
diff --git a/pluto-testsuite/src/main/webapp/WEB-INF/testsuite-286-config.xml b/pluto-testsuite/src/main/webapp/WEB-INF/testsuite-286-config.xml
index 96ab815..e08bc20 100644
--- a/pluto-testsuite/src/main/webapp/WEB-INF/testsuite-286-config.xml
+++ b/pluto-testsuite/src/main/webapp/WEB-INF/testsuite-286-config.xml
@@ -53,4 +53,10 @@
<display-uri>/jsp/test_results.jsp</display-uri>
</testsuite-config>
+ <testsuite-config>
+ <name>Public Render Parameter Test</name>
+ <class>org.apache.pluto.testsuite.test.jsr286.PublicRenderParameterTest</class>
+ <display-uri>/jsp/test_results.jsp</display-uri>
+ </testsuite-config>
+
</testportlet-config>
diff --git a/pluto-testsuite/src/main/webapp/jsp/TestCompanionPortlet.jsp b/pluto-testsuite/src/main/webapp/jsp/TestCompanionPortlet.jsp
index e6e2696..06df60f 100644
--- a/pluto-testsuite/src/main/webapp/jsp/TestCompanionPortlet.jsp
+++ b/pluto-testsuite/src/main/webapp/jsp/TestCompanionPortlet.jsp
@@ -28,40 +28,16 @@
It is designed to test interportlet coordination features of version 2.0 of the
Java Portlet API (JSR-286) which include public render parameters and eventing.
</p>
-<%-- FIXME: This code does not work.
- <table border="1">
- <thead>
- <tr>
- <th colspan="2">Public Render Parameters</th>
- </tr>
- <tr>
- <th>Name</th>
- <th>Value(s)</th>
- </tr>
- </thead>
- <tbody>
- <c:choose>
- <c:when test="${empty renderRequest.publicParameterMap}">
- <tr>
- <td>No public render parameters set.</td>
- </tr>
- </c:when>
- <c:otherwise>
- <c:forEach items="${renderRequest.publicParameterMap}" var="param">
- <tr>
- <td><c:out value="${param.key}" /></td>
- <td>
- <c:forEach items="${param.value}" var="val">
- <div><c:out value="${val}" /></div>
- </c:forEach>
- </td>
- </tr>
- </c:forEach>
- </c:otherwise>
- </c:choose>
- </tbody>
- </table>
- --%>
+
+<c:if test="${not empty param['public-render-param1']}">
+ <p>
+ <h4>Public Render Parameter Test Results:</h4>
+ <p>
+ checkPublicRenderParameter test: <b><c:out value="${param['public-render-param1']}"/></b>
+ </p>
+ </p>
+</c:if>
+
<c:if test="${not empty eventInfo}">
<p>
<h4>Information from last event:</h4>