1818
1919import java .util .List ;
2020
21+ import org .junit .jupiter .api .BeforeEach ;
2122import org .junit .jupiter .api .Test ;
2223
2324import org .springframework .core .retry .RetryExecution ;
3031 * Tests for {@link CompositeRetryListener}.
3132 *
3233 * @author Mahmoud Ben Hassine
34+ * @author Sam Brannen
3335 * @since 7.0
3436 */
3537class CompositeRetryListenerTests {
3638
3739 private final RetryListener listener1 = mock ();
3840 private final RetryListener listener2 = mock ();
41+ private final RetryListener listener3 = mock ();
3942 private final RetryExecution retryExecution = mock ();
4043
4144 private final CompositeRetryListener compositeRetryListener =
4245 new CompositeRetryListener (List .of (listener1 , listener2 ));
4346
4447
48+ @ BeforeEach
49+ void addListener () {
50+ compositeRetryListener .addListener (listener3 );
51+ }
52+
4553 @ Test
4654 void beforeRetry () {
4755 compositeRetryListener .beforeRetry (retryExecution );
4856
4957 verify (listener1 ).beforeRetry (retryExecution );
5058 verify (listener2 ).beforeRetry (retryExecution );
59+ verify (listener3 ).beforeRetry (retryExecution );
5160 }
5261
5362 @ Test
@@ -57,6 +66,7 @@ void onRetrySuccess() {
5766
5867 verify (listener1 ).onRetrySuccess (retryExecution , result );
5968 verify (listener2 ).onRetrySuccess (retryExecution , result );
69+ verify (listener3 ).onRetrySuccess (retryExecution , result );
6070 }
6171
6272 @ Test
@@ -66,6 +76,7 @@ void onRetryFailure() {
6676
6777 verify (listener1 ).onRetryFailure (retryExecution , exception );
6878 verify (listener2 ).onRetryFailure (retryExecution , exception );
79+ verify (listener3 ).onRetryFailure (retryExecution , exception );
6980 }
7081
7182 @ Test
@@ -75,6 +86,7 @@ void onRetryPolicyExhaustion() {
7586
7687 verify (listener1 ).onRetryPolicyExhaustion (retryExecution , exception );
7788 verify (listener2 ).onRetryPolicyExhaustion (retryExecution , exception );
89+ verify (listener3 ).onRetryPolicyExhaustion (retryExecution , exception );
7890 }
7991
8092}
0 commit comments