Skip to content

Commit d6fb172

Browse files
committed
Increase PPBOManagerFactory Test Coverage (Sonar)
1 parent 0f69553 commit d6fb172

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

Diff for: spring-kafka/src/test/java/org/springframework/kafka/retrytopic/RetryTopicConfigurationSupportTests.java

+35
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import static org.mockito.Mockito.mock;
2525
import static org.mockito.Mockito.never;
2626

27+
import java.lang.reflect.Method;
2728
import java.time.Clock;
2829
import java.util.List;
2930
import java.util.Map;
@@ -40,9 +41,11 @@
4041
import org.springframework.kafka.listener.ConcurrentMessageListenerContainer;
4142
import org.springframework.kafka.listener.DeadLetterPublishingRecoverer;
4243
import org.springframework.kafka.listener.KafkaConsumerBackoffManager;
44+
import org.springframework.kafka.listener.KafkaConsumerTimingAdjuster;
4345
import org.springframework.kafka.listener.ListenerContainerRegistry;
4446
import org.springframework.kafka.listener.PartitionPausingBackOffManagerFactory;
4547
import org.springframework.kafka.support.converter.ConversionException;
48+
import org.springframework.kafka.test.utils.KafkaTestUtils;
4649
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
4750
import org.springframework.util.backoff.BackOff;
4851

@@ -213,6 +216,38 @@ protected RetryTopicComponentFactory createComponentFactory() {
213216
then(factory).should(never()).setTaskExecutor(taskExecutorMock);
214217
}
215218

219+
@Test
220+
void backOffManagerFactoryCoverage() throws Exception {
221+
Method create = PartitionPausingBackOffManagerFactory.class.getDeclaredMethod("doCreateManager",
222+
ListenerContainerRegistry.class);
223+
create.setAccessible(true);
224+
TaskExecutor te = mock(TaskExecutor.class);
225+
KafkaConsumerTimingAdjuster mock = mock(KafkaConsumerTimingAdjuster.class);
226+
PartitionPausingBackOffManagerFactory factory = new PartitionPausingBackOffManagerFactory(mock);
227+
assertThat(KafkaTestUtils.getPropertyValue(factory, "clock")).isEqualTo(Clock.systemUTC());
228+
assertThat(KafkaTestUtils.getPropertyValue(factory, "timingAdjustmentManager")).isEqualTo(mock);
229+
create.invoke(factory, mock(ListenerContainerRegistry.class));
230+
factory.setTaskExecutor(te);
231+
assertThat(KafkaTestUtils.getPropertyValue(factory, "taskExecutor")).isEqualTo(te);
232+
factory = new PartitionPausingBackOffManagerFactory(te);
233+
assertThat(KafkaTestUtils.getPropertyValue(factory, "clock")).isEqualTo(Clock.systemUTC());
234+
assertThat(KafkaTestUtils.getPropertyValue(factory, "taskExecutor")).isEqualTo(te);
235+
create.invoke(factory, mock(ListenerContainerRegistry.class));
236+
factory.setTimingAdjustmentManager(mock);
237+
assertThat(KafkaTestUtils.getPropertyValue(factory, "timingAdjustmentManager")).isEqualTo(mock);
238+
create.invoke(factory, mock(ListenerContainerRegistry.class));
239+
factory = new PartitionPausingBackOffManagerFactory(false);
240+
assertThat(KafkaTestUtils.getPropertyValue(factory, "clock")).isEqualTo(Clock.systemUTC());
241+
assertThat(KafkaTestUtils.getPropertyValue(factory, "timingAdjustmentEnabled")).isEqualTo(Boolean.FALSE);
242+
factory.setClock(Clock.systemDefaultZone());
243+
assertThat(KafkaTestUtils.getPropertyValue(factory, "clock")).isEqualTo(Clock.systemDefaultZone());
244+
factory = new PartitionPausingBackOffManagerFactory(Clock.systemDefaultZone());
245+
assertThat(KafkaTestUtils.getPropertyValue(factory, "clock")).isEqualTo(Clock.systemDefaultZone());
246+
assertThat(KafkaTestUtils.getPropertyValue(factory, "timingAdjustmentEnabled")).isEqualTo(Boolean.TRUE);
247+
factory.setTimingAdjustmentEnabled(false);
248+
assertThat(KafkaTestUtils.getPropertyValue(factory, "timingAdjustmentEnabled")).isEqualTo(Boolean.FALSE);
249+
}
250+
216251
@Test
217252
void testCreatesTaskExecutor() {
218253
RetryTopicConfigurationSupport support = new RetryTopicConfigurationSupport();

0 commit comments

Comments
 (0)