Skip to content

Commit 4b7e53e

Browse files
authored
GH-2927: Subclasses for EmbeddedKafkaBroker param
Fixes: #2927 Starting a test without spring context with Embeded Lafka without `kraft` enabled and `EmbeddedKafkaZKBroker` as a test's parameter results in an exception: ``` No ParameterResolver registered for parameter [org.springframework.kafka.test.EmbeddedKafkaZKBroker broker] in method [public void test.SomeTest.test(org.springframework.kafka.test.EmbeddedKafkaZKBroker)]. org.junit.jupiter.api.extension.ParameterResolutionException: No ParameterResolver registered for parameter [org.springframework.kafka.test.EmbeddedKafkaZKBroker broker] in method [public void test.SomeTest.test(org.springframework.kafka.test.EmbeddedKafkaZKBroker)]. ``` For test config: ``` @test public void test(EmbeddedKafkaZKBroker broker) ``` * Fix `EmbeddedKafkaCondition` to use `EmbeddedKafkaBroker.class.isAssignableFrom(parameterContext.getParameter().getType());` instead of just `parameterContext.getParameter().getType().equals(EmbeddedKafkaBroker.class)`
1 parent 7805541 commit 4b7e53e

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

spring-kafka-test/src/main/java/org/springframework/kafka/test/condition/EmbeddedKafkaCondition.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
* @author Artem Bilan
5555
* @author Pawel Lozinski
5656
* @author Adrian Chlebosz
57+
* @author Michał Padula
5758
*
5859
* @since 2.3
5960
*
@@ -72,7 +73,7 @@ public boolean supportsParameter(ParameterContext parameterContext, ExtensionCon
7273
return false;
7374
}
7475
else {
75-
return parameterContext.getParameter().getType().equals(EmbeddedKafkaBroker.class);
76+
return EmbeddedKafkaBroker.class.isAssignableFrom(parameterContext.getParameter().getType());
7677
}
7778
}
7879

spring-kafka-test/src/test/java/org/springframework/kafka/test/condition/EmbeddedKafkaConditionTests.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,14 @@
2121
import org.junit.jupiter.api.Test;
2222

2323
import org.springframework.kafka.test.EmbeddedKafkaBroker;
24+
import org.springframework.kafka.test.EmbeddedKafkaZKBroker;
2425
import org.springframework.kafka.test.context.EmbeddedKafka;
2526
import org.springframework.kafka.test.utils.KafkaTestUtils;
2627

2728
/**
2829
* @author Gary Russell
30+
* @author Michał Padula
31+
*
2932
* @since 2.3
3033
*
3134
*/
@@ -41,4 +44,9 @@ public void test(EmbeddedKafkaBroker broker) {
4144
assertThat(broker.getPartitionsPerTopic()).isEqualTo(3);
4245
}
4346

47+
@Test
48+
public void testResolver(EmbeddedKafkaZKBroker broker) {
49+
assertThat(broker).isNotNull();
50+
}
51+
4452
}

0 commit comments

Comments
 (0)