Class LauncherDiscoveryRequestBuilder
- java.lang.Object
-
- org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder
-
@API(status=STABLE, since="1.0") public final class LauncherDiscoveryRequestBuilder extends java.lang.ObjectTheLauncherDiscoveryRequestBuilderprovides a light-weight DSL for generating aLauncherDiscoveryRequest.Example
import static org.junit.platform.engine.discovery.DiscoverySelectors.*; import static org.junit.platform.engine.discovery.ClassNameFilter.*; import static org.junit.platform.launcher.EngineFilter.*; import static org.junit.platform.launcher.TagFilter.*; // ... LauncherDiscoveryRequestBuilder.request() .selectors( selectPackage("org.example.user"), selectClass("org.example.payment.PaymentTests"), selectClass(ShippingTests.class), selectMethod("org.example.order.OrderTests#test1"), selectMethod("org.example.order.OrderTests#test2()"), selectMethod("org.example.order.OrderTests#test3(java.lang.String)"), selectMethod("org.example.order.OrderTests", "test4"), selectMethod(OrderTests.class, "test5"), selectMethod(OrderTests.class, testMethod), selectClasspathRoots(Collections.singleton(Paths.get("/my/local/path1"))), selectUniqueId("unique-id-1"), selectUniqueId("unique-id-2") ) .filters( includeEngines("junit-jupiter", "spek"), // excludeEngines("junit-vintage"), includeTags("fast"), // excludeTags("slow"), includeClassNamePatterns(".*Test[s]?") // includeClassNamePatterns("org\.example\.tests.*") ) .configurationParameter("key1", "value1") .configurationParameters(configParameterMap) .build();- Since:
- 1.0
- See Also:
DiscoverySelectors,ClassNameFilter,EngineFilter,TagFilter
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,java.lang.String>configurationParametersprivate java.util.List<java.lang.String>configurationParametersResourcesstatic java.lang.StringDEFAULT_DISCOVERY_LISTENER_CONFIGURATION_PROPERTY_NAMEProperty name used to set the default discovery listener that is added to all : "junit.platform.discovery.listener.default"private static java.lang.StringDEFAULT_DISCOVERY_LISTENER_CONFIGURATION_PROPERTY_VALUEprivate java.util.List<DiscoveryFilter<?>>discoveryFiltersprivate java.util.List<LauncherDiscoveryListener>discoveryListenersprivate java.util.List<EngineFilter>engineFiltersprivate booleanimplicitConfigurationParametersEnabledprivate OutputDirectoryCreatoroutputDirectoryCreatorprivate ConfigurationParametersparentConfigurationParametersprivate java.util.List<PostDiscoveryFilter>postDiscoveryFiltersprivate java.util.List<DiscoverySelector>selectors
-
Constructor Summary
Constructors Constructor Description LauncherDiscoveryRequestBuilder()Deprecated.Userequest()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description LauncherDiscoveryRequestbuild()Build theLauncherDiscoveryRequestthat has been configured via this builder.private LauncherConfigurationParametersbuildLauncherConfigurationParameters()LauncherDiscoveryRequestBuilderconfigurationParameter(java.lang.String key, java.lang.String value)Add the supplied configuration parameter to the request.LauncherDiscoveryRequestBuilderconfigurationParameters(java.util.Map<java.lang.String,java.lang.String> configurationParameters)Add all supplied configuration parameters to the request.LauncherDiscoveryRequestBuilderconfigurationParametersResources(java.lang.String... paths)Add all of the supplied configuration parameters resource files to the request.LauncherDiscoveryRequestBuilderenableImplicitConfigurationParameters(boolean enabled)Configure whether implicit configuration parameters should be considered.LauncherDiscoveryRequestBuilderfilters(Filter<?>... filters)Add all suppliedfiltersto the request.private LauncherDiscoveryListenergetDefaultLauncherDiscoveryListener(ConfigurationParameters configurationParameters)private LauncherDiscoveryListenergetLauncherDiscoveryListener(ConfigurationParameters configurationParameters)private OutputDirectoryCreatorgetOutputDirectoryCreator(LauncherConfigurationParameters configurationParameters)LauncherDiscoveryRequestBuilderlisteners(LauncherDiscoveryListener... listeners)Add all supplied discovery listeners to the request.LauncherDiscoveryRequestBuilderoutputDirectoryCreator(OutputDirectoryCreator outputDirectoryCreator)Set theOutputDirectoryCreatorto use for the request.LauncherDiscoveryRequestBuilderoutputDirectoryProvider(OutputDirectoryProvider outputDirectoryProvider)Deprecated.Please useoutputDirectoryCreator(OutputDirectoryCreator)insteadLauncherDiscoveryRequestBuilderparentConfigurationParameters(ConfigurationParameters parentConfigurationParameters)Set the parent configuration parameters to use for the request.static LauncherDiscoveryRequestBuilderrequest()Create a newLauncherDiscoveryRequestBuilder.LauncherDiscoveryRequestBuilderselectors(java.util.List<? extends DiscoverySelector> selectors)Add all suppliedselectorsto the request.LauncherDiscoveryRequestBuilderselectors(DiscoverySelector... selectors)Add all suppliedselectorsto the request.private voidstoreFilter(Filter<?> filter)
-
-
-
Field Detail
-
DEFAULT_DISCOVERY_LISTENER_CONFIGURATION_PROPERTY_NAME
public static final java.lang.String DEFAULT_DISCOVERY_LISTENER_CONFIGURATION_PROPERTY_NAME
Property name used to set the default discovery listener that is added to all : "junit.platform.discovery.listener.default"Supported Values
Supported values are
"logging"and"abortOnFailure".If not specified, the default is "abortOnFailure".
- See Also:
- Constant Field Values
-
DEFAULT_DISCOVERY_LISTENER_CONFIGURATION_PROPERTY_VALUE
private static final java.lang.String DEFAULT_DISCOVERY_LISTENER_CONFIGURATION_PROPERTY_VALUE
- See Also:
- Constant Field Values
-
selectors
private final java.util.List<DiscoverySelector> selectors
-
engineFilters
private final java.util.List<EngineFilter> engineFilters
-
discoveryFilters
private final java.util.List<DiscoveryFilter<?>> discoveryFilters
-
postDiscoveryFilters
private final java.util.List<PostDiscoveryFilter> postDiscoveryFilters
-
configurationParameters
private final java.util.Map<java.lang.String,java.lang.String> configurationParameters
-
configurationParametersResources
private final java.util.List<java.lang.String> configurationParametersResources
-
discoveryListeners
private final java.util.List<LauncherDiscoveryListener> discoveryListeners
-
implicitConfigurationParametersEnabled
private boolean implicitConfigurationParametersEnabled
-
parentConfigurationParameters
private ConfigurationParameters parentConfigurationParameters
-
outputDirectoryCreator
private OutputDirectoryCreator outputDirectoryCreator
-
-
Constructor Detail
-
LauncherDiscoveryRequestBuilder
@API(status=DEPRECATED, since="1.8") @Deprecated public LauncherDiscoveryRequestBuilder()Deprecated.Userequest()
-
-
Method Detail
-
request
public static LauncherDiscoveryRequestBuilder request()
Create a newLauncherDiscoveryRequestBuilder.- Returns:
- a new builder
-
selectors
public LauncherDiscoveryRequestBuilder selectors(DiscoverySelector... selectors)
Add all suppliedselectorsto the request.- Parameters:
selectors- theDiscoverySelectorsto add; nevernull- Returns:
- this builder for method chaining
-
selectors
public LauncherDiscoveryRequestBuilder selectors(java.util.List<? extends DiscoverySelector> selectors)
Add all suppliedselectorsto the request.- Parameters:
selectors- theDiscoverySelectorsto add; nevernull- Returns:
- this builder for method chaining
-
filters
public LauncherDiscoveryRequestBuilder filters(Filter<?>... filters)
Add all suppliedfiltersto the request.The
filtersare combined using AND semantics, i.e. all of them have to include a resource for it to end up in the test plan.Warning: be cautious when registering multiple competing
includeEngineFiltersor multiple competingexcludeEngineFiltersfor the same discovery request since doing so will likely lead to undesirable results (i.e., zero engines being active).- Parameters:
filters- theFilters to add; nevernull- Returns:
- this builder for method chaining
-
configurationParameter
public LauncherDiscoveryRequestBuilder configurationParameter(java.lang.String key, java.lang.String value)
Add the supplied configuration parameter to the request.- Parameters:
key- the configuration parameter key under which to store the value; nevernullor blankvalue- the value to store- Returns:
- this builder for method chaining
-
configurationParameters
public LauncherDiscoveryRequestBuilder configurationParameters(java.util.Map<java.lang.String,java.lang.String> configurationParameters)
Add all supplied configuration parameters to the request.- Parameters:
configurationParameters- the map of configuration parameters to add; nevernull- Returns:
- this builder for method chaining
- See Also:
configurationParameter(String, String)
-
configurationParametersResources
public LauncherDiscoveryRequestBuilder configurationParametersResources(java.lang.String... paths)
Add all of the supplied configuration parameters resource files to the request.- Parameters:
paths- the classpath locations of the properties files nevernull- Returns:
- this builder for method chaining
-
parentConfigurationParameters
@API(status=STABLE, since="1.10") public LauncherDiscoveryRequestBuilder parentConfigurationParameters(ConfigurationParameters parentConfigurationParameters)Set the parent configuration parameters to use for the request.Any explicit configuration parameters configured via
configurationParameter(String, String)orconfigurationParameters(Map)takes precedence over the supplied configuration parameters.- Parameters:
parentConfigurationParameters- the parent instance to use for looking up configuration parameters that have not been explicitly configured; nevernull- Returns:
- this builder for method chaining
- Since:
- 1.8
- See Also:
configurationParameter(String, String),configurationParameters(Map)
-
enableImplicitConfigurationParameters
@API(status=STABLE, since="1.10") public LauncherDiscoveryRequestBuilder enableImplicitConfigurationParameters(boolean enabled)Configure whether implicit configuration parameters should be considered.By default, in addition to those parameters that are passed explicitly to this builder, configuration parameters are read from system properties and from the
junit-platform.propertiesclasspath resource. Passingfalseto this method, disables the latter two sources so that only explicit configuration parameters are taken into account.- Parameters:
enabled-trueif implicit configuration parameters should be considered- Returns:
- this builder for method chaining
- Since:
- 1.7
- See Also:
configurationParameter(String, String),configurationParameters(Map)
-
listeners
@API(status=STABLE, since="1.10") public LauncherDiscoveryRequestBuilder listeners(LauncherDiscoveryListener... listeners)Add all supplied discovery listeners to the request.In addition to the listeners registered using this method, this builder will add a default listener to this request that can be specified using the "junit.platform.discovery.listener.default" configuration parameter.
- Parameters:
listeners- theLauncherDiscoveryListenersto add; nevernull- Returns:
- this builder for method chaining
- Since:
- 1.6
- See Also:
LauncherDiscoveryListener,LauncherDiscoveryListeners,DEFAULT_DISCOVERY_LISTENER_CONFIGURATION_PROPERTY_NAME
-
outputDirectoryProvider
@API(status=DEPRECATED, since="1.14") @Deprecated public LauncherDiscoveryRequestBuilder outputDirectoryProvider(OutputDirectoryProvider outputDirectoryProvider)Deprecated.Please useoutputDirectoryCreator(OutputDirectoryCreator)insteadSet theOutputDirectoryProviderto use for the request.If not specified, a default provider will be used that can be configured via the "junit.platform.reporting.output.dir" configuration parameter.
- Parameters:
outputDirectoryProvider- the output directory provider to use; nevernull- Returns:
- this builder for method chaining
- Since:
- 1.12
- See Also:
OutputDirectoryProvider,LauncherConstants.OUTPUT_DIR_PROPERTY_NAME
-
outputDirectoryCreator
@API(status=MAINTAINED, since="1.14") public LauncherDiscoveryRequestBuilder outputDirectoryCreator(OutputDirectoryCreator outputDirectoryCreator)Set theOutputDirectoryCreatorto use for the request.If not specified, a default implementation will be used that can be configured via the "junit.platform.reporting.output.dir" configuration parameter.
- Parameters:
outputDirectoryCreator- the output directory creator to use; nevernull- Returns:
- this builder for method chaining
- Since:
- 1.14
- See Also:
OutputDirectoryCreator,LauncherConstants.OUTPUT_DIR_PROPERTY_NAME
-
storeFilter
private void storeFilter(Filter<?> filter)
-
build
public LauncherDiscoveryRequest build()
Build theLauncherDiscoveryRequestthat has been configured via this builder.
-
getOutputDirectoryCreator
private OutputDirectoryCreator getOutputDirectoryCreator(LauncherConfigurationParameters configurationParameters)
-
buildLauncherConfigurationParameters
private LauncherConfigurationParameters buildLauncherConfigurationParameters()
-
getLauncherDiscoveryListener
private LauncherDiscoveryListener getLauncherDiscoveryListener(ConfigurationParameters configurationParameters)
-
getDefaultLauncherDiscoveryListener
private LauncherDiscoveryListener getDefaultLauncherDiscoveryListener(ConfigurationParameters configurationParameters)
-
-