Skip to content

Commit 7bd763d

Browse files
authored
Removes finally blocks and add @AfterEach to each ITs to stop running container (#118)
* Add precondition to ITs that no containers are running Signed-off-by: see-quick <[email protected]> * not needed filtering Signed-off-by: see-quick <[email protected]> * also add un-necessary labels Signed-off-by: see-quick <[email protected]> --------- Signed-off-by: see-quick <[email protected]>
1 parent 7f2543f commit 7bd763d

File tree

2 files changed

+101
-134
lines changed

2 files changed

+101
-134
lines changed

src/test/java/io/strimzi/test/container/StrimziKafkaKRaftClusterIT.java

Lines changed: 42 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import org.apache.kafka.common.serialization.StringDeserializer;
2222
import org.apache.kafka.common.serialization.StringSerializer;
2323
import org.hamcrest.CoreMatchers;
24+
import org.junit.jupiter.api.AfterEach;
2425
import org.junit.jupiter.api.Test;
2526
import org.slf4j.Logger;
2627
import org.slf4j.LoggerFactory;
@@ -53,56 +54,40 @@ public class StrimziKafkaKRaftClusterIT extends AbstractIT {
5354

5455
@Test
5556
void testKafkaClusterStartup() throws InterruptedException, ExecutionException {
56-
try {
57-
setUpKafkaKRaftCluster();
57+
setUpKafkaKRaftCluster();
5858

59-
verifyReadinessOfKRaftCluster();
60-
} finally {
61-
systemUnderTest.stop();
62-
}
59+
verifyReadinessOfKRaftCluster();
6360
}
6461

6562
@Test
6663
void testKafkaClusterStartupWithSharedNetwork() throws InterruptedException, ExecutionException {
67-
try {
68-
systemUnderTest = new StrimziKafkaCluster.StrimziKafkaClusterBuilder()
69-
.withNumberOfBrokers(NUMBER_OF_REPLICAS)
70-
.withSharedNetwork()
71-
.withKraft()
72-
.build();
73-
systemUnderTest.start();
74-
75-
verifyReadinessOfKRaftCluster();
76-
} finally {
77-
systemUnderTest.stop();
78-
}
64+
systemUnderTest = new StrimziKafkaCluster.StrimziKafkaClusterBuilder()
65+
.withNumberOfBrokers(NUMBER_OF_REPLICAS)
66+
.withSharedNetwork()
67+
.withKraft()
68+
.build();
69+
systemUnderTest.start();
70+
71+
verifyReadinessOfKRaftCluster();
7972
}
8073

8174
@Test
8275
void testKafkaClusterFunctionality() throws ExecutionException, InterruptedException, TimeoutException {
8376
setUpKafkaKRaftCluster();
8477

85-
try {
86-
verifyFunctionalityOfKafkaCluster();
87-
} finally {
88-
systemUnderTest.stop();
89-
}
78+
verifyFunctionalityOfKafkaCluster();
9079
}
9180

9281
@Test
9382
void testKafkaClusterWithSharedNetworkFunctionality() throws ExecutionException, InterruptedException, TimeoutException {
94-
try {
95-
systemUnderTest = new StrimziKafkaCluster.StrimziKafkaClusterBuilder()
96-
.withNumberOfBrokers(NUMBER_OF_REPLICAS)
97-
.withSharedNetwork()
98-
.withKraft()
99-
.build();
100-
systemUnderTest.start();
101-
102-
verifyFunctionalityOfKafkaCluster();
103-
} finally {
104-
systemUnderTest.stop();
105-
}
83+
systemUnderTest = new StrimziKafkaCluster.StrimziKafkaClusterBuilder()
84+
.withNumberOfBrokers(NUMBER_OF_REPLICAS)
85+
.withSharedNetwork()
86+
.withKraft()
87+
.build();
88+
systemUnderTest.start();
89+
90+
verifyFunctionalityOfKafkaCluster();
10691
}
10792

10893
@Test
@@ -111,28 +96,22 @@ void testStartClusterWithProxyContainer() {
11196
DockerImageName.parse("ghcr.io/shopify/toxiproxy:2.11.0")
11297
.asCompatibleSubstituteFor("shopify/toxiproxy"));
11398

114-
try {
115-
systemUnderTest = new StrimziKafkaCluster.StrimziKafkaClusterBuilder()
116-
.withNumberOfBrokers(NUMBER_OF_REPLICAS)
117-
.withProxyContainer(proxyContainer)
118-
.withKraft()
119-
.build();
120-
121-
systemUnderTest.start();
122-
List<String> bootstrapUrls = new ArrayList<>();
123-
for (KafkaContainer kafkaContainer : systemUnderTest.getBrokers()) {
124-
Proxy proxy = ((StrimziKafkaContainer) kafkaContainer).getProxy();
125-
assertThat(proxy, notNullValue());
126-
bootstrapUrls.add(kafkaContainer.getBootstrapServers());
127-
}
128-
129-
assertThat(systemUnderTest.getBootstrapServers(),
130-
is(String.join(",", bootstrapUrls)));
131-
} finally {
132-
if (systemUnderTest != null) {
133-
systemUnderTest.stop();
134-
}
99+
systemUnderTest = new StrimziKafkaCluster.StrimziKafkaClusterBuilder()
100+
.withNumberOfBrokers(NUMBER_OF_REPLICAS)
101+
.withProxyContainer(proxyContainer)
102+
.withKraft()
103+
.build();
104+
105+
systemUnderTest.start();
106+
List<String> bootstrapUrls = new ArrayList<>();
107+
for (KafkaContainer kafkaContainer : systemUnderTest.getBrokers()) {
108+
Proxy proxy = ((StrimziKafkaContainer) kafkaContainer).getProxy();
109+
assertThat(proxy, notNullValue());
110+
bootstrapUrls.add(kafkaContainer.getBootstrapServers());
135111
}
112+
113+
assertThat(systemUnderTest.getBootstrapServers(),
114+
is(String.join(",", bootstrapUrls)));
136115
}
137116

138117
private void setUpKafkaKRaftCluster() {
@@ -215,4 +194,11 @@ private void verifyFunctionalityOfKafkaCluster() throws ExecutionException, Inte
215194
});
216195
}
217196
}
197+
198+
@AfterEach
199+
void afterEach() {
200+
if (this.systemUnderTest != null) {
201+
this.systemUnderTest.stop();
202+
}
203+
}
218204
}

src/test/java/io/strimzi/test/container/StrimziKafkaKraftContainerIT.java

Lines changed: 59 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -49,100 +49,83 @@ public class StrimziKafkaKraftContainerIT extends AbstractIT {
4949
void testStartContainerWithEmptyConfiguration(final String imageName, final String kafkaVersion) throws ExecutionException, InterruptedException, TimeoutException {
5050
supportsKraftMode(imageName);
5151

52-
try {
53-
systemUnderTest = new StrimziKafkaContainer(imageName)
54-
.withBrokerId(1)
55-
.withKraft()
56-
.waitForRunning();
57-
58-
systemUnderTest.start();
59-
assertThat(systemUnderTest.getClusterId(), notNullValue());
60-
61-
String logsFromKafka = systemUnderTest.getLogs();
62-
if (isLessThanKafka350(kafkaVersion)) {
63-
assertThat(logsFromKafka, containsString("RaftManager nodeId=1"));
64-
} else {
65-
assertThat(logsFromKafka, containsString("ControllerServer id=1"));
66-
assertThat(logsFromKafka, containsString("SocketServer listenerType=CONTROLLER, nodeId=1"));
67-
}
68-
69-
verify();
70-
71-
assertThat(systemUnderTest.getBootstrapServers(), is("PLAINTEXT://" +
72-
systemUnderTest.getHost() + ":" + systemUnderTest.getMappedPort(9092)));
73-
} finally {
74-
systemUnderTest.stop();
52+
systemUnderTest = new StrimziKafkaContainer(imageName)
53+
.withBrokerId(1)
54+
.withKraft()
55+
.waitForRunning();
56+
57+
systemUnderTest.start();
58+
assertThat(systemUnderTest.getClusterId(), notNullValue());
59+
60+
String logsFromKafka = systemUnderTest.getLogs();
61+
if (isLessThanKafka350(kafkaVersion)) {
62+
assertThat(logsFromKafka, containsString("RaftManager nodeId=1"));
63+
} else {
64+
assertThat(logsFromKafka, containsString("ControllerServer id=1"));
65+
assertThat(logsFromKafka, containsString("SocketServer listenerType=CONTROLLER, nodeId=1"));
7566
}
67+
68+
verify();
69+
70+
assertThat(systemUnderTest.getBootstrapServers(), is("PLAINTEXT://" +
71+
systemUnderTest.getHost() + ":" + systemUnderTest.getMappedPort(9092)));
7672
}
7773

7874
@ParameterizedTest(name = "testStartContainerWithSomeConfiguration-{0}")
7975
@MethodSource("retrieveKafkaVersionsFile")
8076
void testStartContainerWithSomeConfiguration(final String imageName, final String kafkaVersion) throws ExecutionException, InterruptedException, TimeoutException {
8177
supportsKraftMode(imageName);
82-
try {
83-
Map<String, String> kafkaConfiguration = new HashMap<>();
84-
85-
kafkaConfiguration.put("log.cleaner.enable", "false");
86-
kafkaConfiguration.put("log.cleaner.backoff.ms", "1000");
87-
kafkaConfiguration.put("ssl.enabled.protocols", "TLSv1");
88-
kafkaConfiguration.put("log.index.interval.bytes", "2048");
89-
90-
systemUnderTest = new StrimziKafkaContainer(imageName)
91-
.withBrokerId(1)
92-
.withKraft()
93-
.withKafkaConfigurationMap(kafkaConfiguration)
94-
.waitForRunning();
95-
96-
systemUnderTest.start();
97-
98-
String logsFromKafka = systemUnderTest.getLogs();
99-
100-
if (isLessThanKafka350(kafkaVersion)) {
101-
assertThat(logsFromKafka, containsString("RaftManager nodeId=1"));
102-
} else {
103-
assertThat(logsFromKafka, containsString("ControllerServer id=1"));
104-
assertThat(logsFromKafka, containsString("SocketServer listenerType=CONTROLLER, nodeId=1"));
105-
}
106-
assertThat(logsFromKafka, containsString("log.cleaner.enable = false"));
107-
assertThat(logsFromKafka, containsString("log.cleaner.backoff.ms = 1000"));
108-
assertThat(logsFromKafka, containsString("ssl.enabled.protocols = [TLSv1]"));
109-
assertThat(logsFromKafka, containsString("log.index.interval.bytes = 2048"));
110-
111-
verify();
112-
} finally {
113-
systemUnderTest.stop();
78+
79+
Map<String, String> kafkaConfiguration = new HashMap<>();
80+
81+
kafkaConfiguration.put("log.cleaner.enable", "false");
82+
kafkaConfiguration.put("log.cleaner.backoff.ms", "1000");
83+
kafkaConfiguration.put("ssl.enabled.protocols", "TLSv1");
84+
kafkaConfiguration.put("log.index.interval.bytes", "2048");
85+
86+
systemUnderTest = new StrimziKafkaContainer(imageName)
87+
.withBrokerId(1)
88+
.withKraft()
89+
.withKafkaConfigurationMap(kafkaConfiguration)
90+
.waitForRunning();
91+
92+
systemUnderTest.start();
93+
94+
String logsFromKafka = systemUnderTest.getLogs();
95+
96+
if (isLessThanKafka350(kafkaVersion)) {
97+
assertThat(logsFromKafka, containsString("RaftManager nodeId=1"));
98+
} else {
99+
assertThat(logsFromKafka, containsString("ControllerServer id=1"));
100+
assertThat(logsFromKafka, containsString("SocketServer listenerType=CONTROLLER, nodeId=1"));
114101
}
102+
assertThat(logsFromKafka, containsString("log.cleaner.enable = false"));
103+
assertThat(logsFromKafka, containsString("log.cleaner.backoff.ms = 1000"));
104+
assertThat(logsFromKafka, containsString("ssl.enabled.protocols = [TLSv1]"));
105+
assertThat(logsFromKafka, containsString("log.index.interval.bytes = 2048"));
106+
107+
verify();
115108
}
116109

117110
@Test
118111
void testUnsupportedKRaftUsingKafkaVersion() {
119-
try {
120-
systemUnderTest = new StrimziKafkaContainer()
121-
.withKafkaVersion("2.8.2")
122-
.withBrokerId(1)
123-
.withKraft()
124-
.waitForRunning();
125-
126-
assertThrows(UnsupportedKraftKafkaVersionException.class, () -> systemUnderTest.start());
127-
} finally {
128-
systemUnderTest.stop();
129-
}
112+
systemUnderTest = new StrimziKafkaContainer()
113+
.withKafkaVersion("2.8.2")
114+
.withBrokerId(1)
115+
.withKraft()
116+
.waitForRunning();
130117

118+
assertThrows(UnsupportedKraftKafkaVersionException.class, () -> systemUnderTest.start());
131119
}
132120

133121
@Test
134122
void testUnsupportedKRaftUsingImageName() {
135-
try {
136-
systemUnderTest = new StrimziKafkaContainer("quay.io/strimzi-test-container/test-container:latest-kafka-2.8.2")
137-
.withBrokerId(1)
138-
.withKraft()
139-
.waitForRunning();
140-
141-
assertThrows(UnsupportedKraftKafkaVersionException.class, () -> systemUnderTest.start());
142-
} finally {
143-
systemUnderTest.stop();
123+
systemUnderTest = new StrimziKafkaContainer("quay.io/strimzi-test-container/test-container:latest-kafka-2.8.2")
124+
.withBrokerId(1)
125+
.withKraft()
126+
.waitForRunning();
144127

145-
}
128+
assertThrows(UnsupportedKraftKafkaVersionException.class, () -> systemUnderTest.start());
146129
}
147130

148131
@Test
@@ -163,8 +146,6 @@ void testWithKafkaLog() {
163146
assertThat(systemUnderTest.getLogs(), CoreMatchers.containsString("INFO"));
164147
assertThat(systemUnderTest.getLogs(), CoreMatchers.containsString("DEBUG"));
165148
assertThat(systemUnderTest.getLogs(), CoreMatchers.containsString("TRACE"));
166-
167-
systemUnderTest.stop();
168149
}
169150

170151
private void verify() throws InterruptedException, ExecutionException, TimeoutException {

0 commit comments

Comments
 (0)