Author: costin
Date: Tue Mar 25 21:10:10 2008
New Revision: 641135

URL: http://svn.apache.org/viewvc?rev=641135&view=rev
Log:
2 simple tests/examples of starting/embedding tomcat-lite


Added:
    tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/
    
tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteNoConnectorTest.java
   (with props)
    tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteTest.java  
 (with props)

Added: 
tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteNoConnectorTest.java
URL: 
http://svn.apache.org/viewvc/tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteNoConnectorTest.java?rev=641135&view=auto
==============================================================================
--- 
tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteNoConnectorTest.java
 (added)
+++ 
tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteNoConnectorTest.java
 Tue Mar 25 21:10:10 2008
@@ -0,0 +1,68 @@
+/*
+ */
+package org.apache.tomcat.lite;
+
+
+
+import junit.framework.TestCase;
+
+import org.apache.tomcat.servlets.addon.ConfigurableServletContext;
+import org.apache.tomcat.util.buf.ByteChunk;
+
+public class TomcatLiteNoConnectorTest extends TestCase {
+
+  TomcatLite lite = TomcatLite.getServletImpl(); 
+  
+  void initServer() throws Exception {
+    ConfigurableServletContext ctx = 
+      (ConfigurableServletContext) lite.addServletContext(null, null, 
"/test1");
+    
+    ctx.addServlet("test", new SimpleServlet());
+    ctx.addMapping("/1stTest", "test");
+
+    lite.init();
+    lite.start(); 
+  }
+  
+  public void stopServer() {
+    lite.stop();
+  }
+  
+  public void setUp() throws Exception {
+    initServer();
+  }
+  
+  public void tearDown() throws Exception {
+    stopServer();
+  }
+  
+  public void testSimpleRequest() throws Exception {
+    ByteChunk out = new ByteChunk();
+    ServletRequestImpl req = 
+      lite.createMessage("/test1/1stTest", out);
+    
+    // more changes can be made to the req.
+    
+    ServletResponseImpl res = lite.service(req);
+
+    assertEquals("Hello world", out.toString());
+    // Headers are still in the response
+    assertEquals(res.getHeader("Foo"), "Bar");
+    assertEquals(res.getStatus(), 200);
+  }
+
+  public void testPostRequest() throws Exception {
+    ByteChunk out = new ByteChunk();
+    ServletRequestImpl req = 
+      lite.createMessage("/test1/1stTest", out);
+    req.setMethod("POST");
+
+    ServletResponseImpl res = lite.service(req);
+
+    assertEquals("Hello post world", out.toString());
+    // Headers are still in the response
+    assertEquals(res.getHeader("Foo"), "Post");
+    assertEquals(res.getStatus(), 200);
+  }
+  
+}

Propchange: 
tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteNoConnectorTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteTest.java
URL: 
http://svn.apache.org/viewvc/tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteTest.java?rev=641135&view=auto
==============================================================================
--- tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteTest.java 
(added)
+++ tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteTest.java 
Tue Mar 25 21:10:10 2008
@@ -0,0 +1,66 @@
+/*
+ */
+package org.apache.tomcat.lite;
+
+import java.io.BufferedInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.net.URLConnection;
+
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import junit.framework.TestCase;
+
+import org.apache.tomcat.servlets.addon.ConfigurableServletContext;
+
+public class TomcatLiteTest extends TestCase {
+
+  TomcatLite lite = TomcatLite.getServletImpl(); 
+  
+  void initServer() throws Exception {
+    ConfigurableServletContext ctx = 
+      (ConfigurableServletContext) lite.addServletContext(null, null, 
"/test1");
+    
+    ctx.addServlet("test", new SimpleServlet());
+    ctx.addMapping("/1stTest", "test");
+
+    // Ex: change the default 
+    lite.setPort(8804);
+    
+    lite.init();
+    lite.start(); 
+
+    // At this point we can add contexts and inject requests, if we want to 
+    // do it over HTTP need to start the connector as well.
+    lite.startConnector(); 
+  }
+  
+  public void stopServer() {
+    lite.stop();
+  }
+  
+  public void setUp() throws Exception {
+    initServer();
+  }
+  
+  public void tearDown() throws Exception {
+    stopServer();
+  }
+  
+  public void testSimpleRequest() throws Exception {
+    URL url = new URL("http://localhost:8804/test1/1stTest";);
+    URLConnection connection = url.openConnection();
+    connection.connect();
+    InputStream is = connection.getInputStream();
+    BufferedInputStream bis = new BufferedInputStream(is);
+    byte[] buf = new byte[10240];
+    int rd = bis.read(buf);
+    assertTrue(rd > 0);
+    String res = new String(buf, 0, rd);
+    assertEquals("Hello world", res);
+  }
+  
+}

Propchange: 
tomcat/sandbox/tomcat-lite/test/org/apache/tomcat/lite/TomcatLiteTest.java
------------------------------------------------------------------------------
    svn:eol-style = native



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to