Skip to content

Commit

Permalink
NativeStd???StreamConsumer should use System.???.println()
Browse files Browse the repository at this point in the history
  • Loading branch information
Tibor17 committed Dec 30, 2021
1 parent a88a285 commit 7ab09f3
Show file tree
Hide file tree
Showing 15 changed files with 43 additions and 52 deletions.
Expand Up @@ -34,7 +34,6 @@
import org.apache.maven.plugin.surefire.log.api.ConsoleLogger;
import org.apache.maven.plugin.surefire.report.DefaultReporterFactory;
import org.apache.maven.plugin.surefire.report.ReportsMerger;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.booter.AbstractPathConfiguration;
import org.apache.maven.surefire.booter.PropertiesWrapper;
import org.apache.maven.surefire.booter.ProviderConfiguration;
Expand Down Expand Up @@ -577,7 +576,7 @@ private RunResult fork( Object testSet, PropertiesWrapper providerProperties, Fo
try
{
ForkNodeArguments forkNodeArguments = new ForkedNodeArg( forkConfiguration.isDebug(), forkNumber,
dumpLogDir, randomUUID().toString(), forkClient.getConsoleOutputReceiver() );
dumpLogDir, randomUUID().toString() );
forkChannel = forkNodeFactory.createForkChannel( forkNodeArguments );
closer.addCloseable( forkChannel );
tempDir = forkConfiguration.getTempDirectory().getCanonicalPath();
Expand Down Expand Up @@ -755,10 +754,10 @@ else if ( result != SUCCESS )
return runResult;
}

private Stoppable bindErrorStream( int forkNumber, CountdownCloseable countdownCloseable,
CommandlineStreams streams, ConsoleOutputReceiver consoleOutputReceiver )
private static Stoppable bindErrorStream( int forkNumber, CountdownCloseable countdownCloseable,
CommandlineStreams streams, Object errorStreamLock )
{
EventHandler<String> errConsumer = new NativeStdErrStreamConsumer( consoleOutputReceiver );
EventHandler<String> errConsumer = new NativeStdErrStreamConsumer( errorStreamLock );
LineConsumerThread stdErr = new LineConsumerThread( "fork-" + forkNumber + "-err-thread",
streams.getStdErrChannel(), errConsumer, countdownCloseable );
stdErr.start();
Expand Down Expand Up @@ -890,16 +889,13 @@ private final class ForkedNodeArg implements ForkNodeArguments
private final File dumpLogDir;
private final String sessionId;
private final boolean debug;
private final ConsoleOutputReceiver consoleOutputReceiver;

ForkedNodeArg( boolean debug, int forkChannelId, File dumpLogDir, String sessionId,
ConsoleOutputReceiver consoleOutputReceiver )
ForkedNodeArg( boolean debug, int forkChannelId, File dumpLogDir, String sessionId )
{
this.debug = debug;
this.forkChannelId = forkChannelId;
this.dumpLogDir = dumpLogDir;
this.sessionId = sessionId;
this.consoleOutputReceiver = consoleOutputReceiver;
}

@Nonnull
Expand Down Expand Up @@ -945,9 +941,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
return consoleOutputReceiver;
return log;
}

@Override
Expand Down
Expand Up @@ -19,7 +19,6 @@
* under the License.
*/

import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.extensions.EventHandler;

import javax.annotation.Nonnull;
Expand All @@ -35,16 +34,19 @@
public final class NativeStdErrStreamConsumer
implements EventHandler<String>
{
private final ConsoleOutputReceiver consoleMessageReceiver;
private final Object errStreamLock;

public NativeStdErrStreamConsumer( ConsoleOutputReceiver consoleMessageReceiver )
public NativeStdErrStreamConsumer( Object errStreamLock)
{
this.consoleMessageReceiver = consoleMessageReceiver;
this.errStreamLock = errStreamLock;
}

@Override
public void handleEvent( @Nonnull String message )
{
consoleMessageReceiver.writeTestOutput( message, true, false );
synchronized (errStreamLock)
{
System.err.println( message );
}
}
}
Expand Up @@ -19,7 +19,6 @@
* under the License.
*/

import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.extensions.EventHandler;

import javax.annotation.Nonnull;
Expand All @@ -34,16 +33,19 @@
public final class NativeStdOutStreamConsumer
implements EventHandler<String>
{
private final ConsoleOutputReceiver consoleMessageReceiver;
private final Object outStreamLock;

public NativeStdOutStreamConsumer( ConsoleOutputReceiver consoleMessageReceiver )
public NativeStdOutStreamConsumer( Object outStreamLock )
{
this.consoleMessageReceiver = consoleMessageReceiver;
this.outStreamLock = outStreamLock;
}

@Override
public void handleEvent( @Nonnull String message )
{
consoleMessageReceiver.writeTestOutput( message, true, true );
synchronized ( outStreamLock )
{
System.out.println( message );
}
}
}
Expand Up @@ -143,7 +143,7 @@ public void bindEventHandler( @Nonnull EventHandler<Event> eventHandler,
{
ForkNodeArguments args = getArguments();
out = new LineConsumerThread( "fork-" + args.getForkChannelId() + "-out-thread", stdOut,
new NativeStdOutStreamConsumer( args.getConsoleOutputReceiver() ), countdown );
new NativeStdOutStreamConsumer( args.getConsoleLock() ), countdown );
out.start();

eventBindings = new EventBindings( eventHandler, countdown );
Expand Down
Expand Up @@ -373,9 +373,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
throw new UnsupportedOperationException();
return logger;
}

boolean isCalled()
Expand Down
Expand Up @@ -46,7 +46,6 @@
import org.apache.maven.surefire.api.event.TestSucceededEvent;
import org.apache.maven.surefire.api.event.TestsetCompletedEvent;
import org.apache.maven.surefire.api.event.TestsetStartingEvent;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ReportEntry;
import org.apache.maven.surefire.api.report.SafeThrowable;
import org.apache.maven.surefire.api.report.SimpleReportEntry;
Expand Down Expand Up @@ -1883,9 +1882,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
throw new UnsupportedOperationException();
return logger;
}

boolean isCalled()
Expand Down
Expand Up @@ -433,9 +433,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
return null;
return logger;
}

@Override
Expand Down
Expand Up @@ -22,7 +22,6 @@
import org.apache.maven.plugin.surefire.log.api.ConsoleLogger;
import org.apache.maven.surefire.api.event.Event;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.extensions.EventHandler;
import org.apache.maven.surefire.extensions.util.CountdownCloseable;
import org.junit.Test;
Expand Down Expand Up @@ -232,9 +231,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
return null;
return new Object();
}

@Override
Expand Down
Expand Up @@ -32,7 +32,6 @@
import org.apache.maven.plugin.surefire.log.api.ConsoleLoggerUtils;
import org.apache.maven.surefire.api.event.Event;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ReportEntry;
import org.apache.maven.surefire.api.report.RunMode;
import org.apache.maven.surefire.api.report.SafeThrowable;
Expand Down Expand Up @@ -1307,9 +1306,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
return null;
return logger;
}

boolean isCalled()
Expand Down
Expand Up @@ -27,7 +27,6 @@
import org.apache.maven.surefire.api.event.ControlByeEvent;
import org.apache.maven.surefire.api.event.Event;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.extensions.util.CountdownCloseable;
import org.junit.Test;

Expand Down Expand Up @@ -122,9 +121,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
return null;
return reporter;
}
};

Expand Down
Expand Up @@ -44,7 +44,6 @@
import org.apache.maven.surefire.api.event.TestsetCompletedEvent;
import org.apache.maven.surefire.api.event.TestsetStartingEvent;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.ReportEntry;
import org.apache.maven.surefire.api.report.RunMode;
import org.apache.maven.surefire.api.report.SafeThrowable;
Expand Down Expand Up @@ -772,9 +771,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
return null;
return new Object();
}

@Override
Expand Down
Expand Up @@ -20,7 +20,6 @@
*/

import org.apache.maven.plugin.surefire.log.api.ConsoleLogger;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;

import javax.annotation.Nonnegative;
import javax.annotation.Nonnull;
Expand Down Expand Up @@ -57,7 +56,7 @@ public interface ForkNodeArguments
ConsoleLogger getConsoleLogger();

@Nonnull
ConsoleOutputReceiver getConsoleOutputReceiver();
Object getConsoleLock();

File getEventStreamBinaryFile();

Expand Down
Expand Up @@ -24,7 +24,6 @@
import org.apache.maven.surefire.api.booter.ForkedProcessEventType;
import org.apache.maven.surefire.api.event.Event;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.api.report.RunMode;
import org.apache.maven.surefire.api.stream.AbstractStreamDecoder.MalformedFrameException;
import org.apache.maven.surefire.api.stream.AbstractStreamDecoder.Memento;
Expand Down Expand Up @@ -638,9 +637,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
return null;
return new Object();
}

@Override
Expand Down
Expand Up @@ -23,7 +23,6 @@
import org.apache.maven.plugin.surefire.log.api.NullConsoleLogger;
import org.apache.maven.surefire.api.booter.DumpErrorSingleton;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;

import javax.annotation.Nonnull;
import java.io.File;
Expand Down Expand Up @@ -86,9 +85,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
throw new UnsupportedOperationException();
return logger;
}

@Override
Expand Down
Expand Up @@ -24,7 +24,6 @@
import org.apache.maven.surefire.api.booter.DumpErrorSingleton;
import org.apache.maven.surefire.api.booter.Shutdown;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
import org.apache.maven.surefire.api.report.ConsoleOutputReceiver;
import org.apache.maven.surefire.booter.ForkedNodeArg;
import org.junit.Before;
import org.junit.Rule;
Expand Down Expand Up @@ -403,9 +402,9 @@ public ConsoleLogger getConsoleLogger()

@Nonnull
@Override
public ConsoleOutputReceiver getConsoleOutputReceiver()
public Object getConsoleLock()
{
throw new UnsupportedOperationException();
return logger;
}

boolean isCalled()
Expand Down

0 comments on commit 7ab09f3

Please sign in to comment.