1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package javax.faces.application;
21
22 import junit.framework.TestCase;
23
24 import javax.faces.application.FacesMessage.Severity;
25 import java.io.ByteArrayInputStream;
26 import java.io.ByteArrayOutputStream;
27 import java.io.ObjectInputStream;
28 import java.io.ObjectOutputStream;
29 import java.util.Map;
30
31 public class FacesMessageTest extends TestCase
32 {
33
34 public static void main(String[] args)
35 {
36 junit.textui.TestRunner.run(FacesMessageTest.class);
37 }
38
39 public FacesMessageTest(String name)
40 {
41 super(name);
42 }
43
44 @Override
45 protected void setUp() throws Exception
46 {
47 super.setUp();
48 }
49
50 @Override
51 protected void tearDown() throws Exception
52 {
53 super.tearDown();
54 }
55
56
57
58
59 public void testFacesMessage()
60 {
61 FacesMessage msg = new FacesMessage();
62 assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
63 assertNull(msg.getSummary());
64 assertNull(msg.getDetail());
65 }
66
67
68
69
70 public void testFacesMessageString()
71 {
72 String summary = "summary";
73 FacesMessage msg = new FacesMessage(summary);
74 assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
75 assertEquals(msg.getSummary(), summary);
76 assertEquals(msg.getDetail(), summary);
77 }
78
79
80
81
82 public void testFacesMessageStringString()
83 {
84 String summary = "summary";
85 String detail = "detail";
86 FacesMessage msg = new FacesMessage(summary, detail);
87 assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
88 assertEquals(msg.getSummary(), summary);
89 assertEquals(msg.getDetail(), detail);
90 }
91
92
93
94
95 public void testFacesMessageSeverityStringString()
96 {
97 String summary = "summary";
98 String detail = "detail";
99 FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_ERROR, summary, detail);
100 assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_ERROR);
101 assertEquals(msg.getSummary(), summary);
102 assertEquals(msg.getDetail(), detail);
103 }
104
105
106
107
108 public void testFacesMessageNullSeverityStringString()
109 {
110 String summary = "summary";
111 String detail = "detail";
112 try
113 {
114 new FacesMessage(null, summary, detail);
115 fail("Should have thrown an exception");
116 }
117 catch (NullPointerException e)
118 {
119 }
120 }
121
122
123
124
125 public void testSetSeverity()
126 {
127 FacesMessage msg = new FacesMessage();
128 assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
129 msg.setSeverity(FacesMessage.SEVERITY_FATAL);
130 assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_FATAL);
131 }
132
133
134
135
136 public void testSetNullSeverity()
137 {
138 FacesMessage msg = new FacesMessage();
139 try
140 {
141 msg.setSeverity(null);
142 fail("Should have thrown an exception");
143 }
144 catch (NullPointerException e)
145 {
146 }
147 }
148
149
150
151
152 public void testSetSummary()
153 {
154 FacesMessage msg = new FacesMessage();
155 String summary = "summary";
156 msg.setSummary(summary);
157 assertEquals(msg.getSummary(), summary);
158 assertEquals(msg.getDetail(), summary);
159 }
160
161
162
163
164 public void testSetDetail()
165 {
166 FacesMessage msg = new FacesMessage();
167 String detail = "detail";
168 msg.setDetail(detail);
169 assertEquals(msg.getSummary(), null);
170 assertEquals(msg.getDetail(), detail);
171 }
172
173 public void testSeverityOrdering()
174 {
175
176 assertTrue(0 > FacesMessage.SEVERITY_INFO.compareTo(FacesMessage.SEVERITY_WARN));
177 assertTrue(0 > FacesMessage.SEVERITY_WARN.compareTo(FacesMessage.SEVERITY_ERROR));
178 assertTrue(0 > FacesMessage.SEVERITY_ERROR.compareTo(FacesMessage.SEVERITY_FATAL));
179
180 assertTrue(0 < FacesMessage.SEVERITY_FATAL.compareTo(FacesMessage.SEVERITY_ERROR));
181 assertTrue(0 < FacesMessage.SEVERITY_ERROR.compareTo(FacesMessage.SEVERITY_WARN));
182 assertTrue(0 < FacesMessage.SEVERITY_WARN.compareTo(FacesMessage.SEVERITY_INFO));
183 }
184
185 public void testSeverityEquality()
186 {
187
188 assertEquals(0, FacesMessage.SEVERITY_INFO.compareTo(FacesMessage.SEVERITY_INFO));
189 assertEquals(0, FacesMessage.SEVERITY_WARN.compareTo(FacesMessage.SEVERITY_WARN));
190 assertEquals(0, FacesMessage.SEVERITY_ERROR.compareTo(FacesMessage.SEVERITY_ERROR));
191 assertEquals(0, FacesMessage.SEVERITY_FATAL.compareTo(FacesMessage.SEVERITY_FATAL));
192 }
193
194 public void testSeverityValues()
195 {
196
197 for (int i = 0, sz = FacesMessage.VALUES.size(); i < sz; i++)
198 {
199 FacesMessage.Severity severity = (Severity) FacesMessage.VALUES.get(i);
200 assertEquals(i + 1, severity.getOrdinal());
201 }
202 }
203
204 @SuppressWarnings("unchecked")
205 public void testSeverityValuesMap()
206 {
207 Map<String, FacesMessage.Severity> severityMap = (Map<String, FacesMessage.Severity>) FacesMessage.VALUES_MAP;
208
209 for (Map.Entry<String, FacesMessage.Severity> e : severityMap.entrySet())
210 {
211 assertEquals(e.getKey(), e.getValue().toString());
212 }
213 }
214
215 public void testSerialization() throws Exception
216 {
217 final String summary = "summary";
218 final String detail = "detail";
219 FacesMessage msg = new FacesMessage(summary, detail);
220
221
222 assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
223 assertEquals(msg.getSummary(), summary);
224 assertEquals(msg.getDetail(), detail);
225
226
227 ByteArrayOutputStream baos = new ByteArrayOutputStream();
228 ObjectOutputStream out = new ObjectOutputStream(baos);
229 out.writeObject(msg);
230 out.close();
231
232
233 ObjectInputStream in = new ObjectInputStream(new ByteArrayInputStream(baos.toByteArray()));
234 FacesMessage deserialized = (FacesMessage) in.readObject();
235
236
237 assertSame(msg.getSeverity(), deserialized.getSeverity());
238 assertEquals(msg.getSummary(), deserialized.getSummary());
239 assertEquals(msg.getDetail(), deserialized.getDetail());
240 }
241
242 }