1 package com.atlassian.plugins.codegen.modules.common.servlet;
2
3 import com.atlassian.plugins.codegen.AbstractModuleCreatorTestCase;
4
5 import org.junit.Before;
6 import org.junit.Test;
7
8 import static junit.framework.Assert.assertEquals;
9
10
11
12
13 public class ServletCodegenTest extends AbstractModuleCreatorTestCase<ServletProperties>
14 {
15 public ServletCodegenTest()
16 {
17 super("servlet", new ServletModuleCreator());
18 }
19
20 @Before
21 public void setupProps() throws Exception
22 {
23 setProps(new ServletProperties(PACKAGE_NAME + ".MyServlet"));
24 props.setUrlPattern("/myservlet");
25 props.setIncludeExamples(false);
26 props.addInitParam("foo", "bar");
27 }
28
29 @Test
30 public void classFileIsGenerated() throws Exception
31 {
32 getSourceFile(PACKAGE_NAME, "MyServlet");
33 }
34
35 @Test
36 public void unitTestFileIsGenerated() throws Exception
37 {
38 getTestSourceFile(PACKAGE_NAME, "MyServletTest");
39 }
40
41 @Test
42 public void functionalTestFileIsGenerated() throws Exception
43 {
44 getTestSourceFile(FUNC_TEST_PACKAGE_NAME, "MyServletFuncTest");
45 }
46
47 @Test
48 public void moduleHasDefaultKey() throws Exception
49 {
50 assertEquals("my-servlet", getGeneratedModule().attributeValue("key"));
51 }
52
53 @Test
54 public void moduleHasClass() throws Exception
55 {
56 assertEquals(PACKAGE_NAME + ".MyServlet", getGeneratedModule().attributeValue("class"));
57 }
58
59 @Test
60 public void moduleHasUrlPattern() throws Exception
61 {
62 assertEquals("/myservlet", getGeneratedModule().selectSingleNode("url-pattern").getText());
63 }
64
65 @Test
66 public void moduleHasInitParamName() throws Exception
67 {
68 assertEquals("foo", getGeneratedModule().selectSingleNode("init-param/param-name").getText());
69 }
70
71 @Test
72 public void moduleHasInitParamValue() throws Exception
73 {
74 assertEquals("bar", getGeneratedModule().selectSingleNode("init-param/param-value").getText());
75 }
76 }