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 2008/12/14 10:30:21 UTC

svn commit: r726400 - /wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/form/LocalizedErrorMessageTest.java

Author: jdonnerstag
Date: Sun Dec 14 01:30:20 2008
New Revision: 726400

URL: http://svn.apache.org/viewvc?rev=726400&view=rev
Log:
test case for wicket-1927

Modified:
    wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/form/LocalizedErrorMessageTest.java

Modified: wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/form/LocalizedErrorMessageTest.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/form/LocalizedErrorMessageTest.java?rev=726400&r1=726399&r2=726400&view=diff
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/form/LocalizedErrorMessageTest.java (original)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/form/LocalizedErrorMessageTest.java Sun Dec 14 01:30:20 2008
@@ -64,4 +64,47 @@
 
 		tester.assertErrorMessages(new String[] { "'foo' is not a valid Integer." });
 	}
+
+	/**
+	 * WicketTester.assertErrorMessages returns FeedbackMessages in iso-8859-1 encoding only. Hence
+	 * assertErrorMessage will fail for special characters in languages like e.g. German. Testcase
+	 * for WICKET-1972.
+	 * 
+	 */
+	public void testWICKET_1927()
+	{
+		tester.getApplication().getMarkupSettings().setDefaultMarkupEncoding("UTF-8");
+		tester.setupRequestAndResponse();
+
+		tester.getWicketSession().setLocale(new Locale("de"));
+
+		LocalizedMessagePage page = new LocalizedMessagePage();
+		tester.startPage(page);
+		tester.processRequestCycle();
+		tester.setupRequestAndResponse();
+
+		tester.getServletRequest().setRequestToComponent(page.form);
+		tester.getServletRequest().setParameter(page.integerField.getInputName(), "foo");
+
+		page.form.onFormSubmitted();
+
+		tester.assertErrorMessages(new String[] { "'foo' ist kein gültiger Wert für 'Integer'." });
+		tester.getWicketSession().setLocale(new Locale("pl"));
+
+		tester.getWicketSession().cleanupFeedbackMessages();
+
+		tester.setupRequestAndResponse();
+
+		page = new LocalizedMessagePage();
+		tester.startPage(page);
+		tester.processRequestCycle();
+		tester.setupRequestAndResponse();
+
+		tester.getServletRequest().setRequestToComponent(page.form);
+		tester.getServletRequest().setParameter(page.integerField.getInputName(), "foo");
+
+		page.form.onFormSubmitted();
+
+		tester.assertErrorMessages(new String[] { "'foo' nie jest w\u0142a\u015Bciwym Integer." });
+	}
 }