1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.configuration.web;
19
20 import java.util.Enumeration;
21 import java.util.Properties;
22
23 import javax.servlet.Servlet;
24 import javax.servlet.ServletConfig;
25 import javax.servlet.ServletContext;
26 import javax.servlet.http.HttpServlet;
27
28 import org.apache.commons.configuration.AbstractConfiguration;
29 import org.apache.commons.configuration.TestAbstractConfiguration;
30 import org.junit.Test;
31
32 import com.mockobjects.servlet.MockServletConfig;
33 import com.mockobjects.servlet.MockServletContext;
34
35
36
37
38
39
40
41 public class TestServletContextConfiguration extends TestAbstractConfiguration
42 {
43 @Override
44 protected AbstractConfiguration getConfiguration()
45 {
46 final Properties parameters = new Properties();
47 parameters.setProperty("key1", "value1");
48 parameters.setProperty("key2", "value2");
49 parameters.setProperty("list", "value1, value2");
50 parameters.setProperty("listesc", "value1\\,value2");
51
52
53 ServletContext context = new MockServletContext()
54 {
55 @Override
56 public String getInitParameter(String key)
57 {
58 return parameters.getProperty(key);
59 }
60
61 @Override
62 public Enumeration<?> getInitParameterNames()
63 {
64 return parameters.keys();
65 }
66 };
67
68
69 final MockServletConfig config = new MockServletConfig();
70 config.setServletContext(context);
71
72
73 Servlet servlet = new HttpServlet()
74 {
75
76
77
78 private static final long serialVersionUID = 1L;
79
80 @Override
81 public ServletConfig getServletConfig()
82 {
83 return config;
84 }
85 };
86
87 return new ServletContextConfiguration(servlet);
88 }
89
90 @Override
91 protected AbstractConfiguration getEmptyConfiguration()
92 {
93
94 ServletContext context = new MockServletContext()
95 {
96 @Override
97 public Enumeration<?> getInitParameterNames()
98 {
99 return new Properties().keys();
100 }
101 };
102
103 return new ServletContextConfiguration(context);
104 }
105
106 @Override
107 @Test(expected = UnsupportedOperationException.class)
108 public void testAddPropertyDirect()
109 {
110 super.testAddPropertyDirect();
111 }
112
113 @Override
114 @Test(expected = UnsupportedOperationException.class)
115 public void testClearProperty()
116 {
117 super.testClearProperty();
118 }
119 }