Skip to content

Commit

Permalink
Merge pull request #552 from cescoffier/vertx-4.3.1
Browse files Browse the repository at this point in the history
Update stack to Vert.x 4.3.1
  • Loading branch information
cescoffier authored Jun 25, 2022
2 parents 6ca2bb3 + 151aa69 commit 11b4a6d
Show file tree
Hide file tree
Showing 17 changed files with 308 additions and 48 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
<properties>
<sonar.coverage.jacoco.xmlReportPaths>target/site/jacoco/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>

<vertx.version>4.2.7</vertx.version>
<vertx.version>4.3.1</vertx.version>
<mutiny.version>1.6.0</mutiny.version>
<jackson.version>2.13.3</jackson.version>
<reactive-streams.version>1.0.4</reactive-streams.version>
Expand Down
1 change: 1 addition & 0 deletions vertx-mutiny-clients/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@
<module>vertx-mutiny-service-discovery-bridge-docker-links</module>
<module>vertx-mutiny-service-discovery-bridge-kubernetes</module>
<module>vertx-mutiny-service-discovery-bridge-zookeeper</module>
<module>vertx-mutiny-uri-template</module>
</modules>

</project>
2 changes: 1 addition & 1 deletion vertx-mutiny-clients/vertx-mutiny-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<properties>
<gen-source-groupId>io.vertx</gen-source-groupId>
<gen-source-artifactId>vertx-core</gen-source-artifactId>
<gen-source-version>4.2.7</gen-source-version>
<gen-source-version>${vertx.version}</gen-source-version>
<gen.output>${project.build.directory}/sources/java</gen.output>
</properties>

Expand Down
5 changes: 5 additions & 0 deletions vertx-mutiny-clients/vertx-mutiny-health-checks/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,11 @@
<artifactId>smallrye-mutiny-vertx-web</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>smallrye-mutiny-vertx-uri-template</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>junit</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,18 @@
import static org.hamcrest.CoreMatchers.notNullValue;
import static org.hamcrest.MatcherAssert.assertThat;

import java.time.Duration;
import java.util.concurrent.atomic.AtomicReference;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.BeforeClass;
import org.junit.Test;
import org.testcontainers.containers.BindMode;
import org.testcontainers.containers.GenericContainer;
import org.testcontainers.containers.wait.strategy.Wait;
import org.testcontainers.shaded.org.awaitility.Awaitility;
import org.testcontainers.utility.MountableFile;

import io.netty.handler.codec.mqtt.MqttConnectReturnCode;
import io.vertx.mqtt.MqttClientOptions;
Expand All @@ -19,12 +24,24 @@

public class MqttClientTest {

@ClassRule
public static GenericContainer<?> mosquitto = new GenericContainer<>("eclipse-mosquitto:2.0")
public static GenericContainer<?> container = new GenericContainer<>("eclipse-mosquitto:2.0")
.withExposedPorts(1883)
.withClasspathResourceMapping("mosquitto.conf", "/mosquitto/config/mosquitto.conf", BindMode.READ_ONLY)
.withLogConsumer(of -> System.out.print(of.getUtf8String()))
.withCopyFileToContainer(MountableFile.forClasspathResource("mosquitto.conf"), "/mosquitto/config/mosquitto.conf")
.waitingFor(Wait.forListeningPort())
.waitingFor(Wait.forLogMessage(".*mosquitto .* running.*", 1));
private Vertx vertx;

@BeforeClass
public static void init() {
container.start();
}

@AfterClass
public static void shutdown() {
container.stop();
}

Vertx vertx;

@Before
public void setUp() {
Expand All @@ -39,12 +56,26 @@ public void tearDown() {

@Test
public void test() {
MqttClient client = MqttClient.create(vertx, new MqttClientOptions().setAutoGeneratedClientId(true));
MqttConnAckMessage connection = client
.connect(mosquitto.getMappedPort(1883), mosquitto.getContainerIpAddress())
.await().indefinitely();
assertThat(connection, is(notNullValue()));
assertThat(connection.code(), is(MqttConnectReturnCode.CONNECTION_ACCEPTED));
MqttClient client = MqttClient.create(vertx, new MqttClientOptions()
.setAutoGeneratedClientId(true));

// Unfortunately, the latest mosquitto are taking a lot of time to accept connection, without any way to find out
// need a retry loop
AtomicReference<MqttConnAckMessage> ref = new AtomicReference<>();
Awaitility.await().atMost(Duration.ofSeconds(30))
.until(() -> {
try {
ref.set(client
.connect(container.getMappedPort(1883), container.getHost())
.await().indefinitely());
} catch (Exception e) {
return false;
}
return true;
});

assertThat(ref.get(), is(notNullValue()));
assertThat(ref.get().code(), is(MqttConnectReturnCode.CONNECTION_ACCEPTED));
client.disconnectAndAwait();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,7 @@ listener 1883
#
socket_domain ipv4


# Bind the listener to a specific interface. This is similar to
# the [ip address/host name] part of the listener definition, but is useful
# when an interface has multiple addresses or the address may change. If used
Expand Down Expand Up @@ -406,7 +407,7 @@ socket_domain ipv4
# subscriptions, currently in-flight messages and retained
# messages.
# retained_persistence is a synonym for this option.
#persistence false
persistence true

# The filename to use for the persistent database, not including
# the path.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package io.vertx.mutiny.postgresql;

import static org.assertj.core.api.Assertions.assertThat;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.testcontainers.containers.PostgreSQLContainer;

import io.vertx.mutiny.core.Vertx;

public class PGTestBase {

public static PostgreSQLContainer<?> container = new PostgreSQLContainer<>();

@BeforeClass
public static void init() {
container.start();
}

@AfterClass
public static void shutdown() {
container.stop();
}

Vertx vertx;

@Before
public void setUp() {
vertx = Vertx.vertx();
assertThat(vertx).isNotNull();
}

@After
public void tearDown() {
vertx.closeAndAwait();
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@
import static org.assertj.core.api.Assertions.assertThat;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.BeforeClass;
import org.testcontainers.containers.PostgreSQLContainer;

import io.vertx.mutiny.core.Vertx;
Expand All @@ -15,10 +16,19 @@

public class PgInTransactionMultiTest extends TransactionMultiTest {

@ClassRule
public static PostgreSQLContainer<?> container = new PostgreSQLContainer<>("postgres:latest");
public static PostgreSQLContainer<?> container = new PostgreSQLContainer<>();

private Vertx vertx;
@BeforeClass
public static void init() {
container.start();
}

@AfterClass
public static void shutdown() {
container.stop();
}

Vertx vertx;

@Before
public void setUp() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@
import static org.assertj.core.api.Assertions.assertThat;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.BeforeClass;
import org.testcontainers.containers.PostgreSQLContainer;

import io.vertx.mutiny.core.Vertx;
Expand All @@ -15,10 +16,19 @@

public class PgInTransactionUniTest extends TransactionUniTest {

@ClassRule
public static PostgreSQLContainer<?> container = new PostgreSQLContainer<>("postgres:latest");
public static PostgreSQLContainer<?> container = new PostgreSQLContainer<>();

private Vertx vertx;
@BeforeClass
public static void init() {
container.start();
}

@AfterClass
public static void shutdown() {
container.stop();
}

Vertx vertx;

@Before
public void setUp() {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
package io.vertx.mutiny.postgresql;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.BeforeClass;
import org.testcontainers.containers.PostgreSQLContainer;

import io.vertx.mutiny.core.Vertx;
Expand All @@ -13,10 +14,19 @@

public class PgUsingConnectionSafetyTest extends UsingConnectionSafetyTest {

@ClassRule
public static PostgreSQLContainer<?> container = new PostgreSQLContainer<>("postgres:latest");
public static PostgreSQLContainer<?> container = new PostgreSQLContainer<>();

private Vertx vertx;
@BeforeClass
public static void init() {
container.start();
}

@AfterClass
public static void shutdown() {
container.stop();
}

Vertx vertx;
private int maxSize;

@Before
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,35 +3,17 @@
import static org.assertj.core.api.Assertions.assertThat;

import org.junit.*;
import org.testcontainers.containers.PostgreSQLContainer;

import io.smallrye.mutiny.Uni;
import io.smallrye.mutiny.tuples.Tuple2;
import io.vertx.mutiny.core.Vertx;
import io.vertx.mutiny.pgclient.PgPool;
import io.vertx.mutiny.sqlclient.Pool;
import io.vertx.mutiny.sqlclient.Row;
import io.vertx.mutiny.sqlclient.RowSet;
import io.vertx.pgclient.PgConnectOptions;
import io.vertx.sqlclient.PoolOptions;

public class PostGreSQLClientTest {

@ClassRule
public static PostgreSQLContainer<?> container = new PostgreSQLContainer<>();

private Vertx vertx;

@Before
public void setUp() {
vertx = Vertx.vertx();
assertThat(vertx).isNotNull();
}

@After
public void tearDown() {
vertx.closeAndAwait();
}
public class PostGreSQLClientTest extends PGTestBase {

@Test
public void testMutinyAPI() {
Expand Down
Loading

0 comments on commit 11b4a6d

Please sign in to comment.