You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by dd...@apache.org on 2005/03/10 05:04:39 UTC
svn commit: r156738 [3/3] - in portals/pluto/trunk: deploy/
deploy/src/java/org/apache/pluto/driver/deploy/ descriptors/
descriptors/src/conf/org/apache/pluto/descriptors/services/
descriptors/src/conf/org/apache/pluto/descriptors/services/impl/
descriptors/src/java/org/apache/pluto/descriptors/services/impl/ portal/
portal/src/java/org/apache/pluto/portalImpl/ portal/src/webapp/
portal/src/webapp/WEB-INF/ portal/src/webapp/portlets/
portal/src/webapp/portlets/admin/ testsuite/
testsuite/src/java/org/apache/pluto/portalImpl/portlet/
testsuite/src/java/org/apache/pluto/portalImpl/portlet/test/
testsuite/src/webapp/WEB-INF/ testsuite/src/webapp/jsp/
Added: portals/pluto/trunk/testsuite/src/java/org/apache/pluto/portalImpl/portlet/test/SimpleRenderParameterTest.java
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/testsuite/src/java/org/apache/pluto/portalImpl/portlet/test/SimpleRenderParameterTest.java?view=auto&rev=156738
==============================================================================
--- portals/pluto/trunk/testsuite/src/java/org/apache/pluto/portalImpl/portlet/test/SimpleRenderParameterTest.java (added)
+++ portals/pluto/trunk/testsuite/src/java/org/apache/pluto/portalImpl/portlet/test/SimpleRenderParameterTest.java Wed Mar 9 20:04:27 2005
@@ -0,0 +1,148 @@
+/*
+ * Copyright 2003,2004 The Apache Software Foundation.
+ *
+ * Licensed 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.pluto.portalImpl.portlet.test;
+
+import java.util.Map;
+import java.util.HashMap;
+import java.util.Enumeration;
+
+import javax.portlet.PortletRequest;
+
+/**
+ * @author <a href="ddewolf@apache.org">David H. DeWolf</a>
+ */
+public class SimpleRenderParameterTest extends AbstractReflectivePortletTest {
+
+ public static final String KEY = "org.apache.pluto.testsuite.PARAM_TEST_KEY";
+ public static final String VALUE = "org.apache.pluto.testsuite.PARAM_TEST_VALUE";
+
+ private static final String IKEY = "org.apache.pluto.testsuite.PARAM_TEST_KEY_I";
+
+ public String getTestSuiteName() {
+ return "Simple Parameter Test";
+ }
+
+ // Unlike other tests, we DON'T want to include anything but the test id.
+ public Map getRenderParameters(PortletRequest req) {
+ Map map = new HashMap();
+ map.put(IKEY, new String[] {VALUE});
+ return map;
+ }
+
+ protected TestResult checkActionParametersNotHere(PortletRequest req) {
+ TestResult res = new TestResult();
+ res.setName("No Action Parameters Test");
+ res.setDesc("Ensure that parameters sent through the action query stream have NOT made it.");
+
+ String val = req.getParameter(KEY);
+ if(val != null) {
+ res.setReturnCode(TestResult.FAILED);
+ res.setResults("Retrieved action parameter ("+KEY+"="+VALUE+" inappropriately");
+ }
+ else {
+ res.setReturnCode(TestResult.PASSED);
+ }
+ return res;
+ }
+
+
+ protected TestResult checkInternalRenderParameter(PortletRequest req) {
+ TestResult res = new TestResult();
+ res.setName("Render Parameter Test");
+ res.setDesc("Validate the appropriate render parameters");
+
+ String val = req.getParameter(IKEY);
+ if(val == null || !VALUE.equals(val)) {
+ res.setReturnCode(TestResult.FAILED);
+ res.setResults("Expected : "+VALUE+" retrieved "+val);
+ }
+ else {
+ res.setReturnCode(TestResult.PASSED);
+ }
+ return res;
+ }
+
+ protected TestResult checkInternalRenderParameterValues(PortletRequest req) {
+ TestResult res = new TestResult();
+ res.setName("Render Parameter Values Test");
+ res.setDesc("Validate the appropriate render parameter values");
+
+ String[] val = req.getParameterValues(IKEY);
+ if(val == null || val.length<1 || !VALUE.equals(val[0])) {
+ res.setReturnCode(TestResult.FAILED);
+ res.setResults("Expected : "+VALUE+" retrieved "+val);
+ }
+ else {
+ res.setReturnCode(TestResult.PASSED);
+ }
+ return res;
+ }
+
+ protected TestResult checkParameterMap(PortletRequest req) {
+ TestResult res = new TestResult();
+ res.setName("Render Parameter Map Test");
+ res.setName("Check the contents of the render parameter map");
+
+ Map map = req.getParameterMap();
+ String[] val = (String[])map.get(IKEY);
+ if(map.containsKey(KEY) || val==null || val.length < 1 || !VALUE.equals(val[0])) {
+ res.setReturnCode(TestResult.FAILED);
+ if(map.containsKey(KEY)) {
+ res.setResults("Found Action Parameter: "+KEY+"="+map.get(KEY));
+ }
+ if(!map.containsKey(IKEY) || val.length <1 || !VALUE.equals(val[0])) {
+ res.setResults("Render Parameter: "+IKEY+"="+(val.length<1?"null":val[0])+" does not contain the expected value: "+VALUE);
+ }
+ return res;
+ }
+ res.setReturnCode(TestResult.PASSED);
+ return res;
+ }
+
+ protected TestResult checkParameterNames(PortletRequest req) {
+ TestResult res = new TestResult();
+ res.setName("Test Parameter Names Enumeration.");
+ res.setDesc("Enumerate through all expected names.");
+
+ boolean hasExternal = false;
+ boolean hasInternal = false;
+ Enumeration enumerator= req.getParameterNames();
+ while(enumerator.hasMoreElements()) {
+ String val = enumerator.nextElement().toString();
+ if(KEY.equals(val)) {
+ hasExternal = true;
+ }
+ if(IKEY.equals(val)) {
+ hasInternal = true;
+ }
+ }
+ if(!hasInternal || hasExternal) {
+ res.setReturnCode(TestResult.FAILED);
+ StringBuffer sb = new StringBuffer();
+ if(!hasInternal) {
+ sb.append("Render Parameter Not Found. ");
+ }
+ if(!hasExternal) {
+ sb.append("Action Parameter Found. ");
+ }
+ res.setResults(sb.toString());
+ }
+ else {
+ res.setReturnCode(TestResult.PASSED);
+ }
+ return res;
+ }
+}
Modified: portals/pluto/trunk/testsuite/src/webapp/WEB-INF/testsuite-2-config.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/testsuite/src/webapp/WEB-INF/testsuite-2-config.xml?view=diff&r1=156737&r2=156738
==============================================================================
--- portals/pluto/trunk/testsuite/src/webapp/WEB-INF/testsuite-2-config.xml (original)
+++ portals/pluto/trunk/testsuite/src/webapp/WEB-INF/testsuite-2-config.xml Wed Mar 9 20:04:27 2005
@@ -16,11 +16,25 @@
<testportlet-config>
<testsuite-config>
- <name>Simple Parameter Test</name>
- <class>org.apache.pluto.portalImpl.portlet.test.SimpleParameterTest</class>
+ <name>Simple Render Parameter Test</name>
+ <class>org.apache.pluto.portalImpl.portlet.test.SimpleRenderParameterTest</class>
<display-uri>/jsp/test_results.jsp</display-uri>
+ <action-param>
+ <name>org.apache.pluto.testsuite.PARAM_TEST_KEY</name>
+ <value>org.apache.pluto.testsuite.PARAM_TEST_VALUE</value>
+ </action-param>
</testsuite-config>
-
+
+ <testsuite-config>
+ <name>Simple Action Parameter Test</name>
+ <class>org.apache.pluto.portalImpl.portlet.test.SimpleActionParameterTest</class>
+ <display-uri>/jsp/test_results.jsp</display-uri>
+ <action-param>
+ <name>org.apache.pluto.testsuite.PARAM_TEST_KEY</name>
+ <value>org.apache.pluto.testsuite.PARAM_TEST_VALUE</value>
+ </action-param>
+ </testsuite-config>
+
<testsuite-config>
<name>Simple Attribute Test</name>
<class>org.apache.pluto.portalImpl.portlet.test.SimpleAttributeTest</class>
Modified: portals/pluto/trunk/testsuite/src/webapp/WEB-INF/testsuite-config.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/testsuite/src/webapp/WEB-INF/testsuite-config.xml?view=diff&r1=156737&r2=156738
==============================================================================
--- portals/pluto/trunk/testsuite/src/webapp/WEB-INF/testsuite-config.xml (original)
+++ portals/pluto/trunk/testsuite/src/webapp/WEB-INF/testsuite-config.xml Wed Mar 9 20:04:27 2005
@@ -16,11 +16,25 @@
<testportlet-config>
<testsuite-config>
- <name>Simple Parameter Test</name>
- <class>org.apache.pluto.portalImpl.portlet.test.SimpleParameterTest</class>
+ <name>Simple Render Parameter Test</name>
+ <class>org.apache.pluto.portalImpl.portlet.test.SimpleRenderParameterTest</class>
<display-uri>/jsp/test_results.jsp</display-uri>
+ <action-param>
+ <name>org.apache.pluto.testsuite.PARAM_TEST_KEY</name>
+ <value>org.apache.pluto.testsuite.PARAM_TEST_VALUE</value>
+ </action-param>
</testsuite-config>
-
+
+ <testsuite-config>
+ <name>Simple Action Parameter Test</name>
+ <class>org.apache.pluto.portalImpl.portlet.test.SimpleActionParameterTest</class>
+ <display-uri>/jsp/test_results.jsp</display-uri>
+ <action-param>
+ <name>org.apache.pluto.testsuite.PARAM_TEST_KEY</name>
+ <value>org.apache.pluto.testsuite.PARAM_TEST_VALUE</value>
+ </action-param>
+ </testsuite-config>
+
<testsuite-config>
<name>Simple Attribute Test</name>
<class>org.apache.pluto.portalImpl.portlet.test.SimpleAttributeTest</class>
Modified: portals/pluto/trunk/testsuite/src/webapp/jsp/introduction.jsp
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/testsuite/src/webapp/jsp/introduction.jsp?view=diff&r1=156737&r2=156738
==============================================================================
--- portals/pluto/trunk/testsuite/src/webapp/jsp/introduction.jsp (original)
+++ portals/pluto/trunk/testsuite/src/webapp/jsp/introduction.jsp Wed Mar 9 20:04:27 2005
@@ -1,4 +1,5 @@
-<%--
+<%@ page import="java.util.Map"%>
+ <%--
Copyright 2004 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -35,11 +36,16 @@
<TR><TD><c:out value="${test.name}"/></TD>
<portlet:actionURL secure="<%=renderRequest.isSecure()?"True":"False"%>" var="url">
<portlet:param name="testId" value='<%=((javax.servlet.jsp.jstl.core.LoopTagStatus)pageContext.getAttribute("status")).getIndex()+""%>'/>
+ <c:forEach var="param" items="${test.actionParameters}">
+ <%
+ Map.Entry parm = ((Map.Entry)pageContext.findAttribute("param"));
+ %>
+ <portlet:param name="<%=parm.getKey().toString()%>" value="<%=parm.getValue().toString()%>"/>
+ </c:forEach>
</portlet:actionURL>
<TD><A href="<c:out value="${url}"/>">Test</A></TD>
</c:forEach>
</TABLE>
-
</P>
</TD></TR>
</TABLE>
Modified: portals/pluto/trunk/testsuite/src/webapp/jsp/navigation.inc
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/testsuite/src/webapp/jsp/navigation.inc?view=diff&r1=156737&r2=156738
==============================================================================
--- portals/pluto/trunk/testsuite/src/webapp/jsp/navigation.inc (original)
+++ portals/pluto/trunk/testsuite/src/webapp/jsp/navigation.inc Wed Mar 9 20:04:27 2005
@@ -1,4 +1,6 @@
-<%--
+<%@ page import="java.util.Map,
+ org.apache.pluto.portalImpl.portlet.TestConfig"%>
+ <%--
Copyright 2004 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -24,6 +26,12 @@
<TR><TD align="center" nowrap="true">
<portlet:actionURL secure="<%=renderRequest.isSecure()?"True":"False"%>" var="url">
<portlet:param name="nextTestId" value="<%=renderRequest.getParameter("testId") %>"/>
+ <c:forEach var="param" items="${prevTest.actionParameters}">
+ <% Map.Entry parm = ((Map.Entry)pageContext.findAttribute("param")); %>
+ <% System.out.println("parm.key: "+parm.getKey()); %>
+ <% System.out.println("parm.key: "+parm.getValue()); %>
+ <portlet:param name="<%=parm.getKey().toString()%>" value="<%=parm.getValue().toString()%>"/>
+ </c:forEach>
</portlet:actionURL>
<A href="<%=url%>"><IMG SRC="<%=renderResponse.encodeURL(renderRequest.getContextPath() + "/images/previous.png")%>" border="0"></A>
@@ -36,6 +44,11 @@
<portlet:actionURL secure="<%=renderRequest.isSecure()?"True":"False"%>" var="url">
<portlet:param name="previousTestId" value="<%=renderRequest.getParameter("testId")%>"/>
+ <% TestConfig test = (TestConfig)pageContext.findAttribute("nextTest"); %>
+ <c:forEach var="param" items="${nextTest.actionParameters}">
+ <% Map.Entry parm = ((Map.Entry)pageContext.findAttribute("param")); %>
+ <portlet:param name="<%=parm.getKey().toString()%>" value="<%=parm.getValue().toString()%>"/>
+ </c:forEach>
</portlet:actionURL>
<A href="<%=url%>"><IMG SRC="<%=renderResponse.encodeURL(renderRequest.getContextPath() + "/images/next.png")%>" border="0"></A>
Modified: portals/pluto/trunk/testsuite/testsuite.iml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/testsuite/testsuite.iml?view=diff&r1=156737&r2=156738
==============================================================================
--- portals/pluto/trunk/testsuite/testsuite.iml (original)
+++ portals/pluto/trunk/testsuite/testsuite.iml Wed Mar 9 20:04:27 2005
@@ -12,6 +12,11 @@
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="portlet-api-1.0" level="application" />
+ <orderEntry type="library" name="servlet-api-2.3" level="application" />
+ <orderEntry type="library" name="jstl-standard-1.0.4" level="application" />
+ <orderEntry type="library" name="jstl-1.0.2" level="application" />
+ <orderEntry type="library" name="commons-digester-1.5" level="application" />
<orderEntry type="library" name="[portals-pluto] Tomcat" level="application_server_libraries" />
<orderEntryProperties />
</component>
@@ -25,6 +30,22 @@
<setting name="RUN_JASPER_VALIDATION" value="false" />
</component>
<component name="WebModuleProperties">
+ <containerElement type="library" level="application" name="commons-digester-1.5">
+ <attribute name="method" value="1" />
+ <attribute name="URI" value="/WEB-INF/lib" />
+ </containerElement>
+ <containerElement type="library" level="application" name="jstl-1.0.2">
+ <attribute name="method" value="1" />
+ <attribute name="URI" value="/WEB-INF/lib" />
+ </containerElement>
+ <containerElement type="library" level="application" name="jstl-standard-1.0.4">
+ <attribute name="method" value="1" />
+ <attribute name="URI" value="/WEB-INF/lib" />
+ </containerElement>
+ <containerElement type="library" level="application" name="portlet-api-1.0">
+ <attribute name="method" value="1" />
+ <attribute name="URI" value="/WEB-INF/lib" />
+ </containerElement>
<deploymentDescriptor name="web.xml" url="file://$MODULE_DIR$/src/webapp/WEB-INF/web.xml" version="2.3" />
<webroots>
<root url="file://$MODULE_DIR$/src/webapp" relative="/" />