Author: davsclaus
Date: Thu Mar 14 10:10:37 2013
New Revision: 1456381

URL: http://svn.apache.org/r1456381
Log:
Added test based on user forum issue

Added:
    
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java
      - copied, changed from r1456345, 
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeRouteTest.java

Copied: 
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java
 (from r1456345, 
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeRouteTest.java)
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java?p2=camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java&p1=camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeRouteTest.java&r1=1456345&r2=1456381&rev=1456381&view=diff
==============================================================================
--- 
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeRouteTest.java
 (original)
+++ 
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpBridgeEncodedPathTest.java
 Thu Mar 14 10:10:37 2013
@@ -20,30 +20,19 @@ import java.io.ByteArrayInputStream;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
-import org.apache.camel.RuntimeCamelException;
 import org.apache.camel.builder.RouteBuilder;
 import org.junit.Test;
 
-public class HttpBridgeRouteTest extends BaseJettyTest {
+public class HttpBridgeEncodedPathTest extends BaseJettyTest {
 
     private int port1;
     private int port2;
 
     @Test
     public void testHttpClient() throws Exception {
-        String response = template.requestBodyAndHeader("http://localhost:"; + 
port2 + "/test/hello",
-                new ByteArrayInputStream("This is a test".getBytes()), 
"Content-Type", "application/xml", String.class);
-        assertEquals("Get a wrong response", "/", response);
-        
-        response = template.requestBody("http://localhost:"; + port1 + 
"/hello/world", "hello", String.class);
-        assertEquals("Get a wrong response", "/hello/world", response);
-        
-        try {
-            template.requestBody("http://localhost:"; + port2 + "/hello/world", 
"hello", String.class);
-            fail("Expect exception here!");
-        } catch (Exception ex) {
-            assertTrue("We should get a RuntimeCamelException", ex instanceof 
RuntimeCamelException);
-        }
+        String response = template.requestBodyAndHeader("http://localhost:"; + 
port2 + "/test/hello?param1=%2B447777111222",
+                new ByteArrayInputStream("This is a test".getBytes()), 
"Content-Type", "text/plain", String.class);
+        assertEquals("Get a wrong response", "param1=+447777111222", response);
     }
 
     protected RouteBuilder createRouteBuilder() throws Exception {
@@ -56,9 +45,13 @@ public class HttpBridgeRouteTest extends
 
                 Processor serviceProc = new Processor() {
                     public void process(Exchange exchange) throws Exception {
-                        // get the request URL and copy it to the request body
-                        String uri = 
exchange.getIn().getHeader(Exchange.HTTP_URI, String.class);
-                        exchange.getOut().setBody(uri);
+                        // %2B becomes decoded to a space
+                        assertEquals(" 447777111222", 
exchange.getIn().getHeader("param1"));
+                        // and in the http query %20 becomes a + sign
+                        assertEquals("param1=+447777111222", 
exchange.getIn().getHeader(Exchange.HTTP_QUERY));
+
+                        // send back the query
+                        
exchange.getOut().setBody(exchange.getIn().getHeader(Exchange.HTTP_QUERY));
                     }
                 };
                 from("jetty:http://localhost:"; + port2 + "/test/hello")


Reply via email to