Package groovy.junit6.plugin

# Class ForkedJvmTestRunner

java.lang.Object
groovy.junit6.plugin.ForkedJvmTestRunner

public final class ForkedJvmTestRunner extends Object
Child-JVM entry point for `ForkedJvm`-annotated tests.

Invoked by `ForkedJvmExtension` with the qualified test class name and method name as command-line arguments. Runs exactly that one test method via the JUnit Platform `Launcher`, then reports outcome to the parent via the file referenced by the system property `groovy.junit6.forked.result`: empty file on success, serialized `Throwable` (with text fallback) on failure.

Since:
  6.0.0

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `ABORTED_EXIT_CODE`
  Exit code used when the child reports an aborted test.
  `static final byte`
  `ABORTED_MARKER`
  Marker byte at the start of the result file for an aborted test.
  `static final String`
  `FORKED_FLAG`
  Set on the child JVM so `ForkedJvmExtension` doesn't re-fork.
  `static final String`
  `RESULT_FILE_PROP`
  Path of the result file the child writes into.
  `static final byte`
  `TEXT_FALLBACK_MARKER`
  Marker byte at the start of the result file when the failure had to be written as text instead of a serialized `Throwable`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static void`
  `main(String[] args)`

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

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

- ## Field Details

  - ### FORKED_FLAG

    public static final String FORKED_FLAG
    Set on the child JVM so `ForkedJvmExtension` doesn't re-fork.
    See Also:
      - Constant Field Values

  - ### RESULT_FILE_PROP

    public static final String RESULT_FILE_PROP
    Path of the result file the child writes into.
    See Also:
      - Constant Field Values

  - ### TEXT_FALLBACK_MARKER

    public static final byte TEXT_FALLBACK_MARKER
    Marker byte at the start of the result file when the failure had to be written as text instead of a serialized `Throwable`. Distinguishable because `ObjectOutputStream`'s STREAM_MAGIC is `0xACED`, never starts with `0x00`.
    See Also:
      - Constant Field Values

  - ### ABORTED_MARKER

    public static final byte ABORTED_MARKER
    Marker byte at the start of the result file for an aborted test.
    See Also:
      - Constant Field Values

  - ### ABORTED_EXIT_CODE

    public static final int ABORTED_EXIT_CODE
    Exit code used when the child reports an aborted test.
    See Also:
      - Constant Field Values

- ## Method Details

  - ### main

    public static void main(String[] args) throws Exception
    Throws:
      `Exception`