Repository: maven-surefire
Updated Branches:
  refs/heads/master 17c18e520 -> 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/master
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;
-            }
         };
     }
 

Reply via email to