Author: ningjiang
Date: Wed Feb 10 09:38:53 2010
New Revision: 908415

URL: http://svn.apache.org/viewvc?rev=908415&view=rev
Log:
CAMEL-2453 added the unit test

Modified:
    
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpConverterTest.java
    
camel/trunk/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/HttpClientRouteTest.java

Modified: 
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpConverterTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpConverterTest.java?rev=908415&r1=908414&r2=908415&view=diff
==============================================================================
--- 
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpConverterTest.java
 (original)
+++ 
camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpConverterTest.java
 Wed Feb 10 09:38:53 2010
@@ -19,8 +19,10 @@
 import java.io.InputStream;
 import javax.servlet.ServletInputStream;
 import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 
 import org.apache.camel.Exchange;
+import org.apache.camel.Message;
 import org.apache.camel.Processor;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.http.HttpConverter;
@@ -37,6 +39,32 @@
     public boolean isUseRouteBuilder() {
         return false;
     }
+    
+    @Test
+    public void testToServletRequestAndResponse() throws Exception {
+        context.addRoutes(new RouteBuilder() {
+            @Override
+            public void configure() throws Exception {
+                from("jetty://http://localhost:9080/test";)
+                        // add this node to make sure the convert can work 
within DefaultMessageImpl
+                        .convertBodyTo(String.class)             
+                        .process(new Processor() {
+                            public void process(Exchange exchange) throws 
Exception {
+                                HttpServletRequest request = 
exchange.getIn(HttpServletRequest.class);
+                                assertNotNull("We should get request object 
here", request);
+                                HttpServletResponse response = 
exchange.getIn(HttpServletResponse.class);
+                                assertNotNull("We should get response object 
here", response);
+                                String s = 
exchange.getIn().getBody(String.class);
+                                assertEquals("Hello World", s);
+                            }
+                        }).transform(constant("Bye World"));
+            }
+        });
+        context.start();
+
+        String out = template.requestBody("http://localhost:9080/test";, "Hello 
World", String.class);
+        assertEquals("Bye World", out);
+    }
 
     @Test
     public void testToServletInputStream() throws Exception {

Modified: 
camel/trunk/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/HttpClientRouteTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/HttpClientRouteTest.java?rev=908415&r1=908414&r2=908415&view=diff
==============================================================================
--- 
camel/trunk/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/HttpClientRouteTest.java
 (original)
+++ 
camel/trunk/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/HttpClientRouteTest.java
 Wed Feb 10 09:38:53 2010
@@ -19,6 +19,9 @@
 
 import java.io.ByteArrayInputStream;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
 import com.meterware.httpunit.PostMethodWebRequest;
 import com.meterware.httpunit.WebRequest;
 import com.meterware.httpunit.WebResponse;
@@ -55,6 +58,16 @@
         client.setExceptionsThrownOnErrorStatus(false);
     }
     
+    @Test
+    public void testHttpConverter() throws Exception {
+        WebRequest req = new PostMethodWebRequest(CONTEXT_URL + 
"/services/testConverter", new ByteArrayInputStream(POST_DATA.getBytes()), 
"text/xml; charset=UTF-8");
+        ServletUnitClient client = newClient();
+        client.setExceptionsThrownOnErrorStatus(false);
+        WebResponse response = client.getResponse(req);        
+        assertEquals("The response message is wrong ", "OK", 
response.getResponseMessage());
+        assertEquals("The response body is wrong", "Bye World", 
response.getText());
+    }
+    
     public static class MyServletRoute extends RouteBuilder {
 
         @Override
@@ -62,7 +75,7 @@
             errorHandler(noErrorHandler());
             // START SNIPPET: route
             from("servlet:///hello?matchOnUriPrefix=true").process(new 
Processor() {
-                public void process(Exchange exchange) throws Exception {
+                public void process(Exchange exchange) throws Exception {      
              
                     String contentType = 
exchange.getIn().getHeader(Exchange.CONTENT_TYPE, String.class);
                     String path = 
exchange.getIn().getHeader(Exchange.HTTP_PATH, String.class);
                     assertEquals("Get a wrong content type", CONTENT_TYPE, 
contentType);
@@ -74,7 +87,21 @@
                 }
             });
             // END SNIPPET: route
-        }
+            
+            from("servlet:///testConverter?matchOnUriPrefix=true")
+                .convertBodyTo(String.class)             
+                .process(new Processor() {
+                    public void process(Exchange exchange) throws Exception {
+                        HttpServletRequest request = 
exchange.getIn(HttpServletRequest.class);
+                        assertNotNull("We should get request object here", 
request);
+                        HttpServletResponse response = 
exchange.getIn(HttpServletResponse.class);
+                        assertNotNull("We should get response object here", 
response);
+                        String s = exchange.getIn().getBody(String.class);
+                        assertEquals("<request> hello world </request>", s);
+                    }
+                }).transform(constant("Bye World"));
+            }
+        
         
     }
 


Reply via email to