Package org.apache.tools.ant.taskdefs.optional.junitlauncher.confined

# Class JUnitLauncherTask

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask

All Implemented Interfaces:
  `Cloneable`

public class JUnitLauncherTask extends Task
An Ant `Task` responsible for launching the JUnit platform for running tests. This requires a minimum of JUnit 5, since that's the version in which the JUnit platform launcher APIs were introduced.

This task in itself doesn't run the JUnit tests, instead the sole responsibility of this task is to setup the JUnit platform launcher, build requests, launch those requests and then parse the result of the execution to present in a way that's been configured on this Ant task.

Furthermore, this task allows users control over which classes to select for passing on to the JUnit 5 platform for test execution. It however, is solely the JUnit 5 platform, backed by test engines that decide and execute the tests.

See Also:
  - JUnit 5 documentation

## Field Summary

### Fields inherited from class org.apache.tools.ant.Task

`target, taskName, taskType, wrapper`

### Fields inherited from class org.apache.tools.ant.ProjectComponent

`description, location, project`

## Constructor Summary

Constructors
Constructor
Description
`JUnitLauncherTask()`

## Method Summary

Modifier and Type
Method
Description
`void`
`addConfiguredClassPath(Path path)`
Adds the `Path` to the classpath which will be used for execution of the tests
`void`
`addConfiguredListener(ListenerDefinition listener)`
Adds a `listener` which will be enrolled for listening to test execution events
`void`
`addConfiguredTest(SingleTestClass test)`
Adds a `SingleTestClass` that will be passed on to the underlying JUnit platform for possible execution of the test
`void`
`addConfiguredTestClasses(TestClasses testClasses)`
Adds `TestClasses` that will be passed on to the underlying JUnit platform for possible execution of the tests
`protected ExecuteWatchdog`
`createExecuteWatchdog(long timeout)`
`void`
`execute()`
Called by the project to let the task do its work.
`void`
`setExcludeTags(String excludes)`
Tags to exclude.
`void`
`setFailureProperty(String failureProperty)`
`void`
`setHaltonfailure(boolean haltonfailure)`
`void`
`setIncludeTags(String includes)`
Tags to include.
`void`
`setPrintSummary(boolean printSummary)`

### Methods inherited from class org.apache.tools.ant.Task

`bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

### Methods inherited from class org.apache.tools.ant.ProjectComponent

`clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### JUnitLauncherTask

public JUnitLauncherTask()

## Method Details

### execute

public void execute() throws BuildException
Description copied from class: `Task`
Called by the project to let the task do its work. This method may be called more than once, if the task is invoked more than once. For example, if target1 and target2 both depend on target3, then running "ant target1 target2" will run all tasks in target3 twice.

Overrides:
  `execute` in class `Task`
Throws:
  `BuildException` - if something goes wrong with the build.

### addConfiguredClassPath

public void addConfiguredClassPath(Path path)
Adds the `Path` to the classpath which will be used for execution of the tests

Parameters:
  `path` - The classpath

### addConfiguredTest

public void addConfiguredTest(SingleTestClass test)
Adds a `SingleTestClass` that will be passed on to the underlying JUnit platform for possible execution of the test

Parameters:
  `test` - The test

### addConfiguredTestClasses

public void addConfiguredTestClasses(TestClasses testClasses)
Adds `TestClasses` that will be passed on to the underlying JUnit platform for possible execution of the tests

Parameters:
  `testClasses` - The test classes

### addConfiguredListener

public void addConfiguredListener(ListenerDefinition listener)
Adds a `listener` which will be enrolled for listening to test execution events

Parameters:
  `listener` - The listener

### setHaltonfailure

public void setHaltonfailure(boolean haltonfailure)

### setFailureProperty

public void setFailureProperty(String failureProperty)

### setPrintSummary

public void setPrintSummary(boolean printSummary)

### setIncludeTags

public void setIncludeTags(String includes)
Tags to include. Will trim each tag.

Parameters:
  `includes` - comma separated list of tags to include while running the tests.
Since:
  Ant 1.10.7

### setExcludeTags

public void setExcludeTags(String excludes)
Tags to exclude. Will trim each tag.

Parameters:
  `excludes` - comma separated list of tags to exclude while running the tests.
Since:
  Ant 1.10.7

### createExecuteWatchdog

protected ExecuteWatchdog createExecuteWatchdog(long timeout)