Package io.vertx.ext.unit.junit
Class RunTestOnContext
- java.lang.Object
-
- io.vertx.ext.unit.junit.RunTestOnContext
-
- All Implemented Interfaces:
org.junit.rules.TestRule
public class RunTestOnContext extends Object implements org.junit.rules.TestRule
A JUnit rule that runs tests on a Vert.x context. When used as aRule
a new context is created for each tested method, the context will be same for the before and after method, but different for all the tested methods. When used as aClassRule
, a single context is created for all the tested method, the beforeClass and afterClass method will also executed in this context.- Author:
- Julien Viet
-
-
Constructor Summary
Constructors Constructor Description RunTestOnContext()
Create a new rule managing a Vertx instance created with default options.RunTestOnContext(Future<Vertx> createVertx)
Create a new rule with an asynchronous supplier for creating a Vert.x instance.RunTestOnContext(Future<Vertx> createVertx, java.util.function.BiConsumer<Vertx,java.util.function.Consumer<Void>> closeVertx)
Create a new rule with an asynchronous supplier and consumer for creating and closing a Vert.x instance.RunTestOnContext(VertxOptions options)
Create a new rule managing a Vertx instance created with specified options.RunTestOnContext(java.util.function.Supplier<Vertx> createVertx)
Create a new rule with supplier for creating a Vert.x instance.RunTestOnContext(java.util.function.Supplier<Vertx> createVertx, java.util.function.BiConsumer<Vertx,java.util.function.Consumer<Void>> closeVertx)
Create a new rule with supplier/consumer for creating/closing a Vert.x instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.junit.runners.model.Statement
apply(org.junit.runners.model.Statement base, org.junit.runner.Description description)
Vertx
vertx()
Retrieves the current Vert.x instance, this value varies according to the test life cycle.
-
-
-
Constructor Detail
-
RunTestOnContext
public RunTestOnContext()
Create a new rule managing a Vertx instance created with default options. The Vert.x instance is created and closed for each test.
-
RunTestOnContext
public RunTestOnContext(VertxOptions options)
Create a new rule managing a Vertx instance created with specified options. The Vert.x instance is created and closed for each test.- Parameters:
options
- the vertx options
-
RunTestOnContext
public RunTestOnContext(java.util.function.Supplier<Vertx> createVertx)
Create a new rule with supplier for creating a Vert.x instance. The lambda are invoked for each test.- Parameters:
createVertx
- the create Vert.x supplier
-
RunTestOnContext
public RunTestOnContext(java.util.function.Supplier<Vertx> createVertx, java.util.function.BiConsumer<Vertx,java.util.function.Consumer<Void>> closeVertx)
Create a new rule with supplier/consumer for creating/closing a Vert.x instance. The lambda are invoked for each test. ThecloseVertx
lambda should invoke the consumer with null when thevertx
instance is closed.- Parameters:
createVertx
- the create Vert.x suppliercloseVertx
- the close Vert.x consumer
-
RunTestOnContext
public RunTestOnContext(Future<Vertx> createVertx)
Create a new rule with an asynchronous supplier for creating a Vert.x instance. The lambda are invoked for each test.- Parameters:
createVertx
- the asynchronous create Vert.x supplier
-
RunTestOnContext
public RunTestOnContext(Future<Vertx> createVertx, java.util.function.BiConsumer<Vertx,java.util.function.Consumer<Void>> closeVertx)
Create a new rule with an asynchronous supplier and consumer for creating and closing a Vert.x instance. The lambda are invoked for each test. ThecloseVertx
lambda should invoke the consumer with null when thevertx
instance is closed.- Parameters:
createVertx
- the asynchronous Vert.x suppliercloseVertx
- the close Vert.x consumer
-
-
Method Detail
-
vertx
public Vertx vertx()
Retrieves the current Vert.x instance, this value varies according to the test life cycle.- Returns:
- the vertx object
-
apply
public org.junit.runners.model.Statement apply(org.junit.runners.model.Statement base, org.junit.runner.Description description)
- Specified by:
apply
in interfaceorg.junit.rules.TestRule
-
-