JUnitTaskMirror (Apache Ant API)
Date: 2021-07-10

org.apache.tools.ant.taskdefs.optional.junit

## Interface JUnitTaskMirror

- All Known Implementing Classes:
    JUnitTaskMirrorImpl

      public interface JUnitTaskMirror

  Handles the portions of `JUnitTask` which need to directly access actual JUnit classes, so that junit.jar need not be on Ant's startup classpath. Neither JUnitTask.java nor JUnitTaskMirror.java nor their transitive static deps may import any junit.** classes! Specifically, need to not refer to - JUnitResultFormatter or its subclasses - JUnitVersionHelper - JUnitTestRunner Cf. JUnitTask.SplitLoader#isSplit(String) Public only to permit access from classes in this package; do not use directly.
  Since:
    1.7
  See Also:
    "bug #38799"

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `JUnitTaskMirror.JUnitResultFormatterMirror` The interface that JUnitResultFormatter extends.
    `static interface` | `JUnitTaskMirror.JUnitTestRunnerMirror` Interface that test runners implement.
    `static interface` | `JUnitTaskMirror.SummaryJUnitResultFormatterMirror` The interface that SummaryJUnitResultFormatter extends.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addVmExit(JUnitTest test, JUnitTaskMirror.JUnitResultFormatterMirror formatter, java.io.OutputStream out, java.lang.String message, java.lang.String testCase)` Add the formatter to be called when the jvm exits before the test suite finishes.
    `JUnitTaskMirror.JUnitTestRunnerMirror` | `newJUnitTestRunner(JUnitTest test, java.lang.String[] methods, boolean haltOnError, boolean filterTrace, boolean haltOnFailure, boolean showOutput, boolean logTestListenerEvents, AntClassLoader classLoader)` Create a new test runner for a test.
    `JUnitTaskMirror.SummaryJUnitResultFormatterMirror` | `newSummaryJUnitResultFormatter()` Create a summary result formatter.

- - ### Method Detail

    - #### addVmExit

          void addVmExit(JUnitTest test,
                         JUnitTaskMirror.JUnitResultFormatterMirror formatter,
                         java.io.OutputStream out,
                         java.lang.String message,
                         java.lang.String testCase)

      Add the formatter to be called when the jvm exits before the test suite finishes.
      Parameters:
        `test` - the test.
        `formatter` - the formatter to use.
        `out` - the output stream to use.
        `message` - the message to write out.
        `testCase` - the name of the test.

    - #### newJUnitTestRunner

          JUnitTaskMirror.JUnitTestRunnerMirror newJUnitTestRunner(JUnitTest test,
                                                                   java.lang.String[] methods,
                                                                   boolean haltOnError,
                                                                   boolean filterTrace,
                                                                   boolean haltOnFailure,
                                                                   boolean showOutput,
                                                                   boolean logTestListenerEvents,
                                                                   AntClassLoader classLoader)

      Create a new test runner for a test.
      Parameters:
        `test` - the test to run.
        `methods` - names of the test methods to be run.
        `haltOnError` - if true halt the tests if an error occurs.
        `filterTrace` - if true filter the stack traces.
        `haltOnFailure` - if true halt the test if a failure occurs.
        `showOutput` - if true show output.
        `logTestListenerEvents` - if true log test listener events.
        `classLoader` - the classloader to use to create the runner.
      Returns:
        the test runner.

    - #### newSummaryJUnitResultFormatter

          JUnitTaskMirror.SummaryJUnitResultFormatterMirror newSummaryJUnitResultFormatter()

      Create a summary result formatter.
      Returns:
        the created formatter.