Repository: maven-surefire Updated Branches: refs/heads/SUREFIRE-1436 [created] 660a4cfab
[SUREFIRE-1436] Increase usability in quiet mode Project: http://git-wip-us.apache.org/repos/asf/maven-surefire/repo Commit: http://git-wip-us.apache.org/repos/asf/maven-surefire/commit/660a4cfa Tree: http://git-wip-us.apache.org/repos/asf/maven-surefire/tree/660a4cfa Diff: http://git-wip-us.apache.org/repos/asf/maven-surefire/diff/660a4cfa Branch: refs/heads/SUREFIRE-1436 Commit: 660a4cfab8bf78d8db42aa6cfc3366d8806035a0 Parents: 17c18e5 Author: Tibor17 <tibordig...@apache.org> Authored: Mon Oct 23 23:50:19 2017 +0200 Committer: Tibor17 <tibordig...@apache.org> Committed: Mon Oct 23 23:50:19 2017 +0200 ---------------------------------------------------------------------- .../maven/plugin/failsafe/VerifyMojo.java | 6 +- .../plugin/surefire/AbstractSurefireMojo.java | 6 +- .../surefire/booterclient/ForkStarter.java | 9 +-- .../booterclient/output/ForkClient.java | 17 ++--- .../surefire/log/PluginConsoleLogger.java | 62 ++++++++------- .../surefire/report/TestSetRunListener.java | 30 ++++++-- .../booterclient/ForkingRunListenerTest.java | 10 +-- .../surefire/booterclient/MockReporter.java | 29 +++++-- .../report/DefaultReporterFactoryTest.java | 29 +++++-- .../surefire/report/PluginConsoleLogger.java | 13 ++-- .../surefire/booter/ForkingRunListener.java | 30 ++++++-- .../plugin/surefire/log/api/ConsoleLogger.java | 10 ++- .../log/api/ConsoleLoggerDecorator.java | 2 +- .../surefire/log/api/NullConsoleLogger.java | 28 +++++-- .../surefire/log/api/PrintStreamLogger.java | 30 ++++++-- .../junitcore/DefaultConsoleReporter.java | 79 -------------------- .../surefire/report/TestSuiteXmlParserTest.java | 29 +++++-- 17 files changed, 237 insertions(+), 182 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/VerifyMojo.java ---------------------------------------------------------------------- diff --git a/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/VerifyMojo.java b/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/VerifyMojo.java index b96acb1..bbf47eb 100644 --- a/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/VerifyMojo.java +++ b/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/VerifyMojo.java @@ -33,6 +33,7 @@ import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.surefire.cli.CommandLineOption; import org.apache.maven.surefire.suite.RunResult; +import org.codehaus.plexus.logging.Logger; import java.io.File; import java.util.Collection; @@ -153,6 +154,9 @@ public class VerifyMojo @Component private MavenSession session; + @Component + private Logger logger; + private Collection<CommandLineOption> cli; private volatile PluginConsoleLogger consoleLogger; @@ -197,7 +201,7 @@ public class VerifyMojo { if ( consoleLogger == null ) { - consoleLogger = new PluginConsoleLogger( getLog() ); + consoleLogger = new PluginConsoleLogger( logger ); } } } http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java ---------------------------------------------------------------------- diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java index 88b223a..7aa1e37 100644 --- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java +++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java @@ -80,6 +80,7 @@ import org.apache.maven.surefire.util.SurefireReflectionException; import org.apache.maven.toolchain.DefaultToolchain; import org.apache.maven.toolchain.Toolchain; import org.apache.maven.toolchain.ToolchainManager; +import org.codehaus.plexus.logging.Logger; import javax.annotation.Nonnull; import java.io.File; @@ -688,6 +689,9 @@ public abstract class AbstractSurefireMojo @Component private MavenSession session; + @Component + private Logger logger; + /** * (TestNG only) Define the factory class used to create all test instances. * @@ -841,7 +845,7 @@ public abstract class AbstractSurefireMojo { if ( consoleLogger == null ) { - consoleLogger = new PluginConsoleLogger( getLog() ); + consoleLogger = new PluginConsoleLogger( logger ); } } } http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkStarter.java ---------------------------------------------------------------------- diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkStarter.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkStarter.java index 3efbd57..31237b2 100644 --- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkStarter.java +++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkStarter.java @@ -270,8 +270,7 @@ public class ForkStarter TestLessInputStreamBuilder builder = new TestLessInputStreamBuilder(); PropertiesWrapper props = new PropertiesWrapper( providerProperties ); TestLessInputStream stream = builder.build(); - ForkClient forkClient = new ForkClient( forkedReporterFactory, stream, log, forkConfiguration.isDebug(), - new AtomicBoolean() ); + ForkClient forkClient = new ForkClient( forkedReporterFactory, stream, log, new AtomicBoolean() ); Thread shutdown = createImmediateShutdownHookThread( builder, providerConfiguration.getShutdown() ); ScheduledFuture<?> ping = triggerPingTimerForShutdown( builder ); try @@ -348,8 +347,8 @@ public class ForkStarter { DefaultReporterFactory reporter = new DefaultReporterFactory( startupReportConfiguration, log ); defaultReporterFactories.add( reporter ); - ForkClient forkClient = new ForkClient( reporter, testProvidingInputStream, log, - forkConfiguration.isDebug(), printedErrorStream ) + ForkClient forkClient = + new ForkClient( reporter, testProvidingInputStream, log, printedErrorStream ) { @Override protected void stopOnNextTest() @@ -414,7 +413,7 @@ public class ForkStarter new DefaultReporterFactory( startupReportConfiguration, log ); defaultReporterFactories.add( forkedReporterFactory ); ForkClient forkClient = new ForkClient( forkedReporterFactory, builder.getImmediateCommands(), - log, forkConfiguration.isDebug(), printedErrorStream ) + log, printedErrorStream ) { @Override protected void stopOnNextTest() http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java ---------------------------------------------------------------------- diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java index 9c6bb6b..4871e2a 100644 --- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java +++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/output/ForkClient.java @@ -102,8 +102,6 @@ public class ForkClient private final ConsoleLogger log; - private final boolean debug; - /** * prevents from printing same warning */ @@ -124,12 +122,11 @@ public class ForkClient private volatile int forkNumber; public ForkClient( DefaultReporterFactory defaultReporterFactory, NotifiableTestStream notifiableTestStream, - ConsoleLogger log, boolean debug, AtomicBoolean printedErrorStream ) + ConsoleLogger log, AtomicBoolean printedErrorStream ) { this.defaultReporterFactory = defaultReporterFactory; this.notifiableTestStream = notifiableTestStream; this.log = log; - this.debug = debug; this.printedErrorStream = printedErrorStream; } @@ -330,25 +327,25 @@ public class ForkClient log.warning( msg + " See FAQ web page and the dump file " + dump.getAbsolutePath() ); } - if ( debug && event != null ) + if ( log.isDebugEnabled() && event != null ) { log.debug( event ); } } else { - if ( debug ) + if ( log.isDebugEnabled() ) { log.debug( event ); } - else if ( log.isQuiet() ) + else if ( log.isInfoEnabled() ) { - // In case of debugging forked JVM, see PRINTABLE_JVM_NATIVE_STREAM. - System.out.println( event ); + log.info( event ); } else { - log.info( event ); + // In case of debugging forked JVM, see PRINTABLE_JVM_NATIVE_STREAM. + System.out.println( event ); } } } http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/log/PluginConsoleLogger.java ---------------------------------------------------------------------- diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/log/PluginConsoleLogger.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/log/PluginConsoleLogger.java index cd1dd1f..372740a 100644 --- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/log/PluginConsoleLogger.java +++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/log/PluginConsoleLogger.java @@ -19,12 +19,12 @@ package org.apache.maven.plugin.surefire.log; * under the License. */ -import org.apache.maven.plugin.logging.Log; import org.apache.maven.plugin.surefire.log.api.ConsoleLogger; +import org.codehaus.plexus.logging.Logger; /** - * Wrapper logger of miscellaneous (Maven 2.2.1 or 3.1) implementations of {@link Log}. - * Calling {@link Log#isInfoEnabled()} before {@link Log#info(CharSequence)} due to Maven 2.2.1. + * Wrapper logger of miscellaneous (Maven 2.2.1 or 3.1) implementations of {@link Logger}. + * Calling {@link Logger#isInfoEnabled()} before {@link Logger#info(String)} due to Maven 2.2.1. * * @author <a href="mailto:tibordig...@apache.org">Tibor Digana (tibor17)</a> * @since 2.20 @@ -33,106 +33,104 @@ import org.apache.maven.plugin.surefire.log.api.ConsoleLogger; public final class PluginConsoleLogger implements ConsoleLogger { - private final Log mojoLogger; + private final Logger plexusLogger; - public PluginConsoleLogger( Log mojoLogger ) + public PluginConsoleLogger( Logger plexusLogger ) { - this.mojoLogger = mojoLogger; + this.plexusLogger = plexusLogger; } + @Override public boolean isDebugEnabled() { - return mojoLogger.isDebugEnabled(); + return plexusLogger.isDebugEnabled(); } @Override public void debug( String message ) { - if ( mojoLogger.isDebugEnabled() ) + if ( isDebugEnabled() ) { - mojoLogger.debug( message ); + plexusLogger.debug( message ); } } public void debug( CharSequence content, Throwable error ) { - if ( mojoLogger.isDebugEnabled() ) + if ( isDebugEnabled() ) { - mojoLogger.debug( content, error ); + plexusLogger.debug( content == null ? "" : content.toString(), error ); } } + @Override public boolean isInfoEnabled() { - return mojoLogger.isInfoEnabled(); + return plexusLogger.isInfoEnabled(); } @Override public void info( String message ) { - if ( mojoLogger.isInfoEnabled() ) + if ( isInfoEnabled() ) { - mojoLogger.info( message ); + plexusLogger.info( message ); } } + @Override public boolean isWarnEnabled() { - return mojoLogger.isWarnEnabled(); + return plexusLogger.isWarnEnabled(); } @Override public void warning( String message ) { - if ( mojoLogger.isWarnEnabled() ) + if ( isWarnEnabled() ) { - mojoLogger.warn( message ); + plexusLogger.warn( message ); } } public void warning( CharSequence content, Throwable error ) { - if ( mojoLogger.isWarnEnabled() ) + if ( isWarnEnabled() ) { - mojoLogger.warn( content, error ); + plexusLogger.warn( content == null ? "" : content.toString(), error ); } } + @Override public boolean isErrorEnabled() { - return mojoLogger.isErrorEnabled(); + return plexusLogger.isErrorEnabled() || plexusLogger.isFatalErrorEnabled(); } @Override public void error( String message ) { - if ( mojoLogger.isErrorEnabled() ) + if ( isErrorEnabled() ) { - mojoLogger.error( message ); + plexusLogger.error( message ); } } @Override public void error( String message, Throwable t ) { - if ( mojoLogger.isErrorEnabled() ) + if ( isErrorEnabled() ) { - mojoLogger.error( message, t ); + plexusLogger.error( message, t ); } } @Override public void error( Throwable t ) { - if ( mojoLogger.isErrorEnabled() ) + if ( isErrorEnabled() ) { - mojoLogger.error( t ); + plexusLogger.error( "", t ); } } - - @Override - public boolean isQuiet() - { - return !isErrorEnabled() && !isWarnEnabled() && !isInfoEnabled() && !isDebugEnabled(); - } } http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java ---------------------------------------------------------------------- diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java index 2da9da3..daf4b2a 100644 --- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java +++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/TestSetRunListener.java @@ -88,24 +88,48 @@ public class TestSetRunListener } @Override + public boolean isDebugEnabled() + { + return consoleReporter.getConsoleLogger().isDebugEnabled(); + } + + @Override public void debug( String message ) { consoleReporter.getConsoleLogger().debug( trimTrailingNewLine( message ) ); } @Override + public boolean isInfoEnabled() + { + return consoleReporter.getConsoleLogger().isInfoEnabled(); + } + + @Override public void info( String message ) { consoleReporter.getConsoleLogger().info( trimTrailingNewLine( message ) ); } @Override + public boolean isWarnEnabled() + { + return consoleReporter.getConsoleLogger().isWarnEnabled(); + } + + @Override public void warning( String message ) { consoleReporter.getConsoleLogger().warning( trimTrailingNewLine( message ) ); } @Override + public boolean isErrorEnabled() + { + return consoleReporter.getConsoleLogger().isErrorEnabled(); + } + + @Override public void error( String message ) { consoleReporter.getConsoleLogger().error( trimTrailingNewLine( message ) ); @@ -124,12 +148,6 @@ public class TestSetRunListener } @Override - public boolean isQuiet() - { - return consoleReporter.getConsoleLogger().isQuiet(); - } - - @Override public void writeTestOutput( byte[] buf, int off, int len, boolean stdout ) { try http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java ---------------------------------------------------------------------- diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java index f7406de..7d2e6be 100644 --- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java +++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/ForkingRunListenerTest.java @@ -223,7 +223,7 @@ public class ForkingRunListenerTest TestSetMockReporterFactory providerReporterFactory = new TestSetMockReporterFactory(); NullConsoleLogger log = new NullConsoleLogger(); ForkClient forkStreamClient = - new ForkClient( providerReporterFactory, new MockNotifiableTestStream(), log, false, null ); + new ForkClient( providerReporterFactory, new MockNotifiableTestStream(), log, null ); forkStreamClient.consumeMultiLineContent( content.toString( "UTF-8" ) ); @@ -248,7 +248,7 @@ public class ForkingRunListenerTest TestSetMockReporterFactory providerReporterFactory = new TestSetMockReporterFactory(); NullConsoleLogger log = new NullConsoleLogger(); ForkClient forkStreamClient = - new ForkClient( providerReporterFactory, new MockNotifiableTestStream(), log, false, null ); + new ForkClient( providerReporterFactory, new MockNotifiableTestStream(), log, null ); forkStreamClient.consumeMultiLineContent( content.toString( "UTF-8" ) ); @@ -277,7 +277,7 @@ public class ForkingRunListenerTest NotifiableTestStream notifiableTestStream = new MockNotifiableTestStream(); NullConsoleLogger log = new NullConsoleLogger(); - ForkClient forkStreamClient = new ForkClient( providerReporterFactory, notifiableTestStream, log, false, null ); + ForkClient forkStreamClient = new ForkClient( providerReporterFactory, notifiableTestStream, log, null ); forkStreamClient.consumeMultiLineContent( content.toString( "UTF-8" ) ); MockReporter reporter = (MockReporter) forkStreamClient.getReporter(); @@ -285,7 +285,7 @@ public class ForkingRunListenerTest Assert.assertEquals( expected, reporter.getFirstData() ); Assert.assertEquals( 1, reporter.getEvents().size() ); - forkStreamClient = new ForkClient( providerReporterFactory, notifiableTestStream, log, false, null ); + forkStreamClient = new ForkClient( providerReporterFactory, notifiableTestStream, log, null ); forkStreamClient.consumeMultiLineContent( anotherContent.toString( "UTF-8" ) ); MockReporter reporter2 = (MockReporter) forkStreamClient.getReporter(); Assert.assertEquals( MockReporter.TEST_SKIPPED, reporter2.getFirstEvent() ); @@ -355,7 +355,7 @@ public class ForkingRunListenerTest TestSetMockReporterFactory providerReporterFactory = new TestSetMockReporterFactory(); NullConsoleLogger log = new NullConsoleLogger(); final ForkClient forkStreamClient = - new ForkClient( providerReporterFactory, new MockNotifiableTestStream(), log, false, null ); + new ForkClient( providerReporterFactory, new MockNotifiableTestStream(), log, null ); forkStreamClient.consumeMultiLineContent( content.toString( ) ); reporter = (MockReporter) forkStreamClient.getReporter(); } http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java ---------------------------------------------------------------------- diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java index 147dee7..951929e 100644 --- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java +++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/booterclient/MockReporter.java @@ -159,6 +159,12 @@ public class MockReporter } @Override + public boolean isDebugEnabled() + { + return true; + } + + @Override public void debug( String message ) { events.add( CONSOLE_OUTPUT ); @@ -166,6 +172,12 @@ public class MockReporter } @Override + public boolean isInfoEnabled() + { + return true; + } + + @Override public void info( String message ) { events.add( CONSOLE_OUTPUT ); @@ -173,6 +185,12 @@ public class MockReporter } @Override + public boolean isWarnEnabled() + { + return true; + } + + @Override public void warning( String message ) { events.add( CONSOLE_OUTPUT ); @@ -180,6 +198,12 @@ public class MockReporter } @Override + public boolean isErrorEnabled() + { + return true; + } + + @Override public void error( String message ) { events.add( CONSOLE_OUTPUT ); @@ -197,11 +221,6 @@ public class MockReporter } @Override - public boolean isQuiet() { - return false; - } - - @Override public void writeTestOutput( byte[] buf, int off, int len, boolean stdout ) { events.add( stdout ? STDOUT : STDERR ); http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactoryTest.java ---------------------------------------------------------------------- diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactoryTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactoryTest.java index 7b07163..659040d 100644 --- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactoryTest.java +++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/DefaultReporterFactoryTest.java @@ -145,24 +145,48 @@ public class DefaultReporterFactoryTest private final List<String> messages = new ArrayList<String>(); @Override + public boolean isDebugEnabled() + { + return true; + } + + @Override public void debug( String message ) { messages.add( message ); } @Override + public boolean isInfoEnabled() + { + return true; + } + + @Override public void info( String message ) { messages.add( message ); } @Override + public boolean isWarnEnabled() + { + return true; + } + + @Override public void warning( String message ) { messages.add( message ); } @Override + public boolean isErrorEnabled() + { + return true; + } + + @Override public void error( String message ) { messages.add( message ); @@ -179,11 +203,6 @@ public class DefaultReporterFactoryTest { } - @Override - public boolean isQuiet() { - return false; - } - List<String> getMessages() { return messages; http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/PluginConsoleLogger.java ---------------------------------------------------------------------- diff --git a/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/PluginConsoleLogger.java b/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/PluginConsoleLogger.java index 1ad4d74..0e0fb99 100644 --- a/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/PluginConsoleLogger.java +++ b/maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/PluginConsoleLogger.java @@ -39,11 +39,12 @@ final class PluginConsoleLogger { private final Log mojoLogger; - public PluginConsoleLogger( Log mojoLogger ) + PluginConsoleLogger( Log mojoLogger ) { this.mojoLogger = mojoLogger; } + @Override public boolean isDebugEnabled() { return mojoLogger.isDebugEnabled(); @@ -66,6 +67,7 @@ final class PluginConsoleLogger } } + @Override public boolean isInfoEnabled() { return mojoLogger.isInfoEnabled(); @@ -80,6 +82,7 @@ final class PluginConsoleLogger } } + @Override public boolean isWarnEnabled() { return mojoLogger.isWarnEnabled(); @@ -102,6 +105,7 @@ final class PluginConsoleLogger } } + @Override public boolean isErrorEnabled() { return mojoLogger.isErrorEnabled(); @@ -134,13 +138,6 @@ final class PluginConsoleLogger } } - @Override - public boolean isQuiet() - { - return !mojoLogger.isErrorEnabled() && !mojoLogger.isWarnEnabled() - && !mojoLogger.isInfoEnabled() && !mojoLogger.isDebugEnabled(); - } - private static MessageBuilder createAnsiBuilder( CharSequence message ) { return buffer( bufferSize( message ) ); http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/surefire-api/src/main/java/org/apache/maven/surefire/booter/ForkingRunListener.java ---------------------------------------------------------------------- diff --git a/surefire-api/src/main/java/org/apache/maven/surefire/booter/ForkingRunListener.java b/surefire-api/src/main/java/org/apache/maven/surefire/booter/ForkingRunListener.java index f145080..a060469 100644 --- a/surefire-api/src/main/java/org/apache/maven/surefire/booter/ForkingRunListener.java +++ b/surefire-api/src/main/java/org/apache/maven/surefire/booter/ForkingRunListener.java @@ -247,24 +247,48 @@ public class ForkingRunListener } @Override + public boolean isDebugEnabled() + { + return true; + } + + @Override public void debug( String message ) { log( BOOTERCODE_DEBUG, message ); } @Override + public boolean isInfoEnabled() + { + return true; + } + + @Override public void info( String message ) { log( BOOTERCODE_CONSOLE, message ); } @Override + public boolean isWarnEnabled() + { + return true; + } + + @Override public void warning( String message ) { log( BOOTERCODE_WARNING, message ); } @Override + public boolean isErrorEnabled() + { + return true; + } + + @Override public void error( String message ) { log( BOOTERCODE_ERROR, message ); @@ -282,12 +306,6 @@ public class ForkingRunListener error( null, t ); } - @Override - public boolean isQuiet() - { - return false; - } - private void encodeAndWriteToTarget( String string ) { byte[] encodeBytes = encodeStringForForkCommunication( string ); http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLogger.java ---------------------------------------------------------------------- diff --git a/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLogger.java b/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLogger.java index f1cbcb8..20b3016 100644 --- a/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLogger.java +++ b/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLogger.java @@ -31,12 +31,20 @@ package org.apache.maven.plugin.surefire.log.api; */ public interface ConsoleLogger { + boolean isDebugEnabled(); + void debug( String message ); + boolean isInfoEnabled(); + void info( String message ); + boolean isWarnEnabled(); + void warning( String message ); + boolean isErrorEnabled(); + /** * @param message message to log */ @@ -56,6 +64,4 @@ public interface ConsoleLogger * @param t exception, message and trace to log */ void error( Throwable t ); - - boolean isQuiet(); } http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLoggerDecorator.java ---------------------------------------------------------------------- diff --git a/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLoggerDecorator.java b/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLoggerDecorator.java index f98f233..02105fa 100644 --- a/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLoggerDecorator.java +++ b/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/ConsoleLoggerDecorator.java @@ -1 +1 @@ -package org.apache.maven.plugin.surefire.log.api; /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ /** * Decorator around {@link ConsoleLogger}. * This class is loaded in the isolated ClassLoader and the child logger in the in-plugi n ClassLoader. * * @author <a href="mailto:tibordig...@apache.org">Tibor Digana (tibor17)</a> * @since 2.20 */ public final class ConsoleLoggerDecorator implements ConsoleLogger { private final Object logger; public ConsoleLoggerDecorator( Object logger ) { if ( logger == null ) { throw new NullPointerException( "logger argument is null in " + ConsoleLoggerDecorator.class ); } this.logger = logger; } @Override public void debug( String message ) { try { logger.getClass() .getMethod( "debug", String.class ) .invoke( logger, message ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void info( String message ) { try { logger.getClass() .getMethod( "info", String.cla ss ) .invoke( logger, message ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void warning( String message ) { try { logger.getClass() .getMethod( "warning", String.class ) .invoke( logger, message ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void error( String message ) { try { logger.getClass() .getMethod( "error", String.class ) .invoke( logger, message ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void error( String message, Throwable t ) { t ry { logger.getClass() .getMethod( "error", String.class, Throwable.class ) .invoke( logger, message, t ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void error( Throwable t ) { try { logger.getClass() .getMethod( "error", Throwable.class ) .invoke( logger, t ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public boolean isQuiet() { try { return (Boolean) logger.getClass() .getMethod( "isQuiet", Throwable.class ) .invoke( logger ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage() , e ); } } } \ No newline at end of file +package org.apache.maven.plugin.surefire.log.api; /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ /** * Decorator around {@link ConsoleLogger}. * This class is loaded in the isolated ClassLoader and the child logger in the in-plugi n ClassLoader. * * @author <a href="mailto:tibordig...@apache.org">Tibor Digana (tibor17)</a> * @since 2.20 */ public final class ConsoleLoggerDecorator implements ConsoleLogger { private final Object logger; public ConsoleLoggerDecorator( Object logger ) { if ( logger == null ) { throw new NullPointerException( "logger argument is null in " + ConsoleLoggerDecorator.class ); } this.logger = logger; } @Override public boolean isDebugEnabled() { try { return (Boolean) logger.getClass() .getMethod( "isDebugEnabled" ) .invoke( logger ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void debug( String message ) { try { logger.getClass() .getMethod( "debug", String.cl ass ) .invoke( logger, message ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public boolean isInfoEnabled() { try { return (Boolean) logger.getClass() .getMethod( "isInfoEnabled" ) .invoke( logger ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void info( String message ) { try { logger.getClass() .getMethod( "info", String.class ) .invoke( logger, message ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public boolean isWarnEnabled() { try { r eturn (Boolean) logger.getClass() .getMethod( "isWarnEnabled" ) .invoke( logger ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void warning( String message ) { try { logger.getClass() .getMethod( "warning", String.class ) .invoke( logger, message ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public boolean isErrorEnabled() { try { return (Boolean) logger.getClass() .getMethod( "isErrorEnabled" ) .invoke( logger ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void error( String message ) { try { logger.getClass() .getMethod( "error", String.class ) .invoke( logger, message ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void error( String message, Throwable t ) { try { logger.getClass() .getMethod( "error", String.class, Throwable.class ) .invoke( logger, message, t ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } @Override public void error( Throwable t ) { try { logger.getClass() .getMethod( "error", Throwable.class ) .invoke( logger, t ); } catch ( Exception e ) { throw new IllegalStateException( e.getLocalizedMessage(), e ); } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/NullConsoleLogger.java ---------------------------------------------------------------------- diff --git a/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/NullConsoleLogger.java b/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/NullConsoleLogger.java index 6481bd2..a0fc22a 100644 --- a/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/NullConsoleLogger.java +++ b/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/NullConsoleLogger.java @@ -28,38 +28,56 @@ package org.apache.maven.plugin.surefire.log.api; public final class NullConsoleLogger implements ConsoleLogger { @Override + public boolean isDebugEnabled() + { + return false; + } + + @Override public void debug( String message ) { } @Override + public boolean isInfoEnabled() + { + return false; + } + + @Override public void info( String message ) { } @Override + public boolean isWarnEnabled() + { + return false; + } + + @Override public void warning( String message ) { } @Override - public void error( String message ) + public boolean isErrorEnabled() { + return false; } @Override - public void error( String message, Throwable t ) + public void error( String message ) { } @Override - public void error( Throwable t ) + public void error( String message, Throwable t ) { } @Override - public boolean isQuiet() + public void error( Throwable t ) { - return true; } } http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/PrintStreamLogger.java ---------------------------------------------------------------------- diff --git a/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/PrintStreamLogger.java b/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/PrintStreamLogger.java index 480e313..b3ecb46 100644 --- a/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/PrintStreamLogger.java +++ b/surefire-logger-api/src/main/java/org/apache/maven/plugin/surefire/log/api/PrintStreamLogger.java @@ -35,24 +35,48 @@ public class PrintStreamLogger } @Override + public boolean isDebugEnabled() + { + return true; + } + + @Override public void debug( String message ) { stream.println( message ); } @Override + public boolean isInfoEnabled() + { + return true; + } + + @Override public void info( String message ) { stream.println( message ); } @Override + public boolean isWarnEnabled() + { + return true; + } + + @Override public void warning( String message ) { stream.println( message ); } @Override + public boolean isErrorEnabled() + { + return true; + } + + @Override public void error( String message ) { stream.println( message ); @@ -69,10 +93,4 @@ public class PrintStreamLogger { error( null, t ); } - - @Override - public boolean isQuiet() - { - return false; - } } http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/DefaultConsoleReporter.java ---------------------------------------------------------------------- diff --git a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/DefaultConsoleReporter.java b/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/DefaultConsoleReporter.java deleted file mode 100644 index 979b65d..0000000 --- a/surefire-providers/surefire-junit47/src/test/java/org/apache/maven/surefire/junitcore/DefaultConsoleReporter.java +++ /dev/null @@ -1,79 +0,0 @@ -package org.apache.maven.surefire.junitcore; - -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.apache.maven.plugin.surefire.log.api.ConsoleLogger; - -import java.io.PrintStream; - -/** - * @author <a href="mailto:krist...@zenior.no">Kristian Rosenvold</a> - */ -public class DefaultConsoleReporter - implements ConsoleLogger -{ - private final PrintStream systemOut; - - public DefaultConsoleReporter( PrintStream systemOut ) - { - this.systemOut = systemOut; - } - - @Override - public void debug( String message ) - { - - } - - @Override - public void info( String message ) - { - systemOut.println( message ); - } - - @Override - public void warning( String message ) - { - - } - - @Override - public void error( String message ) - { - - } - - @Override - public void error( String message, Throwable t ) - { - - } - - @Override - public void error( Throwable t ) - { - - } - - @Override - public boolean isQuiet() { - return false; - } -} http://git-wip-us.apache.org/repos/asf/maven-surefire/blob/660a4cfa/surefire-report-parser/src/test/java/org/apache/maven/plugins/surefire/report/TestSuiteXmlParserTest.java ---------------------------------------------------------------------- diff --git a/surefire-report-parser/src/test/java/org/apache/maven/plugins/surefire/report/TestSuiteXmlParserTest.java b/surefire-report-parser/src/test/java/org/apache/maven/plugins/surefire/report/TestSuiteXmlParserTest.java index 39fe398..96b428f 100644 --- a/surefire-report-parser/src/test/java/org/apache/maven/plugins/surefire/report/TestSuiteXmlParserTest.java +++ b/surefire-report-parser/src/test/java/org/apache/maven/plugins/surefire/report/TestSuiteXmlParserTest.java @@ -54,22 +54,46 @@ public class TestSuiteXmlParserTest consoleLogger = new ConsoleLogger() { @Override + public boolean isDebugEnabled() + { + return true; + } + + @Override public void debug( String message ) { } @Override + public boolean isInfoEnabled() + { + return true; + } + + @Override public void info( String message ) { } @Override + public boolean isWarnEnabled() + { + return true; + } + + @Override public void warning( String message ) { loggedErrors.add( message ); } @Override + public boolean isErrorEnabled() + { + return true; + } + + @Override public void error( String message ) { loggedErrors.add( message ); @@ -86,11 +110,6 @@ public class TestSuiteXmlParserTest { loggedErrors.add( t.getLocalizedMessage() ); } - - @Override - public boolean isQuiet() { - return false; - } }; }