1 4 package org.oddjob.logging; 5 6 import junit.framework.TestCase; 7 8 11 public class LogArchiverCahceTest extends TestCase { 12 13 public class Thing { 14 public String getLogger() { 15 return "thing"; 16 } 17 } 18 19 class MyLL implements LogListener { 20 LogEvent lev; 21 int count; 22 public void logEvent(LogEvent logEvent) { 23 count++; 24 lev = logEvent; 25 } 26 } 27 28 class R implements LogArchiverCache.Resolver { 29 public String loggerFor(Object component) { 30 return LogHelper.getLogger(component); 31 } 32 } 33 34 public void test1() { 36 Thing t = new Thing(); 37 LogArchiverCache lai = new LogArchiverCache(t, new R()); 38 assertEquals(-1, lai.getLastMessageNumber("thing")); 39 40 MyLL ll = new MyLL(); 41 lai.addLogListener(ll, "thing", LogLevel.DEBUG, -1, 2000); 42 assertNull(ll.lev); 43 44 lai.addEvent("thing", LogLevel.DEBUG, "Hello"); 45 assertEquals("Hello", ll.lev.getMessage()); 46 assertEquals(0, ll.lev.getNumber()); 47 } 48 49 public void test2() { 51 Thing t = new Thing(); 52 LogArchiverCache lai = new LogArchiverCache(t, new R()); 53 MyLL ll = new MyLL(); 54 55 lai.addLogListener(ll, "thing", LogLevel.DEBUG, -1, 2000); 57 assertNull(ll.lev); 58 lai.removeLogListener(ll, "thing"); 59 60 lai.addLogListener(ll, "thing", LogLevel.DEBUG, 2, -1); 62 assertNull(ll.lev); 63 lai.removeLogListener(ll, "thing"); 64 } 65 66 public void test3() { 68 Thing t = new Thing(); 69 LogArchiverCache lai = new LogArchiverCache(t, new R()); 70 lai.addEvent("thing", LogLevel.DEBUG, "x"); 71 lai.addEvent("thing", LogLevel.DEBUG, "y"); 72 lai.addEvent("thing", LogLevel.DEBUG, "z"); 73 assertEquals(2, lai.getLastMessageNumber("thing")); 74 75 76 MyLL ll = new MyLL(); 77 lai.addLogListener(ll, "thing", LogLevel.DEBUG, -1, 2); 78 79 assertEquals("z", ll.lev.getMessage()); 80 assertEquals(2, ll.count); 81 assertEquals(2, ll.lev.getNumber()); 82 } 83 84 } 85
| Popular Tags
|