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='bookmarkable/org.apache.wicket.MockPageWithLink?urlEscapeNeeded=someone%27s+%5Eb%25a%26d+pa%22rameter';
} ;return false\"></span></body></html>",
+ response);
+
+ }
}