KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > nanocontainer > webcontainer > DependencyInjectionServletWarFileTestCase


1 package org.nanocontainer.webcontainer;
2
3 import java.io.IOException JavaDoc;
4 import java.io.File JavaDoc;
5 import java.net.URL JavaDoc;
6
7 import junit.framework.TestCase;
8
9 import org.mortbay.jetty.webapp.WebAppContext;
10 import org.mortbay.util.IO;
11 import org.picocontainer.defaults.DefaultPicoContainer;
12
13 public class DependencyInjectionServletWarFileTestCase extends TestCase {
14
15     PicoJettyServer server;
16     protected void tearDown() throws Exception JavaDoc {
17         if (server != null) {
18             server.stop();
19         }
20         Thread.sleep(1 * 1000);
21     }
22
23     public void testCanInstantiateWebContainerContextAndServlet()
24             throws InterruptedException JavaDoc, IOException JavaDoc {
25
26         File JavaDoc testWar = TestHelper.getTestWarFile();
27
28         final DefaultPicoContainer parentContainer = new DefaultPicoContainer();
29         parentContainer.registerComponentInstance(String JavaDoc.class, "Fred");
30         StringBuffer JavaDoc sb = new StringBuffer JavaDoc();
31         parentContainer.registerComponentInstance(StringBuffer JavaDoc.class, sb);
32         parentContainer.registerComponentInstance(Integer JavaDoc.class, new Integer JavaDoc(5));
33
34         server = new PicoJettyServer("localhost", 8080, parentContainer);
35         WebAppContext wac = server.addWebApplication("/bar", testWar.getAbsolutePath().replace('\\','/'));
36         assertNotNull(wac);
37
38         server.start();
39
40         Thread.sleep(2 * 1000);
41
42         URL JavaDoc url = new URL JavaDoc("http://localhost:8080/bar/foo");
43         assertEquals("hello Fred bar", IO.toString(url.openStream()));
44
45         assertEquals("-contextInitialized", sb.toString());
46
47     }
48
49     public void testCanHostJspPage()
50             throws InterruptedException JavaDoc, IOException JavaDoc {
51
52         File JavaDoc testWar = TestHelper.getTestWarFile();
53
54         final DefaultPicoContainer parentContainer = new DefaultPicoContainer();
55         parentContainer.registerComponentInstance(String JavaDoc.class, "Fred");
56         parentContainer.registerComponentInstance(StringBuffer JavaDoc.class, new StringBuffer JavaDoc());
57         parentContainer.registerComponentInstance(Integer JavaDoc.class, new Integer JavaDoc(5));
58
59         server = new PicoJettyServer("localhost", 8080, parentContainer);
60         WebAppContext wac = server.addWebApplication("/bar", testWar.getAbsolutePath().replace('\\','/'));
61         assertNotNull(wac);
62
63         server.start();
64
65         Thread.sleep(2 * 1000);
66
67         URL JavaDoc url = new URL JavaDoc("http://localhost:8080/bar/test.jsp");
68         assertEquals("<HTML>\n" +
69                 " <HEAD>\n" +
70                 " <TITLE>Test JSP</TITLE>\n" +
71                 " </HEAD>\n" +
72                 " <BODY>\n" +
73                 " hello\n" +
74                 " </BODY>\n" +
75                 "</HTML>", IO.toString(url.openStream()));
76
77
78     }
79
80
81 }
82
Popular Tags