Skip to content

Commit

Permalink
Bump Pulsar version to 3.0.0 (#7016)
Browse files Browse the repository at this point in the history
Co-authored-by: Eddú Meléndez Gonzales <eddu.melendez@gmail.com>
  • Loading branch information
nicoloboschi and eddumelendez committed May 9, 2023
1 parent 6ef107e commit 3616ebf
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 19 deletions.
4 changes: 2 additions & 2 deletions modules/pulsar/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ description = "Testcontainers :: Pulsar"
dependencies {
api project(':testcontainers')

testImplementation group: 'org.apache.pulsar', name: 'pulsar-client', version: '2.11.0'
testImplementation group: 'org.apache.pulsar', name: 'pulsar-client', version: '3.0.0'
testImplementation group: 'org.assertj', name: 'assertj-core', version: '3.24.2'
testImplementation group: 'org.apache.pulsar', name: 'pulsar-client-admin', version: '2.11.0'
testImplementation group: 'org.apache.pulsar', name: 'pulsar-client-admin', version: '3.0.0'
}
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public class PulsarContainer extends GenericContainer<PulsarContainer> {
private static final DockerImageName DEFAULT_IMAGE_NAME = DockerImageName.parse("apachepulsar/pulsar");

@Deprecated
private static final String DEFAULT_TAG = "2.10.0";
private static final String DEFAULT_TAG = "3.0.0";

private final WaitAllStrategy waitAllStrategy = new WaitAllStrategy();

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package org.testcontainers.containers;

import org.apache.pulsar.client.admin.ListTopicsOptions;
import org.apache.pulsar.client.admin.PulsarAdmin;
import org.apache.pulsar.client.admin.PulsarAdminException;
import org.apache.pulsar.client.api.Consumer;
Expand All @@ -13,6 +14,7 @@
import org.testcontainers.utility.DockerImageName;

import java.time.Duration;
import java.util.List;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.TimeUnit;

Expand All @@ -23,14 +25,14 @@ public class PulsarContainerTest {

public static final String TEST_TOPIC = "test_topic";

private static final DockerImageName PULSAR_IMAGE = DockerImageName.parse("apachepulsar/pulsar:2.10.0");
private static final DockerImageName PULSAR_IMAGE = DockerImageName.parse("apachepulsar/pulsar:3.0.0");

@Test
public void testUsage() throws Exception {
try (
// do not use PULSAR_IMAGE to make the doc looks easier
// constructorWithVersion {
PulsarContainer pulsar = new PulsarContainer(DockerImageName.parse("apachepulsar/pulsar:2.10.0"));
PulsarContainer pulsar = new PulsarContainer(DockerImageName.parse("apachepulsar/pulsar:3.0.0"));
// }
) {
pulsar.start();
Expand Down Expand Up @@ -103,31 +105,26 @@ public void testTransactions() throws Exception {
pulsar.start();

try (PulsarAdmin pulsarAdmin = PulsarAdmin.builder().serviceHttpUrl(pulsar.getHttpServiceUrl()).build()) {
assertThat(
pulsarAdmin
.topics()
.getList("pulsar/system")
.contains("persistent://pulsar/system/transaction_coordinator_assign-partition-0")
)
.isTrue();
assertTransactionsTopicCreated(pulsarAdmin);
}
testTransactionFunctionality(pulsar.getPulsarBrokerUrl());
}
}

private void assertTransactionsTopicCreated(PulsarAdmin pulsarAdmin) throws PulsarAdminException {
final List<String> topics = pulsarAdmin
.topics()
.getPartitionedTopicList("pulsar/system", ListTopicsOptions.builder().includeSystemTopic(true).build());
assertThat(topics).contains("persistent://pulsar/system/transaction_coordinator_assign");
}

@Test
public void testTransactionsAndFunctionsWorker() throws Exception {
try (PulsarContainer pulsar = new PulsarContainer(PULSAR_IMAGE).withTransactions().withFunctionsWorker()) {
pulsar.start();

try (PulsarAdmin pulsarAdmin = PulsarAdmin.builder().serviceHttpUrl(pulsar.getHttpServiceUrl()).build();) {
assertThat(
pulsarAdmin
.topics()
.getList("pulsar/system")
.contains("persistent://pulsar/system/transaction_coordinator_assign-partition-0")
)
.isTrue();
assertTransactionsTopicCreated(pulsarAdmin);
assertThat(pulsarAdmin.functions().getFunctions("public", "default")).hasSize(0);
}
testTransactionFunctionality(pulsar.getPulsarBrokerUrl());
Expand Down

0 comments on commit 3616ebf

Please sign in to comment.