View Javadoc

1   package com.philemonworks.selfdiagnose.test;
2   
3   import java.io.IOException;
4   
5   import javax.servlet.ServletException;
6   import javax.servlet.http.HttpServletResponse;
7   
8   import junit.framework.TestCase;
9   
10  import com.philemonworks.selfdiagnose.SelfDiagnose;
11  import com.philemonworks.selfdiagnose.SelfDiagnoseServlet;
12  import com.philemonworks.selfdiagnose.output.HTMLReporter;
13  import com.philemonworks.selfdiagnose.output.XMLReporter;
14  import com.philemonworks.selfdiagnose.test.xtra.MockHttpRequest;
15  import com.philemonworks.selfdiagnose.test.xtra.MockHttpResponse;
16  import com.philemonworks.selfdiagnose.test.xtra.RequestInspectingTask;
17  
18  public class SelfDiagnoseServletTest extends TestCase {
19      MockHttpRequest request;
20      HttpServletResponse response;
21      RequestInspectingTask requestInspectingTask;
22      SelfDiagnoseServlet s;
23  
24      public void setUp() {
25          request = new MockHttpRequest();
26          response = new MockHttpResponse();
27          requestInspectingTask = new RequestInspectingTask();
28          SelfDiagnose.register(requestInspectingTask);
29          s = new SelfDiagnoseServlet();
30      }
31  
32      public void testGetReportXml() {
33          assertEquals(XMLReporter.class, s.getReporter("xml").getClass());
34      }
35  
36      public void testGetReportHtml() {
37          assertEquals(HTMLReporter.class, s.getReporter("html").getClass());
38      }
39  
40      public void testGetReportMissing() {
41          try {
42              s.getReporter("missing");
43              fail("should raise exception");
44          } catch (Exception ex) {
45          }
46      }
47  
48      public void testRun() {
49          try {
50              s.service(request, response);
51          } catch (ServletException e) {
52              // TODO Auto-generated catch block
53              e.printStackTrace();
54          } catch (IOException e) {
55              // TODO Auto-generated catch block
56              e.printStackTrace();
57          }
58          assertEquals(requestInspectingTask.request, request);
59      }
60      
61      public void testReload() {
62          request.parameters.put("reload","true");
63          try {
64              s.service(request, response);
65          } catch (ServletException e) {
66              // TODO Auto-generated catch block
67              e.printStackTrace();
68          } catch (IOException e) {
69              // TODO Auto-generated catch block
70              e.printStackTrace();
71          }
72      }    
73  }