@@ -61,18 +61,22 @@ public void testLog() throws Exception {
6161 setUpLoggerForTest (SLF4JLog .DEFAULT_EVENT_CATEGORY );
6262 log .onEvent (loggedText );
6363 assertMessageLogged (SLF4JLog .DEFAULT_EVENT_CATEGORY , sessionID , loggedText );
64+ removeLogHandlers (SLF4JLog .DEFAULT_EVENT_CATEGORY );
6465
6566 setUpLoggerForTest (SLF4JLog .DEFAULT_ERROR_EVENT_CATEGORY );
6667 log .onErrorEvent (loggedText );
6768 assertMessageLogged (SLF4JLog .DEFAULT_ERROR_EVENT_CATEGORY , sessionID , loggedText );
68-
69+ removeLogHandlers (SLF4JLog .DEFAULT_ERROR_EVENT_CATEGORY );
70+
6971 setUpLoggerForTest (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
7072 log .onIncoming (loggedText );
7173 assertMessageLogged (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY , sessionID , loggedText );
74+ removeLogHandlers (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
7275
7376 setUpLoggerForTest (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
7477 log .onOutgoing (loggedText );
7578 assertMessageLogged (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY , sessionID , loggedText );
79+ removeLogHandlers (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
7680
7781 settings .setString (sessionID , SLF4JLogFactory .SETTING_EVENT_CATEGORY , "event" );
7882 settings .setString (sessionID , SLF4JLogFactory .SETTING_ERROR_EVENT_CATEGORY , "errorEvent" );
@@ -83,18 +87,22 @@ public void testLog() throws Exception {
8387 setUpLoggerForTest ("event" );
8488 log .onEvent (loggedText );
8589 assertMessageLogged ("event" , sessionID , loggedText );
90+ removeLogHandlers ("event" );
8691
8792 setUpLoggerForTest ("errorEvent" );
8893 log .onErrorEvent (loggedText );
8994 assertMessageLogged ("errorEvent" , sessionID , loggedText );
95+ removeLogHandlers ("errorEvent" );
9096
9197 setUpLoggerForTest ("in" );
9298 log .onIncoming (loggedText );
9399 assertMessageLogged ("in" , sessionID , loggedText );
100+ removeLogHandlers ("in" );
94101
95102 setUpLoggerForTest ("out" );
96103 log .onOutgoing (loggedText );
97104 assertMessageLogged ("out" , sessionID , loggedText );
105+ removeLogHandlers ("out" );
98106 }
99107
100108 @ Test
@@ -112,21 +120,25 @@ public void testLogHeartbeatFiltering() throws Exception {
112120 setUpLoggerForTest (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
113121 log .onIncoming (loggedText );
114122 assertMessageLogged (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY , sessionID , loggedText );
123+ removeLogHandlers (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
115124
116125 setUpLoggerForTest (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
117126 log .onOutgoing (loggedText );
118127 assertMessageLogged (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY , sessionID , loggedText );
128+ removeLogHandlers (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
119129
120130 settings .setBool (sessionID , SLF4JLogFactory .SETTING_LOG_HEARTBEATS , false );
121131 log = (SLF4JLog ) factory .create (sessionID );
122132
123133 setUpLoggerForTest (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
124134 log .onIncoming (loggedText );
125135 assertMessageNotLogged (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
136+ removeLogHandlers (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
126137
127138 setUpLoggerForTest (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
128139 log .onOutgoing (loggedText );
129140 assertMessageNotLogged (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
141+ removeLogHandlers (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
130142 }
131143
132144 @ Test
@@ -145,21 +157,25 @@ public void testLogFilteredByLevel() throws Exception {
145157 getTestHandler (SLF4JLog .DEFAULT_EVENT_CATEGORY ).setLevel (Level .WARNING );
146158 log .onEvent (loggedText );
147159 assertMessageNotLogged (SLF4JLog .DEFAULT_EVENT_CATEGORY );
160+ removeLogHandlers (SLF4JLog .DEFAULT_EVENT_CATEGORY );
148161
149162 setUpLoggerForTest (SLF4JLog .DEFAULT_ERROR_EVENT_CATEGORY );
150163 getTestHandler (SLF4JLog .DEFAULT_ERROR_EVENT_CATEGORY ).setLevel (Level .SEVERE );
151164 log .onErrorEvent (loggedText );
152165 assertMessageNotLogged (SLF4JLog .DEFAULT_EVENT_CATEGORY );
166+ removeLogHandlers (SLF4JLog .DEFAULT_EVENT_CATEGORY );
153167
154168 setUpLoggerForTest (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
155169 getTestHandler (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY ).setLevel (Level .WARNING );
156170 log .onIncoming (loggedText );
157171 assertMessageNotLogged (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
172+ removeLogHandlers (SLF4JLog .DEFAULT_INCOMING_MSG_CATEGORY );
158173
159174 setUpLoggerForTest (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
160175 getTestHandler (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY ).setLevel (Level .WARNING );
161176 log .onOutgoing (loggedText );
162177 assertMessageNotLogged (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
178+ removeLogHandlers (SLF4JLog .DEFAULT_OUTGOING_MSG_CATEGORY );
163179 }
164180
165181 /**
@@ -215,17 +231,25 @@ private TestHandler getTestHandler(String categoryName) {
215231
216232 private TestHandler setUpLoggerForTest (String category ) {
217233 final Logger logger = Logger .getLogger (category );
234+ removeLogHandlers (logger );
235+ final TestHandler testHandler = new TestHandler ();
236+ logger .addHandler (testHandler );
237+ return testHandler ;
238+ }
239+
240+ private void removeLogHandlers (String category ) {
241+ final Logger logger = Logger .getLogger (category );
242+ removeLogHandlers (logger );
243+ }
244+
245+ private void removeLogHandlers (Logger logger ) {
218246 logger .setUseParentHandlers (false );
219247 final Handler [] handlers = logger .getHandlers ();
220248 for (final Handler handler : handlers ) {
221- //System.err.println("Removing unexpected handler: " + handlers[i]);
222249 logger .removeHandler (handler );
223250 }
224- final TestHandler testHandler = new TestHandler ();
225- logger .addHandler (testHandler );
226- return testHandler ;
227251 }
228-
252+
229253 private class TestHandler extends java .util .logging .Handler {
230254 public final ArrayList <LogRecord > records = new ArrayList <>();
231255
0 commit comments