1
2
3
4
5
6
7
8 package org.codehaus.dna.impl;
9
10 import java.util.logging.Level;
11
12 import org.codehaus.dna.impl.Jdk14Logger;
13
14 import junit.framework.TestCase;
15
16 public class Jdk14LoggerTestCase
17 extends TestCase
18 {
19 private MockLogger m_mockLogger;
20
21 public void testLogkitLoggerEmptyCtor()
22 throws Exception
23 {
24 try
25 {
26 new Jdk14Logger( null );
27 }
28 catch( NullPointerException npe )
29 {
30 assertEquals( "npe.getMessage()", "logger", npe.getMessage() );
31 }
32 }
33
34 public void testJdk14LoggerGetChildLogger()
35 throws Exception
36 {
37 final Jdk14Logger logger = createLogger( Level.FINE );
38
39 assertNotSame( "logger.getChildLogger == logger",
40 logger,
41 logger.getChildLogger( "whatever" ) );
42 }
43
44 public void testJdk14LoggerTraceEnabled()
45 throws Exception
46 {
47 final Level level = Level.ALL;
48 final Level type = Level.FINEST;
49 final String message = "Meep!";
50 final Throwable throwable = null;
51 final boolean output = true;
52
53 final Jdk14Logger logger = createLogger( level );
54 logger.trace( message );
55 checkLogger( output, message, throwable, type );
56 }
57
58 public void testJdk14LoggerTraceDisabled()
59 throws Exception
60 {
61 final Level level = Level.OFF;
62 final String message = "Meep!";
63
64 final Jdk14Logger logger = createLogger( level );
65 logger.trace( message );
66 checkLogger( false, null, null, null );
67 }
68
69 public void testJdk14LoggerTraceWithExceptionEnabled()
70 throws Exception
71 {
72 final Level level = Level.ALL;
73 final Level type = Level.FINEST;
74 final String message = "Meep!";
75 final Throwable throwable = new Throwable();
76 final boolean output = true;
77
78 final Jdk14Logger logger = createLogger( level );
79
80 logger.trace( message, throwable );
81 checkLogger( output, message, throwable, type );
82 }
83
84 public void testJdk14LoggerTraceWithExceptionDisabled()
85 throws Exception
86 {
87 final Level level = Level.OFF;
88 final String message = "Meep!";
89 final Throwable throwable = new Throwable();
90
91 final Jdk14Logger logger = createLogger( level );
92
93 logger.trace( message, throwable );
94 checkLogger( false, null, null, null );
95 }
96
97 public void testJdk14LoggerDebugEnabled()
98 throws Exception
99 {
100 final Level level = Level.ALL;
101 final Level type = Level.FINE;
102 final String message = "Meep!";
103 final Throwable throwable = null;
104 final boolean output = true;
105
106 final Jdk14Logger logger = createLogger( level );
107 logger.debug( message );
108 checkLogger( output, message, throwable, type );
109 }
110
111 public void testJdk14LoggerDebugDisabled()
112 throws Exception
113 {
114 final Level level = Level.OFF;
115 final String message = "Meep!";
116
117 final Jdk14Logger logger = createLogger( level );
118 logger.debug( message );
119 checkLogger( false, null, null, null );
120 }
121
122 public void testJdk14LoggerDebugWithExceptionEnabled()
123 throws Exception
124 {
125 final Level level = Level.ALL;
126 final Level type = Level.FINE;
127 final String message = "Meep!";
128 final Throwable throwable = new Throwable();
129 final boolean output = true;
130
131 final Jdk14Logger logger = createLogger( level );
132 logger.debug( message, throwable );
133 checkLogger( output, message, throwable, type );
134 }
135
136 public void testJdk14LoggerDebugWithExceptionDisabled()
137 throws Exception
138 {
139 final Level level = Level.OFF;
140 final String message = "Meep!";
141 final Throwable throwable = new Throwable();
142
143 final Jdk14Logger logger = createLogger( level );
144 logger.debug( message, throwable );
145 checkLogger( false, null, null, null );
146 }
147
148 public void testJdk14LoggerInfoEnabled()
149 throws Exception
150 {
151 final Level level = Level.ALL;
152 final Level type = Level.INFO;
153 final String message = "Meep!";
154 final Throwable throwable = null;
155 final boolean output = true;
156
157 final Jdk14Logger logger = createLogger( level );
158 logger.info( message );
159 checkLogger( output, message, throwable, type );
160 }
161
162 public void testJdk14LoggerInfoDisabled()
163 throws Exception
164 {
165 final Level level = Level.OFF;
166 final String message = "Meep!";
167
168 final Jdk14Logger logger = createLogger( level );
169 logger.info( message );
170 checkLogger( false, null, null, null );
171 }
172
173 public void testJdk14LoggerInfoWithExceptionEnabled()
174 throws Exception
175 {
176 final Level level = Level.ALL;
177 final Level type = Level.INFO;
178 final String message = "Meep!";
179 final Throwable throwable = new Throwable();
180 final boolean output = true;
181
182 final Jdk14Logger logger = createLogger( level );
183 logger.info( message, throwable );
184 checkLogger( output, message, throwable, type );
185 }
186
187 public void testJdk14LoggerInfoWithExceptionDisabled()
188 throws Exception
189 {
190 final Level level = Level.OFF;
191 final String message = "Meep!";
192 final Throwable throwable = new Throwable();
193
194 final Jdk14Logger logger = createLogger( level );
195 logger.info( message, throwable );
196 checkLogger( false, null, null, null );
197 }
198
199 public void testJdk14LoggerWarnEnabled()
200 throws Exception
201 {
202 final Level level = Level.ALL;
203 final Level type = Level.WARNING;
204 final String message = "Meep!";
205 final Throwable throwable = null;
206 final boolean output = true;
207
208 final Jdk14Logger logger = createLogger( level );
209 logger.warn( message );
210 checkLogger( output, message, throwable, type );
211 }
212
213 public void testJdk14LoggerWarnDisabled()
214 throws Exception
215 {
216 final Level level = Level.OFF;
217 final String message = "Meep!";
218
219 final Jdk14Logger logger = createLogger( level );
220 logger.warn( message );
221 checkLogger( false, null, null, null );
222 }
223
224 public void testJdk14LoggerWarnWithExceptionEnabled()
225 throws Exception
226 {
227 final Level level = Level.ALL;
228 final Level type = Level.WARNING;
229 final String message = "Meep!";
230 final Throwable throwable = new Throwable();
231 final boolean output = true;
232
233 final Jdk14Logger logger = createLogger( level );
234 logger.warn( message, throwable );
235 checkLogger( output, message, throwable, type );
236 }
237
238 public void testJdk14LoggerWarnWithExceptionDisabled()
239 throws Exception
240 {
241 final Level level = Level.OFF;
242 final String message = "Meep!";
243 final Throwable throwable = new Throwable();
244
245 final Jdk14Logger logger = createLogger( level );
246 logger.warn( message, throwable );
247 checkLogger( false, null, null, null );
248 }
249
250 public void testJdk14LoggerErrorEnabled()
251 throws Exception
252 {
253 final Level level = Level.ALL;
254 final Level type = Level.SEVERE;
255 final String message = "Meep!";
256 final Throwable throwable = null;
257 final boolean output = true;
258
259 final Jdk14Logger logger = createLogger( level );
260 logger.error( message );
261 checkLogger( output, message, throwable, type );
262 }
263
264 public void testJdk14LoggerErrorWithExceptionEnabled()
265 throws Exception
266 {
267 final Level level = Level.ALL;
268 final Level type = Level.SEVERE;
269 final String message = "Meep!";
270 final Throwable throwable = new Throwable();
271 final boolean output = true;
272
273 final Jdk14Logger logger = createLogger( level );
274 logger.error( message, throwable );
275 checkLogger( output, message, throwable, type );
276 }
277
278 public void testConsoleLevelComparisonWithDebugEnabled()
279 throws Exception
280 {
281 final Jdk14Logger logger = createLogger( Level.FINEST );
282
283 assertEquals( "logger.isTraceEnabled()", true, logger.isTraceEnabled() );
284 assertEquals( "logger.isDebugEnabled()", true, logger.isDebugEnabled() );
285 assertEquals( "logger.isInfoEnabled()", true, logger.isInfoEnabled() );
286 assertEquals( "logger.isWarnEnabled()", true, logger.isWarnEnabled() );
287 assertEquals( "logger.isErrorEnabled()", true, logger.isErrorEnabled() );
288 }
289
290 public void testConsoleLevelComparisonWithInfoEnabled()
291 throws Exception
292 {
293 final Jdk14Logger logger = createLogger( Level.INFO );
294
295 assertEquals( "logger.isTraceEnabled()", false, logger.isTraceEnabled() );
296 assertEquals( "logger.isDebugEnabled()", false, logger.isDebugEnabled() );
297 assertEquals( "logger.isInfoEnabled()", true, logger.isInfoEnabled() );
298 assertEquals( "logger.isWarnEnabled()", true, logger.isWarnEnabled() );
299 assertEquals( "logger.isErrorEnabled()", true, logger.isErrorEnabled() );
300 }
301
302 public void testConsoleLevelComparisonWithWarnEnabled()
303 throws Exception
304 {
305 final Jdk14Logger logger = createLogger( Level.WARNING );
306
307 assertEquals( "logger.isTraceEnabled()", false, logger.isTraceEnabled() );
308 assertEquals( "logger.isDebugEnabled()", false, logger.isDebugEnabled() );
309 assertEquals( "logger.isInfoEnabled()", false, logger.isInfoEnabled() );
310 assertEquals( "logger.isWarnEnabled()", true, logger.isWarnEnabled() );
311 assertEquals( "logger.isErrorEnabled()", true, logger.isErrorEnabled() );
312 }
313
314 public void testConsoleLevelComparisonWithErrorEnabled()
315 throws Exception
316 {
317 final Jdk14Logger logger = createLogger( Level.SEVERE );
318
319 assertEquals( "logger.isTraceEnabled()", false, logger.isTraceEnabled() );
320 assertEquals( "logger.isDebugEnabled()", false, logger.isDebugEnabled() );
321 assertEquals( "logger.isInfoEnabled()", false, logger.isInfoEnabled() );
322 assertEquals( "logger.isWarnEnabled()", false, logger.isWarnEnabled() );
323 assertEquals( "logger.isErrorEnabled()", true, logger.isErrorEnabled() );
324 }
325
326 private Jdk14Logger createLogger( final Level priority )
327 {
328 m_mockLogger = new MockLogger( priority );
329 return new Jdk14Logger( m_mockLogger );
330 }
331
332 private void checkLogger( final boolean output,
333 final String message,
334 final Throwable throwable,
335 final Level priority )
336 {
337 assertEquals( "logger.m_message == message", message, m_mockLogger.m_message );
338 assertEquals( "logger.m_output == output", output, m_mockLogger.m_output );
339 assertEquals( "logger.m_throwable == null", throwable, m_mockLogger.m_throwable );
340 assertEquals( "logger.m_priority == null", priority, m_mockLogger.m_priority );
341 }
342 }