@@ -120,46 +120,38 @@ public void testConstructor() {
120120
121121 @ Test
122122 public void testStartAndShutdown () throws Exception {
123- // Create a spy to verify the internal fileWatchService methods are called
124123 TlsCertificateManager managerSpy = spy (manager );
125124
126- // Get access to the internal fileWatchService
127125 Field watchServiceField = TlsCertificateManager .class .getDeclaredField ("fileWatchService" );
128126 watchServiceField .setAccessible (true );
129127 FileWatchService watchService = (FileWatchService ) watchServiceField .get (managerSpy );
130128 FileWatchService watchServiceSpy = spy (watchService );
131129 watchServiceField .set (managerSpy , watchServiceSpy );
132130
133- // Test start method
134131 managerSpy .start ();
135132 verify (watchServiceSpy ).start ();
136133
137- // Test shutdown method
138134 managerSpy .shutdown ();
139135 verify (watchServiceSpy ).shutdown ();
140136 }
141137
142138 @ Test
143139 public void testRegisterAndUnregisterListener () {
144- // Test registering a listener
145140 manager .registerReloadListener (listener1 );
146141
147142 List <TlsCertificateManager .TlsContextReloadListener > listeners = manager .getReloadListeners ();
148143 assertEquals (1 , listeners .size ());
149144 assertTrue (listeners .contains (listener1 ));
150145
151- // Test registering another listener
152146 manager .registerReloadListener (listener2 );
153147 assertEquals (2 , listeners .size ());
154148 assertTrue (listeners .contains (listener2 ));
155149
156- // Test unregistering a listener
157150 manager .unregisterReloadListener (listener1 );
158151 assertEquals (1 , listeners .size ());
159152 assertFalse (listeners .contains (listener1 ));
160153 assertTrue (listeners .contains (listener2 ));
161154
162- // Test handling null listeners
163155 manager .registerReloadListener (null );
164156 assertEquals (1 , listeners .size ()); // Should remain unchanged
165157
@@ -169,123 +161,95 @@ public void testRegisterAndUnregisterListener() {
169161
170162 @ Test
171163 public void testFileChangeNotification_CertOnly () throws Exception {
172- // Setup test
173164 manager .registerReloadListener (listener1 );
174165
175- // Trigger cert file change only
176166 fileWatchListener .onChanged (certFile .getAbsolutePath ());
177167
178- // Verify listener not called yet
179168 verify (listener1 , never ()).onTlsContextReload ();
180169 }
181170
182171 @ Test
183172 public void testFileChangeNotification_KeyOnly () throws Exception {
184- // Setup test
185173 manager .registerReloadListener (listener1 );
186174
187- // Trigger key file change only
188175 fileWatchListener .onChanged (keyFile .getAbsolutePath ());
189176
190- // Verify listener not called yet
191177 verify (listener1 , never ()).onTlsContextReload ();
192178 }
193179
194180 @ Test
195181 public void testFileChangeNotification_BothFiles () throws Exception {
196- // Setup test
197182 manager .registerReloadListener (listener1 );
198183
199- // Trigger both file changes
200184 fileWatchListener .onChanged (certFile .getAbsolutePath ());
201185 fileWatchListener .onChanged (keyFile .getAbsolutePath ());
202186
203- // Verify listener is called
204187 verify (listener1 , times (1 )).onTlsContextReload ();
205188 }
206189
207190 @ Test
208191 public void testFileChangeNotification_MultipleListeners () throws Exception {
209- // Setup test
210192 manager .registerReloadListener (listener1 );
211193 manager .registerReloadListener (listener2 );
212194
213- // Trigger both file changes
214195 fileWatchListener .onChanged (certFile .getAbsolutePath ());
215196 fileWatchListener .onChanged (keyFile .getAbsolutePath ());
216197
217- // Verify both listeners are called
218198 verify (listener1 , times (1 )).onTlsContextReload ();
219199 verify (listener2 , times (1 )).onTlsContextReload ();
220200 }
221201
222202 @ Test
223203 public void testFileChangeNotification_BothFilesReverseOrder () throws Exception {
224- // Setup test
225204 manager .registerReloadListener (listener1 );
226205
227- // Trigger both file changes in reverse order
228206 fileWatchListener .onChanged (keyFile .getAbsolutePath ());
229207 fileWatchListener .onChanged (certFile .getAbsolutePath ());
230208
231- // Verify listener is called
232209 verify (listener1 , times (1 )).onTlsContextReload ();
233210 }
234211
235212 @ Test
236213 public void testFileChangeNotification_RepeatedChanges () throws Exception {
237- // Setup test
238214 manager .registerReloadListener (listener1 );
239215
240- // First batch of changes
241216 fileWatchListener .onChanged (certFile .getAbsolutePath ());
242217 fileWatchListener .onChanged (keyFile .getAbsolutePath ());
243218
244- // Verify listener is called once
245219 verify (listener1 , times (1 )).onTlsContextReload ();
246220
247- // Second batch of changes
248221 fileWatchListener .onChanged (certFile .getAbsolutePath ());
249222 fileWatchListener .onChanged (keyFile .getAbsolutePath ());
250223
251- // Verify listener is called again (total twice)
252224 verify (listener1 , times (2 )).onTlsContextReload ();
253225 }
254226
255227 @ Test
256228 public void testFileChangeNotification_UnknownFile () throws Exception {
257- // Setup test
258229 manager .registerReloadListener (listener1 );
259230
260- // Trigger change to an unknown file
261231 fileWatchListener .onChanged ("/unknown/file/path" );
262232
263- // Verify listener is not called
264233 verify (listener1 , never ()).onTlsContextReload ();
265234 }
266235
267236 @ Test
268237 public void testFileChangeNotification_ListenerThrowsException () throws Exception {
269- // Setup a listener that throws an exception
270238 TlsCertificateManager .TlsContextReloadListener exceptionListener = mock (TlsCertificateManager .TlsContextReloadListener .class );
271239 doThrow (new RuntimeException ("Test exception" )).when (exceptionListener ).onTlsContextReload ();
272240
273- // Register both listeners
274241 manager .registerReloadListener (exceptionListener );
275242 manager .registerReloadListener (listener1 );
276243
277- // Trigger both file changes
278244 fileWatchListener .onChanged (certFile .getAbsolutePath ());
279245 fileWatchListener .onChanged (keyFile .getAbsolutePath ());
280246
281- // Verify both listeners were called despite the exception
282247 verify (exceptionListener , times (1 )).onTlsContextReload ();
283248 verify (listener1 , times (1 )).onTlsContextReload ();
284249 }
285250
286251 @ Test
287252 public void testInnerCertKeyFileWatchListener () throws Exception {
288- // Get the CertKeyFileWatchListener class
289253 Class <?> innerClass = null ;
290254 for (Class <?> clazz : TlsCertificateManager .class .getDeclaredClasses ()) {
291255 if (clazz .getSimpleName ().equals ("CertKeyFileWatchListener" )) {
@@ -296,30 +260,23 @@ public void testInnerCertKeyFileWatchListener() throws Exception {
296260
297261 assertNotNull (innerClass , "CertKeyFileWatchListener class not found" );
298262
299- // Create a new instance
300263 Constructor <?> constructor = innerClass .getDeclaredConstructor (TlsCertificateManager .class );
301264 constructor .setAccessible (true );
302265 Object innerListener = constructor .newInstance (manager );
303266
304- // Register a mock listener to the manager
305267 manager .registerReloadListener (listener1 );
306268
307- // Get the onChanged method
308269 Method onChangedMethod = innerClass .getDeclaredMethod ("onChanged" , String .class );
309270 onChangedMethod .setAccessible (true );
310271
311- // Test cert file change
312272 onChangedMethod .invoke (innerListener , certFile .getAbsolutePath ());
313273 verify (listener1 , never ()).onTlsContextReload ();
314274
315- // Test key file change - should trigger notification
316275 onChangedMethod .invoke (innerListener , keyFile .getAbsolutePath ());
317276 verify (listener1 , times (1 )).onTlsContextReload ();
318277
319- // Test reset of flags
320278 reset (listener1 );
321279
322- // Call onChanged again for cert - should not trigger notification as flags are reset
323280 onChangedMethod .invoke (innerListener , certFile .getAbsolutePath ());
324281 verify (listener1 , never ()).onTlsContextReload ();
325282 }
0 commit comments