java-tutorials/vertx-modules/vertx/src/test/java/com/baeldung/SimpleServerVerticleUnitTest.java
panos-kakos f391cba986 [Java 11503] (#12626)
* [JAVA-11503] Created new vertx-modules

* [JAVA-11503] Moved vertx(sub-module) to vertx-modules(parent)

* [JAVA-11503] Moved spring-vertx(sub-module) to vertx-modules(parent)

* [JAVA-11503] Moved vertx-and-java(sub-module) to vertx-modules(parent)

* [JAVA-11503] deleted modules that were moved

Co-authored-by: panagiotiskakos <panagiotis.kakos@libra-is.com>
2022-08-25 21:18:34 +05:30

56 lines
1.6 KiB
Java

package com.baeldung;
import io.vertx.core.DeploymentOptions;
import io.vertx.core.Vertx;
import io.vertx.core.json.JsonObject;
import io.vertx.ext.unit.Async;
import io.vertx.ext.unit.TestContext;
import io.vertx.ext.unit.junit.VertxUnitRunner;
import java.io.IOException;
import java.net.ServerSocket;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@RunWith(VertxUnitRunner.class)
public class SimpleServerVerticleUnitTest {
private Vertx vertx;
private int port = 8081;
@Before
public void setup(TestContext testContext) throws IOException {
vertx = Vertx.vertx();
// Pick an available and random
ServerSocket socket = new ServerSocket(0);
port = socket.getLocalPort();
socket.close();
DeploymentOptions options = new DeploymentOptions().setConfig(new JsonObject().put("http.port", port));
vertx.deployVerticle(SimpleServerVerticle.class.getName(), options, testContext.asyncAssertSuccess());
}
@After
public void tearDown(TestContext testContext) {
vertx.close(testContext.asyncAssertSuccess());
}
@Test
public void whenReceivedResponse_thenSuccess(TestContext testContext) {
final Async async = testContext.async();
vertx.createHttpClient()
.getNow(port, "localhost", "/", response -> response.handler(responseBody -> {
testContext.assertTrue(responseBody.toString()
.contains("Welcome"));
async.complete();
}));
}
}