1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 package org.slf4j.reload4j;
26
27 import static org.junit.Assert.assertNotNull;
28
29 import java.util.List;
30
31 import org.apache.log4j.LogManager;
32 import org.apache.log4j.spi.LoggingEvent;
33 import org.junit.After;
34 import org.junit.Before;
35 import org.slf4j.reload4j.testHarness.RecursiveAppender;
36
37 public class Reload4jMultithreadedInitializationTest extends org.slf4j.testHarness.MultithreadedInitializationTest {
38 static int NUM_LINES_BY_RECURSIVE_APPENDER = 3;
39
40
41 static String CONFIG_FILE_KEY = "log4j.configuration";
42 final String loggerName = this.getClass().getName();
43
44 @Before
45 public void setup() {
46 System.setProperty(CONFIG_FILE_KEY, "recursiveInitWithActivationDelay.properties");
47 System.out.println("THREAD_COUNT=" + THREAD_COUNT);
48 }
49
50 @After
51 public void tearDown() throws Exception {
52 System.clearProperty(CONFIG_FILE_KEY);
53 }
54
55 protected long getRecordedEventCount() {
56 List<LoggingEvent> eventList = getRecordedEvents();
57 assertNotNull(eventList);
58 return eventList.size();
59 }
60
61 protected int extraLogEvents() {
62 return NUM_LINES_BY_RECURSIVE_APPENDER;
63 }
64
65 private List<LoggingEvent> getRecordedEvents() {
66 org.apache.log4j.Logger root = LogManager.getRootLogger();
67 RecursiveAppender ra = (RecursiveAppender) root.getAppender("RECURSIVE");
68 assertNotNull(ra);
69 return ra.events;
70 }
71
72 }