You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jd...@apache.org on 2010/11/28 21:46:19 UTC

svn commit: r1039945 - in /wicket/trunk/wicket/src/test/java/org/apache/wicket: ng/page/ ng/request/ protocol/http/ protocol/http/filter/ protocol/http/servlet/

Author: jdonnerstag
Date: Sun Nov 28 20:46:18 2010
New Revision: 1039945

URL: http://svn.apache.org/viewvc?rev=1039945&view=rev
Log:
WICKET-3015 minor changes


Issue: WICKET-3015

Added:
    wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/
    wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SecuredRemoteAddressRequestWrapperFactoryTest.java
    wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SimplePageExpectedResult.html
    wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/XForwardedRequestWrapperTest.java
      - copied, changed from r1039920, wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/XForwardedRequestWrapperTest.java
Removed:
    wicket/trunk/wicket/src/test/java/org/apache/wicket/ng/page/
    wicket/trunk/wicket/src/test/java/org/apache/wicket/ng/request/
    wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/XForwardedRequestWrapperTest.java
    wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/filter/

Added: wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SecuredRemoteAddressRequestWrapperFactoryTest.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SecuredRemoteAddressRequestWrapperFactoryTest.java?rev=1039945&view=auto
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SecuredRemoteAddressRequestWrapperFactoryTest.java (added)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SecuredRemoteAddressRequestWrapperFactoryTest.java Sun Nov 28 20:46:18 2010
@@ -0,0 +1,51 @@
+/*
+ * 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.wicket.protocol.http.servlet;
+
+import org.apache.wicket.WicketTestCase;
+import org.apache.wicket.protocol.http.mock.MockHttpServletRequest;
+
+/**
+ * 
+ * @author Juergen Donnerstag
+ */
+public class SecuredRemoteAddressRequestWrapperFactoryTest extends WicketTestCase
+{
+	/**
+	 * 
+	 */
+	public void test1()
+	{
+		SecuredRemoteAddressRequestWrapperFactory factory = new SecuredRemoteAddressRequestWrapperFactory();
+		MockHttpServletRequest request = tester.getRequest();
+
+		request.setSecure(true);
+		assertFalse(factory.needsWrapper(request));
+
+		request.setRemoteAddr("111.222.333.444");
+		assertFalse(factory.needsWrapper(request));
+
+		request.setSecure(false);
+		assertTrue(factory.needsWrapper(request));
+
+		request.setRemoteAddr("10.222.333.444");
+		assertFalse(factory.needsWrapper(request));
+
+		request.setRemoteAddr("129.222.333.444");
+		assertTrue(factory.needsWrapper(request));
+	}
+}

Added: wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SimplePageExpectedResult.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SimplePageExpectedResult.html?rev=1039945&view=auto
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SimplePageExpectedResult.html (added)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/SimplePageExpectedResult.html Sun Nov 28 20:46:18 2010
@@ -0,0 +1,23 @@
+<!--
+    ====================================================================
+    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.
+-->
+<html xmlns:wicket>
+<body>
+  <span wicket:id="myLabel">Test Label</span>
+  body<span wicket:id="myLabel2">Test Label2</span>
+  <wicket:panel>Inside the panel<span wicket:id="label">mein Label</span></wicket:panel>
+  <wicket:border>before body - <wicket:body>border</wicket:body> - after body</wicket:border>
+  <span wicket:id="myBorder2" testAttr="myValue"><wicket:border>before body - <wicket:body>border</wicket:body> - after body</wicket:border></span>
+</body>
+</html>

Copied: wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/XForwardedRequestWrapperTest.java (from r1039920, wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/XForwardedRequestWrapperTest.java)
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/XForwardedRequestWrapperTest.java?p2=wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/XForwardedRequestWrapperTest.java&p1=wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/XForwardedRequestWrapperTest.java&r1=1039920&r2=1039945&rev=1039945&view=diff
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/XForwardedRequestWrapperTest.java (original)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/protocol/http/servlet/XForwardedRequestWrapperTest.java Sun Nov 28 20:46:18 2010
@@ -14,13 +14,17 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.wicket.protocol.http;
+package org.apache.wicket.protocol.http.servlet;
 
 import javax.servlet.http.HttpServletRequest;
 
 import org.apache.wicket.WicketTestCase;
+import org.apache.wicket.markup.html.basic.SimplePage;
+import org.apache.wicket.mock.MockApplication;
 import org.apache.wicket.protocol.http.mock.MockHttpServletRequest;
-import org.apache.wicket.protocol.http.servlet.XForwardedRequestWrapperFactory;
+import org.apache.wicket.protocol.http.mock.MockHttpServletResponse;
+import org.apache.wicket.request.http.WebRequest;
+import org.apache.wicket.util.tester.WicketTester;
 
 /**
  * 
@@ -152,4 +156,60 @@ public class XForwardedRequestWrapperTes
 		assertEquals("140.211.11.130", resp.getHeader("x-forwarded-for"));
 		assertEquals("proxy1", resp.getHeader("x-forwarded-by"));
 	}
+
+	private class MyApplication extends MockApplication
+	{
+		public XForwardedRequestWrapperFactory factory;
+
+		/**
+		 * @see org.apache.wicket.protocol.http.WebApplication#init()
+		 */
+		@Override
+		protected void init()
+		{
+			super.init();
+
+			factory = new XForwardedRequestWrapperFactory();
+			factory.init(getWicketFilter().getFilterConfig());
+		}
+
+		/**
+		 * @see org.apache.wicket.protocol.http.WebApplication#newWebRequest(javax.servlet.http.HttpServletRequest,
+		 *      java.lang.String)
+		 */
+		@Override
+		protected WebRequest newWebRequest(HttpServletRequest request, String filterPath)
+		{
+			HttpServletRequest xRequest = factory.getWrapper(request);
+			return super.newWebRequest(xRequest, filterPath);
+		}
+	}
+
+	/**
+	 * @throws Exception
+	 * 
+	 */
+	public void test7() throws Exception
+	{
+		MyApplication app = new MyApplication();
+		tester = new WicketTester(app);
+
+		app.factory.getConfig().setAllowedInternalProxies("192\\.168\\.0\\.10, 192\\.168\\.0\\.11");
+		app.factory.getConfig().setRemoteIPHeader("x-forwarded-for");
+		app.factory.getConfig().setProxiesHeader("x-forwarded-by");
+		app.factory.getConfig().setTrustedProxies("proxy1, proxy2");
+
+		request.setRemoteAddr("192.168.0.10");
+		request.addHeader("x-forwarded-for", "140.211.11.130, untrusted-proxy, proxy1");
+
+		tester.startPage(SimplePage.class);
+		tester.assertRenderedPage(SimplePage.class);
+		tester.assertResultPage(SimplePage.class, "SimplePageExpectedResult.html");
+
+		MockHttpServletResponse resp = tester.getResponse();
+
+		// @TODO should there be any header in the response ????
+		// assertEquals("140.211.11.130", resp.getHeader("x-forwarded-for"));
+		// assertEquals("proxy1", resp.getHeader("x-forwarded-by"));
+	}
 }