KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > codehaus > dna > impl > Log4JLoggerTestCase


1 /*
2  * Copyright (C) The DNA Group. All rights reserved.
3  *
4  * This software is published under the terms of the DNA
5  * Software License version 1.1, a copy of which has been included
6  * with this distribution in the LICENSE.txt file.
7  */

8 package org.codehaus.dna.impl;
9
10 import junit.framework.TestCase;
11 import org.apache.log4j.Appender;
12 import org.apache.log4j.Level;
13 import org.apache.log4j.Logger;
14 import org.codehaus.dna.impl.Log4JLogger;
15
16 public class Log4JLoggerTestCase
17     extends TestCase
18 {
19     public void testLog4JLoggerEmptyCtor()
20         throws Exception JavaDoc
21     {
22         try
23         {
24             new Log4JLogger( null );
25         }
26         catch( NullPointerException JavaDoc npe )
27         {
28             assertEquals( "npe.getMessage()", "logger", npe.getMessage() );
29         }
30     }
31
32     public void testLog4JLoggerGetChildLogger()
33         throws Exception JavaDoc
34     {
35         final MockAppender target = new MockAppender();
36         final Log4JLogger logger = createLogger( target, Level.DEBUG );
37
38         assertNotSame( "logger.getChildLogger == logger",
39                        logger,
40                        logger.getChildLogger( "whatever" ) );
41     }
42
43     public void testLog4JLoggerTraceEnabled()
44         throws Exception JavaDoc
45     {
46         final Level level = Level.DEBUG;
47         final Level type = Level.DEBUG;
48         final String JavaDoc message = "Meep!";
49         final Throwable JavaDoc throwable = null;
50         final boolean output = true;
51
52         final MockAppender target = new MockAppender();
53         final Log4JLogger logger = createLogger( target, level );
54         logger.trace( message );
55         checkLogger( target, output, message, throwable, type );
56     }
57
58     public void testLog4JLoggerTraceDisabled()
59         throws Exception JavaDoc
60     {
61         final Level level = Level.ERROR;
62         final String JavaDoc message = "Meep!";
63
64         final MockAppender target = new MockAppender();
65         final Log4JLogger logger = createLogger( target, level );
66         logger.trace( message );
67         checkLogger( target, false, null, null, null );
68     }
69
70     public void testLog4JLoggerTraceWithExceptionEnabled()
71         throws Exception JavaDoc
72     {
73         final Level level = Level.DEBUG;
74         final Level type = Level.DEBUG;
75         final String JavaDoc message = "Meep!";
76         final Throwable JavaDoc throwable = new Throwable JavaDoc();
77         final boolean output = true;
78
79         final MockAppender target = new MockAppender();
80         final Log4JLogger logger = createLogger( target, level );
81
82         logger.trace( message, throwable );
83         checkLogger( target, output, message, throwable, type );
84     }
85
86     public void testLog4JLoggerTraceWithExceptionDisabled()
87         throws Exception JavaDoc
88     {
89         final Level level = Level.ERROR;
90         final String JavaDoc message = "Meep!";
91         final Throwable JavaDoc throwable = new Throwable JavaDoc();
92
93         final MockAppender target = new MockAppender();
94         final Log4JLogger logger = createLogger( target, level );
95
96         logger.trace( message, throwable );
97         checkLogger( target, false, null, null, null );
98     }
99
100     public void testLog4JLoggerDebugEnabled()
101         throws Exception JavaDoc
102     {
103         final Level level = Level.DEBUG;
104         final Level type = Level.DEBUG;
105         final String JavaDoc message = "Meep!";
106         final Throwable JavaDoc throwable = null;
107         final boolean output = true;
108
109         final MockAppender target = new MockAppender();
110         final Log4JLogger logger = createLogger( target, level );
111         logger.debug( message );
112         checkLogger( target, output, message, throwable, type );
113     }
114
115     public void testLog4JLoggerDebugDisabled()
116         throws Exception JavaDoc
117     {
118         final Level level = Level.ERROR;
119         final String JavaDoc message = "Meep!";
120
121         final MockAppender target = new MockAppender();
122         final Log4JLogger logger = createLogger( target, level );
123         logger.debug( message );
124         checkLogger( target, false, null, null, null );
125     }
126
127     public void testLog4JLoggerDebugWithExceptionEnabled()
128         throws Exception JavaDoc
129     {
130         final Level level = Level.DEBUG;
131         final Level type = Level.DEBUG;
132         final String JavaDoc message = "Meep!";
133         final Throwable JavaDoc throwable = new Throwable JavaDoc();
134         final boolean output = true;
135
136         final MockAppender target = new MockAppender();
137         final Log4JLogger logger = createLogger( target, level );
138         logger.debug( message, throwable );
139         checkLogger( target, output, message, throwable, type );
140     }
141
142     public void testLog4JLoggerDebugWithExceptionDisabled()
143         throws Exception JavaDoc
144     {
145         final Level level = Level.ERROR;
146         final String JavaDoc message = "Meep!";
147         final Throwable JavaDoc throwable = new Throwable JavaDoc();
148
149         final MockAppender target = new MockAppender();
150         final Log4JLogger logger = createLogger( target, level );
151         logger.debug( message, throwable );
152         checkLogger( target, false, null, null, null );
153     }
154
155     public void testLog4JLoggerInfoEnabled()
156         throws Exception JavaDoc
157     {
158         final Level level = Level.DEBUG;
159         final Level type = Level.INFO;
160         final String JavaDoc message = "Meep!";
161         final Throwable JavaDoc throwable = null;
162         final boolean output = true;
163
164         final MockAppender target = new MockAppender();
165         final Log4JLogger logger = createLogger( target, level );
166         logger.info( message );
167         checkLogger( target, output, message, throwable, type );
168     }
169
170     public void testLog4JLoggerInfoDisabled()
171         throws Exception JavaDoc
172     {
173         final Level level = Level.ERROR;
174         final String JavaDoc message = "Meep!";
175
176         final MockAppender target = new MockAppender();
177         final Log4JLogger logger = createLogger( target, level );
178         logger.info( message );
179         checkLogger( target, false, null, null, null );
180     }
181
182     public void testLog4JLoggerInfoWithExceptionEnabled()
183         throws Exception JavaDoc
184     {
185         final Level level = Level.DEBUG;
186         final Level type = Level.INFO;
187         final String JavaDoc message = "Meep!";
188         final Throwable JavaDoc throwable = new Throwable JavaDoc();
189         final boolean output = true;
190
191         final MockAppender target = new MockAppender();
192         final Log4JLogger logger = createLogger( target, level );
193         logger.info( message, throwable );
194         checkLogger( target, output, message, throwable, type );
195     }
196
197     public void testLog4JLoggerInfoWithExceptionDisabled()
198         throws Exception JavaDoc
199     {
200         final Level level = Level.ERROR;
201         final String JavaDoc message = "Meep!";
202         final Throwable JavaDoc throwable = new Throwable JavaDoc();
203
204         final MockAppender target = new MockAppender();
205         final Log4JLogger logger = createLogger( target, level );
206         logger.info( message, throwable );
207         checkLogger( target, false, null, null, null );
208     }
209
210     public void testLog4JLoggerWarnEnabled()
211         throws Exception JavaDoc
212     {
213         final Level level = Level.DEBUG;
214         final Level type = Level.WARN;
215         final String JavaDoc message = "Meep!";
216         final Throwable JavaDoc throwable = null;
217         final boolean output = true;
218
219         final MockAppender target = new MockAppender();
220         final Log4JLogger logger = createLogger( target, level );
221         logger.warn( message );
222         checkLogger( target, output, message, throwable, type );
223     }
224
225     public void testLog4JLoggerWarnDisabled()
226         throws Exception JavaDoc
227     {
228         final Level level = Level.ERROR;
229         final String JavaDoc message = "Meep!";
230
231         final MockAppender target = new MockAppender();
232         final Log4JLogger logger = createLogger( target, level );
233         logger.warn( message );
234         checkLogger( target, false, null, null, null );
235     }
236
237     public void testLog4JLoggerWarnWithExceptionEnabled()
238         throws Exception JavaDoc
239     {
240         final Level level = Level.DEBUG;
241         final Level type = Level.WARN;
242         final String JavaDoc message = "Meep!";
243         final Throwable JavaDoc throwable = new Throwable JavaDoc();
244         final boolean output = true;
245
246         final MockAppender target = new MockAppender();
247         final Log4JLogger logger = createLogger( target, level );
248         logger.warn( message, throwable );
249         checkLogger( target, output, message, throwable, type );
250     }
251
252     public void testLog4JLoggerWarnWithExceptionDisabled()
253         throws Exception JavaDoc
254     {
255         final Level level = Level.ERROR;
256         final String JavaDoc message = "Meep!";
257         final Throwable JavaDoc throwable = new Throwable JavaDoc();
258
259         final MockAppender target = new MockAppender();
260         final Log4JLogger logger = createLogger( target, level );
261         logger.warn( message, throwable );
262         checkLogger( target, false, null, null, null );
263     }
264
265     public void testLog4JLoggerErrorEnabled()
266         throws Exception JavaDoc
267     {
268         final Level level = Level.DEBUG;
269         final Level type = Level.ERROR;
270         final String JavaDoc message = "Meep!";
271         final Throwable JavaDoc throwable = null;
272         final boolean output = true;
273
274         final MockAppender target = new MockAppender();
275         final Log4JLogger logger = createLogger( target, level );
276         logger.error( message );
277         checkLogger( target, output, message, throwable, type );
278     }
279
280     public void testLog4JLoggerErrorWithExceptionEnabled()
281         throws Exception JavaDoc
282     {
283         final Level level = Level.DEBUG;
284         final Level type = Level.ERROR;
285         final String JavaDoc message = "Meep!";
286         final Throwable JavaDoc throwable = new Throwable JavaDoc();
287         final boolean output = true;
288
289         final MockAppender target = new MockAppender();
290         final Log4JLogger logger = createLogger( target, level );
291         logger.error( message, throwable );
292         checkLogger( target, output, message, throwable, type );
293     }
294
295     public void testConsoleLevelComparisonWithDebugEnabled()
296         throws Exception JavaDoc
297     {
298         final MockAppender target = new MockAppender();
299         final Log4JLogger logger = createLogger( target, Level.DEBUG );
300
301         assertEquals( "logger.isTraceEnabled()", true, logger.isTraceEnabled() );
302         assertEquals( "logger.isDebugEnabled()", true, logger.isDebugEnabled() );
303         assertEquals( "logger.isInfoEnabled()", true, logger.isInfoEnabled() );
304         assertEquals( "logger.isWarnEnabled()", true, logger.isWarnEnabled() );
305         assertEquals( "logger.isErrorEnabled()", true, logger.isErrorEnabled() );
306     }
307
308     public void testConsoleLevelComparisonWithInfoEnabled()
309         throws Exception JavaDoc
310     {
311         final MockAppender target = new MockAppender();
312         final Log4JLogger logger = createLogger( target, Level.INFO );
313
314         assertEquals( "logger.isTraceEnabled()", false, logger.isTraceEnabled() );
315         assertEquals( "logger.isDebugEnabled()", false, logger.isDebugEnabled() );
316         assertEquals( "logger.isInfoEnabled()", true, logger.isInfoEnabled() );
317         assertEquals( "logger.isWarnEnabled()", true, logger.isWarnEnabled() );
318         assertEquals( "logger.isErrorEnabled()", true, logger.isErrorEnabled() );
319     }
320
321     public void testConsoleLevelComparisonWithWarnEnabled()
322         throws Exception JavaDoc
323     {
324         final MockAppender target = new MockAppender();
325         final Log4JLogger logger = createLogger( target, Level.WARN );
326
327         assertEquals( "logger.isTraceEnabled()", false, logger.isTraceEnabled() );
328         assertEquals( "logger.isDebugEnabled()", false, logger.isDebugEnabled() );
329         assertEquals( "logger.isInfoEnabled()", false, logger.isInfoEnabled() );
330         assertEquals( "logger.isWarnEnabled()", true, logger.isWarnEnabled() );
331         assertEquals( "logger.isErrorEnabled()", true, logger.isErrorEnabled() );
332     }
333
334     public void testConsoleLevelComparisonWithErrorEnabled()
335         throws Exception JavaDoc
336     {
337         final MockAppender target = new MockAppender();
338         final Log4JLogger logger = createLogger( target, Level.ERROR );
339
340         assertEquals( "logger.isTraceEnabled()", false, logger.isTraceEnabled() );
341         assertEquals( "logger.isDebugEnabled()", false, logger.isDebugEnabled() );
342         assertEquals( "logger.isInfoEnabled()", false, logger.isInfoEnabled() );
343         assertEquals( "logger.isWarnEnabled()", false, logger.isWarnEnabled() );
344         assertEquals( "logger.isErrorEnabled()", true, logger.isErrorEnabled() );
345     }
346
347     private Log4JLogger createLogger( final Appender target,
348                                       final Level priority )
349     {
350         final Logger log4jLogger = Logger.getLogger( "test" );
351         log4jLogger.removeAllAppenders();
352         log4jLogger.addAppender( target );
353         log4jLogger.setLevel( priority );
354         return new Log4JLogger( log4jLogger );
355     }
356
357     private void checkLogger( final MockAppender target,
358                               final boolean output,
359                               final String JavaDoc message,
360                               final Throwable JavaDoc throwable,
361                               final Level priority )
362     {
363         assertEquals( "logger.m_message == message", message, target.m_message );
364         assertEquals( "logger.m_output == output", output, target.m_output );
365         assertEquals( "logger.m_throwable == null", throwable, target.m_throwable );
366         assertEquals( "logger.m_priority == null", priority, target.m_priority );
367     }
368 }
369
Popular Tags