Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Wilkins2014-03-21 04:38:11 +0000
committerGreg Wilkins2014-03-21 04:38:11 +0000
commitbbfb5c723771d530a559a17890c19d0f8edfeb08 (patch)
tree18ca47c8f499d5363d32238da61c69125413a7d5
parent18f75011b4de1d19e702fc647f4321a9f70d8334 (diff)
downloadorg.eclipse.jetty.project-bbfb5c723771d530a559a17890c19d0f8edfeb08.tar.gz
org.eclipse.jetty.project-bbfb5c723771d530a559a17890c19d0f8edfeb08.tar.xz
org.eclipse.jetty.project-bbfb5c723771d530a559a17890c19d0f8edfeb08.zip
430649 test form encoding
-rw-r--r--jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java50
1 files changed, 50 insertions, 0 deletions
diff --git a/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java b/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java
index 72e46adec5..09c31823ef 100644
--- a/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java
+++ b/jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java
@@ -55,6 +55,7 @@ import org.eclipse.jetty.server.handler.AbstractHandler;
import org.eclipse.jetty.server.handler.ContextHandler;
import org.eclipse.jetty.util.IO;
import org.eclipse.jetty.util.MultiPartInputStreamParser;
+import org.eclipse.jetty.util.StringUtil;
import org.eclipse.jetty.util.Utf8Appendable;
import org.eclipse.jetty.util.log.Log;
import org.eclipse.jetty.util.log.Logger;
@@ -579,6 +580,55 @@ public class RequestTest
}
@Test
+ public void test8859EncodedForm() throws Exception
+ {
+ _handler._checker = new RequestTester()
+ {
+ @Override
+ public boolean check(HttpServletRequest request,HttpServletResponse response) throws IOException
+ {
+ request.setCharacterEncoding(StringUtil.__ISO_8859_1);
+ return "test\u00e4".equals(request.getParameter("name2"));
+ }
+ };
+
+
+ String content="name1=test&name2=test%E4&name3=&name4=test";
+ String request="POST / HTTP/1.1\r\n"+
+ "Host: whatever\r\n"+
+ "Content-Type: "+MimeTypes.Type.FORM_ENCODED.asString()+"\r\n" +
+ "Content-Length: "+content.length()+"\r\n"+
+ "Connection: close\r\n"+
+ "\r\n"+
+ content;
+ _connector.getResponses(request);
+ }
+
+ @Test
+ public void testUTF8EncodedForm() throws Exception
+ {
+ _handler._checker = new RequestTester()
+ {
+ @Override
+ public boolean check(HttpServletRequest request,HttpServletResponse response) throws IOException
+ {
+ return "test\u00e4".equals(request.getParameter("name2"));
+ }
+ };
+
+ String content="name1=test&name2=test%C4%A4&name3=&name4=test";
+ String request="POST / HTTP/1.1\r\n"+
+ "Host: whatever\r\n"+
+ "Content-Type: "+MimeTypes.Type.FORM_ENCODED.asString()+"\r\n" +
+ "Content-Length: "+content.length()+"\r\n"+
+ "Connection: close\r\n"+
+ "\r\n"+
+ content;
+ _connector.getResponses(request);
+ }
+
+
+ @Test
public void testPartialRead() throws Exception
{
Handler handler = new AbstractHandler()

Back to the top