1   /**
2    * 
3    */
4   package org.melati.template.test;
5   
6   import java.io.PrintWriter;
7   import java.io.StringWriter;
8   
9   import javax.servlet.http.HttpServletResponse;
10  
11  import org.melati.template.ServletTemplateEngine;
12  
13  import com.mockobjects.dynamic.Mock;
14  import com.mockobjects.dynamic.OrderedMock;
15  
16  
17  /**
18   * @author timp
19   * @since 2007/08/21
20   *
21   */
22  public abstract class ServletTemplateEngineSpec extends TemplateEngineSpec {
23  
24    protected ServletTemplateEngine servletTemplateEngine = null;
25    
26    /**
27     * @param name test name
28     */
29    public ServletTemplateEngineSpec(String name) {
30      super(name);
31    }
32  
33    abstract protected void setServletTemplateEngine();
34    
35    /**
36     * @throws java.lang.Exception
37     */
38    protected void setUp() throws Exception {
39      super.setUp();
40      setTemplateEngine();
41    }
42  
43    /**
44     * @throws java.lang.Exception
45     */
46    protected void tearDown() throws Exception {
47      super.tearDown();
48    }
49  
50    /**
51     * Test method for {@link org.melati.template.ServletTemplateEngine#init(org.melati.MelatiConfig, javax.servlet.http.HttpServlet)}.
52     * @throws Exception 
53     */
54    public void testInitMelatiConfigHttpServlet() throws Exception {
55      
56    }
57  
58    /**
59     * Test method for {@link org.melati.template.ServletTemplateEngine#getServletWriter(javax.servlet.http.HttpServletResponse, boolean)}.
60     */
61    public void testGetServletWriter() throws Exception {
62      Mock mockHttpServletResponse = new OrderedMock(HttpServletResponse.class, "Response with non-default name"); 
63      final StringWriter output = new StringWriter(); 
64      final PrintWriter contentWriter = new PrintWriter(output); 
65             
66      mockHttpServletResponse.expectAndReturn( "getWriter", contentWriter ); 
67      servletTemplateEngine.getServletWriter((HttpServletResponse)mockHttpServletResponse.proxy(), true);
68      mockHttpServletResponse.expectAndReturn( "getWriter", contentWriter ); 
69      servletTemplateEngine.getServletWriter((HttpServletResponse)mockHttpServletResponse.proxy(), false);
70    }
71  
72  
73    /**
74     * Test method for {@link org.melati.template.ServletTemplateEngine#getServletTemplateContext(org.melati.Melati)}.
75     * @throws Exception 
76     */
77    public void testGetServletTemplateContext() throws Exception {
78      
79    }
80  
81  }