Skip to content

Commit 6dc3f85

Browse files
Cleanup JUnit4 leftovers (#9731)
1 parent 00b60d4 commit 6dc3f85

File tree

9 files changed

+154
-152
lines changed

9 files changed

+154
-152
lines changed

dd-java-agent/instrumentation/jax-rs-annotations-1/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ apply from: "$rootDir/gradle/java.gradle"
1616
dependencies {
1717
compileOnly group: 'javax.ws.rs', name: 'jsr311-api', version: '1.1.1'
1818

19+
testImplementation libs.spock.junit4 // This legacy module still needs JUnit4.
1920
testImplementation group: 'io.dropwizard', name: 'dropwizard-testing', version: '0.7.1'
2021
testImplementation group: 'javax.xml.bind', name: 'jaxb-api', version: '2.2.3'
2122
}

dd-java-agent/instrumentation/jax-rs-annotations-2/build.gradle

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,7 @@ dependencies {
3333
testImplementation project(':dd-java-agent:instrumentation:jax-rs-annotations-2:filter-resteasy-3.1')
3434

3535
// Jersey
36-
// First version with DropwizardTestSupport:
37-
testImplementation group: 'io.dropwizard', name: 'dropwizard-testing', version: '0.8.0'
36+
testImplementation group: 'io.dropwizard', name: 'dropwizard-testing', version: '1.3.29' // Version compatible with Java 8 and JUnit5.
3837
testImplementation group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.1'
3938
testImplementation group: 'com.fasterxml.jackson.module', name: 'jackson-module-afterburner', version: '2.9.10'
4039

dd-java-agent/instrumentation/jax-rs-annotations-2/src/nestedTest/groovy/NestedResourcesTest.groovy

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import datadog.trace.agent.test.InstrumentationSpecification
22
import datadog.trace.api.DDSpanTypes
33
import datadog.trace.bootstrap.instrumentation.api.Tags
4-
import io.dropwizard.testing.junit.ResourceTestRule
5-
import org.junit.ClassRule
4+
import io.dropwizard.testing.junit5.ResourceExtension
65
import spock.lang.Shared
76

87
import javax.ws.rs.core.Response
@@ -11,24 +10,31 @@ import static datadog.trace.agent.test.utils.TraceUtils.runUnderTrace
1110

1211
class NestedResourcesTest extends InstrumentationSpecification {
1312
@Shared
14-
@ClassRule
15-
ResourceTestRule resources = ResourceTestRule.builder()
13+
ResourceExtension resources = ResourceExtension.builder()
1614
.addResource(new KeyCloakResources.AdminRoot())
1715
.addResource(new KeyCloakResources.RealmsAdminResource())
1816
.addResource(new KeyCloakResources.RealmAdminResource())
1917
.addResource(new KeyCloakResources.UsersResource())
2018
.addResource(new KeyCloakResources.UserResource())
2119
.build()
2220

21+
// Spock has no support for JUnit5 extension.
22+
def setupSpec() {
23+
resources.before()
24+
}
25+
26+
def cleanupSpec() {
27+
resources.after()
28+
}
29+
2330
def getClient() {
2431
resources.client()
2532
}
2633

2734
def "test nested calls"() {
2835
when:
29-
Response response
30-
runUnderTrace("test.span") {
31-
response = getClient().target("/admin/realms/realm1/users/53c82214-ca89-423b-a1f3-6a7784e61cf6").request().get()
36+
Response response = runUnderTrace("test.span") {
37+
getClient().target("/admin/realms/realm1/users/53c82214-ca89-423b-a1f3-6a7784e61cf6").request().get()
3238
}
3339

3440
then:

dd-java-agent/instrumentation/jax-rs-annotations-2/src/test/groovy/JaxRsFilterTest.groovy

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
import datadog.trace.agent.test.InstrumentationSpecification
22
import datadog.trace.api.DDSpanTypes
33
import datadog.trace.bootstrap.instrumentation.api.Tags
4-
import io.dropwizard.testing.junit.ResourceTestRule
4+
import io.dropwizard.testing.junit5.ResourceExtension
55
import org.jboss.resteasy.core.Dispatcher
66
import org.jboss.resteasy.mock.MockDispatcherFactory
77
import org.jboss.resteasy.mock.MockHttpRequest
88
import org.jboss.resteasy.mock.MockHttpResponse
9-
import org.junit.ClassRule
109
import spock.lang.Shared
1110

1211
import javax.ws.rs.client.Entity
@@ -36,12 +35,9 @@ abstract class JaxRsFilterTest extends InstrumentationSpecification {
3635
def abort = abortNormal || abortPrematch
3736

3837
when:
39-
def responseText
40-
def responseStatus
41-
4238
// start a trace because the test doesn't go through any servlet or other instrumentation.
43-
runUnderTrace("test.span") {
44-
(responseText, responseStatus) = makeRequest(resource)
39+
def (responseText, responseStatus) = runUnderTrace("test.span") {
40+
makeRequest(resource)
4541
}
4642

4743
then:
@@ -104,12 +100,9 @@ abstract class JaxRsFilterTest extends InstrumentationSpecification {
104100
prematchRequestFilter.abort = false
105101

106102
when:
107-
def responseText
108-
def responseStatus
109-
110103
// start a trace because the test doesn't go through any servlet or other instrumentation.
111-
runUnderTrace("test.span") {
112-
(responseText, responseStatus) = makeRequest(resource)
104+
def (responseText, responseStatus) = runUnderTrace("test.span") {
105+
makeRequest(resource)
113106
}
114107

115108
then:
@@ -192,15 +185,23 @@ abstract class JaxRsFilterTest extends InstrumentationSpecification {
192185

193186
class JerseyFilterTest extends JaxRsFilterTest {
194187
@Shared
195-
@ClassRule
196-
ResourceTestRule resources = ResourceTestRule.builder()
188+
ResourceExtension resources = ResourceExtension.builder()
197189
.addResource(new Resource.Test1())
198190
.addResource(new Resource.Test2())
199191
.addResource(new Resource.Test3())
200192
.addProvider(simpleRequestFilter)
201193
.addProvider(prematchRequestFilter)
202194
.build()
203195

196+
// Spock has no support for JUnit5 extension.
197+
def setupSpec() {
198+
resources.before()
199+
}
200+
201+
def cleanupSpec() {
202+
resources.after()
203+
}
204+
204205
@Override
205206
def makeRequest(String url) {
206207
Response response = resources.client().target(url).request().post(Entity.text(""))

dd-java-agent/instrumentation/kafka/kafka-clients-0.11/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ dependencies {
2626
compileOnly group: 'org.apache.kafka', name: 'kafka-clients', version: '0.11.0.0'
2727
implementation project(':dd-java-agent:instrumentation:kafka:kafka-common')
2828

29+
testImplementation libs.spock.junit4 // This legacy module still needs JUnit4.
2930
testImplementation group: 'org.apache.kafka', name: 'kafka-clients', version: '0.11.0.0'
3031
testImplementation group: 'org.springframework.kafka', name: 'spring-kafka', version: '1.3.3.RELEASE'
3132
testImplementation group: 'org.springframework.kafka', name: 'spring-kafka-test', version: '1.3.3.RELEASE'

dd-java-agent/instrumentation/kafka/kafka-clients-3.8/build.gradle

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
ext {
22
minJavaVersionForTests = JavaVersion.VERSION_17
33
}
4+
45
muzzle {
56
pass {
67
group = "org.apache.kafka"
@@ -31,23 +32,25 @@ tasks.withType(GroovyCompile).configureEach {
3132
}
3233

3334
dependencies {
34-
// compileOnly group: 'org.apache.kafka', name: 'kafka-clients', version: '3.8.0'
35-
main_java17CompileOnly group: 'org.apache.kafka', name: 'kafka-clients', version: '3.8.0'
3635
implementation project(':dd-java-agent:instrumentation:kafka:kafka-common')
37-
main_java17Implementation project(':dd-java-agent:instrumentation:kafka:kafka-common')
38-
3936
implementation project(':dd-java-agent:instrumentation:span-origin')
4037

41-
testImplementation group: 'org.apache.kafka', name: 'kafka-clients', version: '3.8.0'
38+
main_java17CompileOnly group: 'org.apache.kafka', name: 'kafka-clients', version: '3.8.0'
39+
main_java17Implementation project(':dd-java-agent:instrumentation:kafka:kafka-common')
4240

4341
testImplementation group: 'org.springframework.kafka', name: 'spring-kafka', version: '3.3.4', {
4442
exclude group: 'org.apache.kafka'
4543
}
4644
testImplementation group: 'org.springframework.kafka', name: 'spring-kafka-test', version: '3.3.4', {
4745
exclude group: 'org.apache.kafka'
4846
}
47+
48+
testImplementation 'org.apache.kafka:kafka-server-common:3.8.0:test'
49+
50+
testImplementation 'org.apache.kafka:kafka-clients:3.8.0'
4951
testImplementation 'org.apache.kafka:kafka-clients:3.8.0:test'
50-
testImplementation group: 'org.apache.kafka', name: 'kafka_2.13', version: '3.8.0'
52+
53+
testImplementation 'org.apache.kafka:kafka_2.13:3.8.0'
5154
testImplementation 'org.apache.kafka:kafka_2.13:3.8.0:test'
5255

5356
testImplementation group: 'javax.xml.bind', name: 'jaxb-api', version: '2.2.3'
@@ -57,7 +60,5 @@ dependencies {
5760
latestDepTestImplementation group: 'org.springframework.kafka', name: 'spring-kafka', version: '3.+'
5861
latestDepTestImplementation group: 'org.springframework.kafka', name: 'spring-kafka-test', version: '3.+'
5962
latestDepTestImplementation group: 'io.dropwizard.metrics', name: 'metrics-core', version: '+'
60-
6163
latestDepTestImplementation libs.guava
62-
6364
}

dd-java-agent/instrumentation/kafka/kafka-clients-3.8/src/test/groovy/KafkaClientCustomPropagationConfigTest.groovy

Lines changed: 67 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,17 @@ import org.apache.kafka.clients.consumer.ConsumerRecord
55
import org.apache.kafka.clients.producer.ProducerRecord
66
import org.apache.kafka.common.header.Headers
77
import org.apache.kafka.common.header.internals.RecordHeaders
8-
import org.junit.Rule
98
import org.springframework.kafka.core.DefaultKafkaConsumerFactory
109
import org.springframework.kafka.core.DefaultKafkaProducerFactory
1110
import org.springframework.kafka.core.KafkaTemplate
1211
import org.springframework.kafka.listener.ContainerProperties
1312
import org.springframework.kafka.listener.KafkaMessageListenerContainer
1413
import org.springframework.kafka.listener.MessageListener
1514
import org.springframework.kafka.test.EmbeddedKafkaBroker
16-
import org.springframework.kafka.test.rule.EmbeddedKafkaRule
15+
import org.springframework.kafka.test.EmbeddedKafkaKraftBroker
1716
import org.springframework.kafka.test.utils.ContainerTestUtils
1817
import org.springframework.kafka.test.utils.KafkaTestUtils
18+
import spock.lang.Shared
1919

2020
import java.util.concurrent.LinkedBlockingQueue
2121
import java.util.concurrent.TimeUnit
@@ -29,9 +29,17 @@ class KafkaClientCustomPropagationConfigTest extends InstrumentationSpecificatio
2929
static final SHARED_TOPIC = ["topic1", "topic2", "topic3", "topic4"]
3030
static final MESSAGE = "Testing without headers for certain topics"
3131

32-
@Rule
33-
EmbeddedKafkaRule kafkaRule = new EmbeddedKafkaRule(1, true, SHARED_TOPIC.toArray(String[]::new))
34-
EmbeddedKafkaBroker embeddedKafka = kafkaRule.embeddedKafka
32+
@Shared
33+
EmbeddedKafkaBroker embeddedKafka
34+
35+
def setupSpec() {
36+
embeddedKafka = new EmbeddedKafkaKraftBroker(1, 2, *SHARED_TOPIC)
37+
embeddedKafka.afterPropertiesSet()
38+
}
39+
40+
def cleanupSpec() {
41+
embeddedKafka.destroy()
42+
}
3543

3644
static final dataTable() {
3745
[
@@ -91,36 +99,36 @@ class KafkaClientCustomPropagationConfigTest extends InstrumentationSpecificatio
9199

92100
// setup a Kafka message listener
93101
container1.setupMessageListener(new MessageListener<String, String>() {
94-
@Override
95-
void onMessage(ConsumerRecord<String, String> record) {
96-
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
97-
records1.add(record)
98-
}
99-
})
102+
@Override
103+
void onMessage(ConsumerRecord<String, String> record) {
104+
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
105+
records1.add(record)
106+
}
107+
})
100108

101109
container2.setupMessageListener(new MessageListener<String, String>() {
102-
@Override
103-
void onMessage(ConsumerRecord<String, String> record) {
104-
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
105-
records2.add(record)
106-
}
107-
})
110+
@Override
111+
void onMessage(ConsumerRecord<String, String> record) {
112+
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
113+
records2.add(record)
114+
}
115+
})
108116

109117
container3.setupMessageListener(new MessageListener<String, String>() {
110-
@Override
111-
void onMessage(ConsumerRecord<String, String> record) {
112-
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
113-
records3.add(record)
114-
}
115-
})
118+
@Override
119+
void onMessage(ConsumerRecord<String, String> record) {
120+
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
121+
records3.add(record)
122+
}
123+
})
116124

117125
container4.setupMessageListener(new MessageListener<String, String>() {
118-
@Override
119-
void onMessage(ConsumerRecord<String, String> record) {
120-
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
121-
records4.add(record)
122-
}
123-
})
126+
@Override
127+
void onMessage(ConsumerRecord<String, String> record) {
128+
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
129+
records4.add(record)
130+
}
131+
})
124132

125133
// start the container and underlying message listener
126134
container1.start()
@@ -195,36 +203,36 @@ class KafkaClientCustomPropagationConfigTest extends InstrumentationSpecificatio
195203

196204
// setup a Kafka message listener
197205
container1.setupMessageListener(new MessageListener<String, String>() {
198-
@Override
199-
void onMessage(ConsumerRecord<String, String> record) {
200-
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
201-
records1.add(activeSpan())
202-
}
203-
})
206+
@Override
207+
void onMessage(ConsumerRecord<String, String> record) {
208+
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
209+
records1.add(activeSpan())
210+
}
211+
})
204212

205213
container2.setupMessageListener(new MessageListener<String, String>() {
206-
@Override
207-
void onMessage(ConsumerRecord<String, String> record) {
208-
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
209-
records2.add(activeSpan())
210-
}
211-
})
214+
@Override
215+
void onMessage(ConsumerRecord<String, String> record) {
216+
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
217+
records2.add(activeSpan())
218+
}
219+
})
212220

213221
container3.setupMessageListener(new MessageListener<String, String>() {
214-
@Override
215-
void onMessage(ConsumerRecord<String, String> record) {
216-
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
217-
records3.add(activeSpan())
218-
}
219-
})
222+
@Override
223+
void onMessage(ConsumerRecord<String, String> record) {
224+
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
225+
records3.add(activeSpan())
226+
}
227+
})
220228

221229
container4.setupMessageListener(new MessageListener<String, String>() {
222-
@Override
223-
void onMessage(ConsumerRecord<String, String> record) {
224-
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
225-
records4.add(activeSpan())
226-
}
227-
})
230+
@Override
231+
void onMessage(ConsumerRecord<String, String> record) {
232+
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
233+
records4.add(activeSpan())
234+
}
235+
})
228236

229237
// start the container and underlying message listener
230238
container1.start()
@@ -245,12 +253,12 @@ class KafkaClientCustomPropagationConfigTest extends InstrumentationSpecificatio
245253
activateSpan(span).withCloseable {
246254
for (String topic : SHARED_TOPIC) {
247255
ProducerRecord record = new ProducerRecord<>(
248-
topic,
249-
0,
250-
null,
251-
MESSAGE,
252-
header
253-
)
256+
topic,
257+
0,
258+
null,
259+
MESSAGE,
260+
header
261+
)
254262
kafkaTemplate.send(record as ProducerRecord<String, String>)
255263
}
256264
}
@@ -291,9 +299,7 @@ class KafkaClientCustomPropagationConfigTest extends InstrumentationSpecificatio
291299
container3?.stop()
292300
container4?.stop()
293301

294-
295302
where:
296303
[value, expected1, expected2, expected3, expected4]<< dataTable()
297304
}
298-
299305
}

0 commit comments

Comments
 (0)