Skip to content

Commit 6104719

Browse files
authored
Merge pull request #14198 from rabbitmq/stream-java-project-pom-upgrade
Polish stream Java test projects
2 parents 27a362d + f35c7d7 commit 6104719

File tree

10 files changed

+96
-38
lines changed

10 files changed

+96
-38
lines changed

deps/rabbitmq_stream/test/rabbit_stream_SUITE_data/pom.xml

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,15 @@
2626
</developers>
2727

2828
<properties>
29-
<stream-client.version>[0.12.0-SNAPSHOT,)</stream-client.version>
29+
<stream-client.version>[1.2.0-SNAPSHOT,)</stream-client.version>
3030
<junit.jupiter.version>5.13.3</junit.jupiter.version>
3131
<assertj.version>3.27.3</assertj.version>
32-
<logback.version>1.2.13</logback.version>
32+
<slf4j.version>2.0.17</slf4j.version>
33+
<logback.version>1.5.18</logback.version>
3334
<maven.compiler.plugin.version>3.14.0</maven.compiler.plugin.version>
3435
<maven-surefire-plugin.version>3.5.3</maven-surefire-plugin.version>
3536
<spotless.version>2.44.5</spotless.version>
36-
<google-java-format.version>1.17.0</google-java-format.version>
37+
<google-java-format.version>1.27.0</google-java-format.version>
3738
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3839
</properties>
3940

@@ -45,6 +46,12 @@
4546
<version>${stream-client.version}</version>
4647
</dependency>
4748

49+
<dependency>
50+
<groupId>org.slf4j</groupId>
51+
<artifactId>slf4j-api</artifactId>
52+
<version>${slf4j.version}</version>
53+
</dependency>
54+
4855
<dependency>
4956
<groupId>org.junit.jupiter</groupId>
5057
<artifactId>junit-jupiter-engine</artifactId>
@@ -73,6 +80,14 @@
7380
<scope>test</scope>
7481
</dependency>
7582

83+
<!-- add explicitly to update automatically with dependabot -->
84+
<dependency>
85+
<groupId>com.google.googlejavaformat</groupId>
86+
<artifactId>google-java-format</artifactId>
87+
<version>${google-java-format.version}</version>
88+
<scope>test</scope>
89+
</dependency>
90+
7691
</dependencies>
7792

7893
<build>

deps/rabbitmq_stream/test/rabbit_stream_SUITE_data/src/test/java/com/rabbitmq/stream/ClusterSizeTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
// The Original Code is RabbitMQ.
1212
//
1313
// The Initial Developer of the Original Code is Pivotal Software, Inc.
14-
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
14+
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom
15+
// Inc. and/or its subsidiaries. All rights reserved.
1516
//
1617

1718
package com.rabbitmq.stream;

deps/rabbitmq_stream/test/rabbit_stream_SUITE_data/src/test/java/com/rabbitmq/stream/FailureTest.java

Lines changed: 34 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
// The Original Code is RabbitMQ.
1212
//
1313
// The Initial Developer of the Original Code is Pivotal Software, Inc.
14-
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
14+
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom
15+
// Inc. and/or its subsidiaries. All rights reserved.
1516
//
1617

1718
package com.rabbitmq.stream;
@@ -33,7 +34,6 @@
3334
import java.util.concurrent.atomic.AtomicInteger;
3435
import java.util.concurrent.atomic.AtomicLong;
3536
import java.util.concurrent.atomic.AtomicReference;
36-
3737
import org.junit.jupiter.api.AfterEach;
3838
import org.junit.jupiter.api.Test;
3939
import org.junit.jupiter.api.extension.ExtendWith;
@@ -220,16 +220,23 @@ void noLostConfirmedMessagesWhenLeaderGoesAway() throws Exception {
220220
executorService.submit(
221221
() -> {
222222
connected.set(false);
223-
224-
try { Thread.sleep(2000); } catch (Exception e) {}
225-
Client locator =
226-
cf.get(new Client.ClientParameters().port(streamPortNode2()));
227-
// wait until there's a new leader
223+
AtomicReference<Client> locator = new AtomicReference<>();
228224
try {
229225
waitAtMost(
230226
Duration.ofSeconds(5),
231227
() -> {
232-
Client.StreamMetadata m = locator.metadata(stream).get(stream);
228+
try {
229+
locator.set(
230+
cf.get(new Client.ClientParameters().port(streamPortNode2())));
231+
return true;
232+
} catch (Exception e) {
233+
return false;
234+
}
235+
});
236+
waitAtMost(
237+
Duration.ofSeconds(5),
238+
() -> {
239+
Client.StreamMetadata m = locator.get().metadata(stream).get(stream);
233240
return m.getLeader() != null
234241
&& m.getLeader().getPort() != streamPortNode1();
235242
});
@@ -238,7 +245,8 @@ void noLostConfirmedMessagesWhenLeaderGoesAway() throws Exception {
238245
return;
239246
}
240247

241-
int newLeaderPort = locator.metadata(stream).get(stream).getLeader().getPort();
248+
int newLeaderPort =
249+
locator.get().metadata(stream).get(stream).getLeader().getPort();
242250
Client newPublisher =
243251
cf.get(
244252
new Client.ClientParameters()
@@ -468,14 +476,23 @@ void consumerReattachesToOtherReplicaWhenReplicaGoesAway() throws Exception {
468476
// avoid long-running task in the IO thread
469477
executorService.submit(
470478
() -> {
471-
try { Thread.sleep(2000); } catch (Exception e) {}
472-
Client.StreamMetadata m = metadataClient.metadata(stream).get(stream);
473-
int newReplicaPort = m.getReplicas().get(0).getPort();
479+
AtomicInteger newReplicaPort = new AtomicInteger(-1);
480+
waitAtMost(
481+
Duration.ofSeconds(5),
482+
() -> {
483+
try {
484+
Client.StreamMetadata m = metadataClient.metadata(stream).get(stream);
485+
newReplicaPort.set(m.getReplicas().get(0).getPort());
486+
return true;
487+
} catch (Exception e) {
488+
return false;
489+
}
490+
});
474491

475492
Client newConsumer =
476493
cf.get(
477494
new Client.ClientParameters()
478-
.port(newReplicaPort)
495+
.port(newReplicaPort.get())
479496
.shutdownListener(shutdownListenerReference.get())
480497
.chunkListener(credit())
481498
.messageListener(messageListener));
@@ -588,7 +605,8 @@ void declarePublisherShouldNotReturnStreamDoesNotExistOnRestart() throws Excepti
588605
}
589606

590607
@Test
591-
void shouldReceiveMetadataUpdateWhenReplicaIsKilledWithPublisherAndConsumerOnSameConnection() throws Exception {
608+
void shouldReceiveMetadataUpdateWhenReplicaIsKilledWithPublisherAndConsumerOnSameConnection()
609+
throws Exception {
592610
Client metadataClient = cf.get(new Client.ClientParameters().port(streamPortNode1()));
593611
Map<String, Client.StreamMetadata> metadata = metadataClient.metadata(stream);
594612
Client.StreamMetadata streamMetadata = metadata.get(stream);
@@ -602,8 +620,7 @@ void shouldReceiveMetadataUpdateWhenReplicaIsKilledWithPublisherAndConsumerOnSam
602620
assertThat(streamMetadata.getLeader().getPort()).isEqualTo(streamPortNode1());
603621
Client.Broker broker =
604622
streamMetadata.getReplicas().stream()
605-
.filter(
606-
r -> r.getPort() == streamPortNode1() || r.getPort() == streamPortNode2())
623+
.filter(r -> r.getPort() == streamPortNode1() || r.getPort() == streamPortNode2())
607624
.findFirst()
608625
.get();
609626

@@ -612,8 +629,7 @@ void shouldReceiveMetadataUpdateWhenReplicaIsKilledWithPublisherAndConsumerOnSam
612629
cf.get(
613630
new ClientParameters()
614631
.port(broker.getPort())
615-
.metadataListener(
616-
(stream, code) -> metadataNotifications.incrementAndGet()));
632+
.metadataListener((stream, code) -> metadataNotifications.incrementAndGet()));
617633
client.declarePublisher((byte) 42, null, stream);
618634
client.subscribe((byte) 66, stream, OffsetSpecification.first(), 1);
619635

deps/rabbitmq_stream/test/rabbit_stream_SUITE_data/src/test/java/com/rabbitmq/stream/Host.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
// The Original Code is RabbitMQ.
1212
//
1313
// The Initial Developer of the Original Code is Pivotal Software, Inc.
14-
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
14+
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom
15+
// Inc. and/or its subsidiaries. All rights reserved.
1516
//
1617

1718
package com.rabbitmq.stream;
@@ -101,7 +102,8 @@ public static String node2name() {
101102
return System.getProperty("node2.name", "rabbit-2@" + hostname());
102103
}
103104

104-
public static Process killStreamLocalMemberProcess(String stream, String nodename) throws IOException {
105+
public static Process killStreamLocalMemberProcess(String stream, String nodename)
106+
throws IOException {
105107
return rabbitmqctl(
106108
"eval 'case rabbit_stream_manager:lookup_local_member(<<\"/\">>, <<\""
107109
+ stream

deps/rabbitmq_stream/test/rabbit_stream_SUITE_data/src/test/java/com/rabbitmq/stream/LeaderLocatorTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
// The Original Code is RabbitMQ.
1212
//
1313
// The Initial Developer of the Original Code is Pivotal Software, Inc.
14-
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
14+
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom
15+
// Inc. and/or its subsidiaries. All rights reserved.
1516
//
1617

1718
package com.rabbitmq.stream;
@@ -27,8 +28,8 @@
2728
import com.rabbitmq.stream.impl.Client.ClientParameters;
2829
import com.rabbitmq.stream.impl.Client.Response;
2930
import com.rabbitmq.stream.impl.Client.StreamMetadata;
30-
import java.util.Collections;
3131
import java.time.Duration;
32+
import java.util.Collections;
3233
import java.util.HashMap;
3334
import java.util.Map;
3435
import java.util.Set;
@@ -58,9 +59,8 @@ void invalidLocatorShouldReturnError() {
5859
void clientLocalLocatorShouldMakeLeaderOnConnectedNode() {
5960
int[] ports = new int[] {TestUtils.streamPortNode1(), TestUtils.streamPortNode2()};
6061
for (int port : ports) {
61-
Client client = cf.get(new Client.ClientParameters()
62-
.port(port)
63-
.rpcTimeout(Duration.ofSeconds(30)));
62+
Client client =
63+
cf.get(new Client.ClientParameters().port(port).rpcTimeout(Duration.ofSeconds(30)));
6464
String s = UUID.randomUUID().toString();
6565
try {
6666
Response response =

deps/rabbitmq_stream/test/rabbit_stream_SUITE_data/src/test/java/com/rabbitmq/stream/StreamTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
// The Original Code is RabbitMQ.
1212
//
1313
// The Initial Developer of the Original Code is Pivotal Software, Inc.
14-
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
14+
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom
15+
// Inc. and/or its subsidiaries. All rights reserved.
1516
//
1617

1718
package com.rabbitmq.stream;

deps/rabbitmq_stream/test/rabbit_stream_SUITE_data/src/test/java/com/rabbitmq/stream/TestUtils.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
// The Original Code is RabbitMQ.
1212
//
1313
// The Initial Developer of the Original Code is Pivotal Software, Inc.
14-
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
14+
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom
15+
// Inc. and/or its subsidiaries. All rights reserved.
1516
//
1617

1718
package com.rabbitmq.stream;
@@ -52,15 +53,20 @@ static void waitUntil(BooleanSupplier condition) throws InterruptedException {
5253
waitAtMost(Duration.ofSeconds(10), condition);
5354
}
5455

55-
static void waitAtMost(Duration duration, BooleanSupplier condition) throws InterruptedException {
56+
static void waitAtMost(Duration duration, BooleanSupplier condition) {
5657
if (condition.getAsBoolean()) {
5758
return;
5859
}
5960
int waitTime = 100;
6061
int waitedTime = 0;
6162
long timeoutInMs = duration.toMillis();
6263
while (waitedTime <= timeoutInMs) {
63-
Thread.sleep(waitTime);
64+
try {
65+
Thread.sleep(waitTime);
66+
} catch (InterruptedException e) {
67+
Thread.currentThread().interrupt();
68+
throw new RuntimeException(e);
69+
}
6470
if (condition.getAsBoolean()) {
6571
return;
6672
}

deps/rabbitmq_stream_management/test/http_SUITE_data/pom.xml

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,15 @@
2626
</developers>
2727

2828
<properties>
29-
<stream-client.version>[0.12.0-SNAPSHOT,)</stream-client.version>
29+
<stream-client.version>[1.2.0-SNAPSHOT,)</stream-client.version>
3030
<junit.jupiter.version>5.13.3</junit.jupiter.version>
3131
<assertj.version>3.27.3</assertj.version>
32-
<logback.version>1.2.13</logback.version>
32+
<slf4j.version>2.0.17</slf4j.version>
33+
<logback.version>1.5.18</logback.version>
3334
<maven.compiler.plugin.version>3.14.0</maven.compiler.plugin.version>
3435
<maven-surefire-plugin.version>3.5.3</maven-surefire-plugin.version>
3536
<spotless.version>2.44.5</spotless.version>
36-
<google-java-format.version>1.18.1</google-java-format.version>
37+
<google-java-format.version>1.27.0</google-java-format.version>
3738
<okhttp.version>5.0.0</okhttp.version>
3839
<gson.version>2.13.1</gson.version>
3940
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -47,6 +48,12 @@
4748
<version>${stream-client.version}</version>
4849
</dependency>
4950

51+
<dependency>
52+
<groupId>org.slf4j</groupId>
53+
<artifactId>slf4j-api</artifactId>
54+
<version>${slf4j.version}</version>
55+
</dependency>
56+
5057
<dependency>
5158
<groupId>org.junit.jupiter</groupId>
5259
<artifactId>junit-jupiter-engine</artifactId>
@@ -89,6 +96,14 @@
8996
<scope>test</scope>
9097
</dependency>
9198

99+
<!-- add explicitly to update automatically with dependabot -->
100+
<dependency>
101+
<groupId>com.google.googlejavaformat</groupId>
102+
<artifactId>google-java-format</artifactId>
103+
<version>${google-java-format.version}</version>
104+
<scope>test</scope>
105+
</dependency>
106+
92107
</dependencies>
93108

94109
<build>

deps/rabbitmq_stream_management/test/http_SUITE_data/src/test/java/com/rabbitmq/stream/HttpTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
// The Original Code is RabbitMQ.
1212
//
1313
// The Initial Developer of the Original Code is Pivotal Software, Inc.
14-
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
14+
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom
15+
// Inc. and/or its subsidiaries. All rights reserved.
1516
//
1617

1718
package com.rabbitmq.stream;

deps/rabbitmq_stream_management/test/http_SUITE_data/src/test/java/com/rabbitmq/stream/TestUtils.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
// The Original Code is RabbitMQ.
1212
//
1313
// The Initial Developer of the Original Code is Pivotal Software, Inc.
14-
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. All rights reserved.
14+
// Copyright (c) 2007-2025 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom
15+
// Inc. and/or its subsidiaries. All rights reserved.
1516
//
1617

1718
package com.rabbitmq.stream;

0 commit comments

Comments
 (0)