TestResultFormatter (Apache Ant API)
Description: declaration: package: org.apache.tools.ant.taskdefs.optional.junitlauncher, interface: TestResultFormatter

# Interface TestResultFormatter

All Superinterfaces:
  `AutoCloseable, Closeable, org.junit.platform.launcher.TestExecutionListener`

public interface TestResultFormatter extends org.junit.platform.launcher.TestExecutionListener, Closeable
A `TestExecutionListener` which lets implementing classes format and write out the test execution results.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `setContext(TestExecutionContext context)`
  This method will be invoked by the `junitlauncher` and will be passed a `TestExecutionContext`.
  `void`
  `setDestination(OutputStream os)`
  This method will be invoked by the `junitlauncher` and will be passed the `OutputStream` to a file, to which the formatted result is expected to be written to.
  `void`
  `setUseLegacyReportingName(boolean useLegacyReportingName)`
  This method will be invoked by the `junitlauncher` to let the result formatter implementation know whether or not to use JUnit 4 style, legacy reporting names for test identifiers that get displayed in the test reports.
  `default void`
  `sysErrAvailable(byte[] data)`
  This method will be invoked by the `junitlauncher`, regularly/multiple times, as and when any content is generated on the standard error stream during the test execution.
  `default void`
  `sysOutAvailable(byte[] data)`
  This method will be invoked by the `junitlauncher`, regularly/multiple times, as and when any content is generated on the standard output stream during the test execution.

  ### Methods inherited from interface Closeable

  `close`

  ### Methods inherited from interface org.junit.platform.launcher.TestExecutionListener

  `dynamicTestRegistered, executionFinished, executionSkipped, executionStarted, reportingEntryPublished, testPlanExecutionFinished, testPlanExecutionStarted`

- ## Method Details

  - ### setDestination

    void setDestination(OutputStream os)
    This method will be invoked by the `junitlauncher` and will be passed the `OutputStream` to a file, to which the formatted result is expected to be written to.

    This method will be called once, early on, during the initialization of this `TestResultFormatter`, typically before the test execution itself has started.

    Parameters:
      `os` - The output stream to which to write out the result

  - ### setContext

    void setContext(TestExecutionContext context)
    This method will be invoked by the `junitlauncher` and will be passed a `TestExecutionContext`. This allows the `TestResultFormatter` to have access to any additional contextual information to use in the test reports.
    Parameters:
      `context` - The context of the execution of the test

  - ### setUseLegacyReportingName

    void setUseLegacyReportingName(boolean useLegacyReportingName)
    This method will be invoked by the `junitlauncher` to let the result formatter implementation know whether or not to use JUnit 4 style, legacy reporting names for test identifiers that get displayed in the test reports. Result formatter implementations are allowed to default to a specific reporting style for test identifiers, if this method isn't invoked.
    Parameters:
      `useLegacyReportingName` - `true` if legacy reporting name is to be used, `false` otherwise.
    Since:
      Ant 1.10.10

  - ### sysOutAvailable

    default void sysOutAvailable(byte[] data)
    This method will be invoked by the `junitlauncher`, regularly/multiple times, as and when any content is generated on the standard output stream during the test execution. This method will be only be called if the `sendSysOut` attribute of the `listener`, to which this `TestResultFormatter` is configured for, is enabled
    Parameters:
      `data` - The content generated on standard output stream

  - ### sysErrAvailable

    default void sysErrAvailable(byte[] data)
    This method will be invoked by the `junitlauncher`, regularly/multiple times, as and when any content is generated on the standard error stream during the test execution. This method will be only be called if the `sendSysErr` attribute of the `listener`, to which this `TestResultFormatter` is configured for, is enabled
    Parameters:
      `data` - The content generated on standard error stream