Minimum data requirement for report entry.
Additionally, we should distinguish between two events (
OutputReportEntry,
TestOutputReportEntry).
The interface
TestReportListener handles these two events via generics depending on the situation.
The first situation happens when provider's listeners handles the event
OutputReportEntry from
System.out and
System.err via the
ConsoleOutputCapture. The
ConsoleOutputCapture does
not have any notion about
RunMode and
testRunId, and therefore the only provider's listener
would add
RunMode and
testRunId to a recreated entry which would be finally propagated to the
ForkingRunListener and
TestSetRunListener. The
RunMode and
testRunId
are determined upon the events test-started, test-finished and Thread local.
The second situation happens when
ForkingRunListener and
TestSetRunListener handles
TestOutputReportEntry which contains
RunMode and
testRunId.