Author: mgrigorov
Date: Mon May 16 13:55:42 2011
New Revision: 1103739

URL: http://svn.apache.org/viewvc?rev=1103739&view=rev
Log:
WICKET-3721 The Url's query parameters are not properly URL encoded

add a failing test case


Modified:
    
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java

Modified: 
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java?rev=1103739&r1=1103738&r2=1103739&view=diff
==============================================================================
--- 
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
 (original)
+++ 
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/link/BookmarkablePageLinkTest.java
 Mon May 16 13:55:42 2011
@@ -16,8 +16,10 @@
  */
 package org.apache.wicket.markup.html.link;
 
+import org.apache.wicket.MockPageWithLink;
 import org.apache.wicket.WicketTestCase;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.junit.Assert;
 
 /**
  * @author jcompagner
@@ -74,4 +76,21 @@ public class BookmarkablePageLinkTest ex
                tester.startPage(BookmarkableContinueToPage.class);
                assertEquals(tester.getLastRenderedPage().getClass(), 
BookmarkableThrowsInterceptPage.class);
        }
+
+       /**
+        * @see <a 
href="https://issues.apache.org/jira/browse/WICKET-3721";>WICKET-3721</a>
+        */
+       public void bug_testCustomParametersWithSpecialCharacters()
+       {
+               BookmarkablePageLink<MockPageWithLink> link = new 
BookmarkablePageLink<MockPageWithLink>(
+                       "link", MockPageWithLink.class);
+               link.getPageParameters().set("urlEscapeNeeded", "someone's 
^b%a&d pa\"rameter");
+
+               tester.startComponentInPage(link, null);
+               String response = tester.getLastResponse().getDocument();
+               Assert.assertEquals(
+                       "<html><body><span wicket:id=\"link\" onclick=\"var win 
= this.ownerDocument.defaultView || this.ownerDocument.parentWindow; if (win == 
window) { 
window.location.href=&#039;bookmarkable/org.apache.wicket.MockPageWithLink?urlEscapeNeeded=someone%27s+%5Eb%25a%26d+pa%22rameter&#039;;
 } ;return false\"></span></body></html>",
+                       response);
+
+       }
 }


Reply via email to