Repository: maven
Updated Branches:
  refs/heads/MNG-6308_display_packaging ffc594c87 -> abac8ae1a


[MNG-6308] display packaging when building a module
Add -< groupId:artifact:packaging >- to logging of module header


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/abac8ae1
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/abac8ae1
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/abac8ae1

Branch: refs/heads/MNG-6308_display_packaging
Commit: abac8ae1a3c154b652f9c1e41c372a3c62a713c9
Parents: ffc594c
Author: rfscholte <rfscho...@apache.org>
Authored: Thu Dec 14 22:15:58 2017 +0100
Committer: rfscholte <rfscho...@apache.org>
Committed: Thu Dec 14 22:15:58 2017 +0100

----------------------------------------------------------------------
 maven-embedder/pom.xml                          |   4 +
 .../maven/cli/event/ExecutionEventLogger.java   |  20 +++-
 .../cli/event/ExecutionEventLoggerTest.java     | 106 +++++++++++++++++++
 3 files changed, 126 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/abac8ae1/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index d6576f9..cfc126f 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -139,6 +139,10 @@ under the License.
       <artifactId>commons-lang3</artifactId>
     </dependency>
     <dependency>
+      <groupId>org.mockito</groupId>
+      <artifactId>mockito-core</artifactId>
+    </dependency>
+    <dependency>
       <groupId>org.fusesource.jansi</groupId>
       <artifactId>jansi</artifactId>
       <scope>test</scope>

http://git-wip-us.apache.org/repos/asf/maven/blob/abac8ae1/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
----------------------------------------------------------------------
diff --git 
a/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
 
b/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
index f5f1ec5..b3e3078 100644
--- 
a/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
+++ 
b/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
@@ -263,8 +263,22 @@ public class ExecutionEventLogger
     {
         if ( logger.isInfoEnabled() )
         {
+            MavenProject project = event.getProject();
+
             logger.info( "" );
-            infoLine( '-' );
+
+            StringBuilder builder = new StringBuilder();
+            builder.append( "-< " )
+                .append( project.getGroupId() )
+                .append( ':' )
+                .append( project.getArtifactId() )
+                .append( ':' )
+                .append( project.getPackaging() )
+                .append( " >-" );
+            builder.insert( 0, chars( '-', Math.max( 0, LINE_LENGTH - 
builder.length() ) / 2 ) );
+            builder.append( chars( '-', Math.max( 0, LINE_LENGTH - 
builder.length() ) ) );
+
+            infoMain( builder.toString() );
 
             String building = "Building " + event.getProject().getName() + " " 
+ event.getProject().getVersion();
 
@@ -287,9 +301,7 @@ public class ExecutionEventLogger
                 infoMain( building + ( ( pad > 0 ) ? chars( ' ', pad ) : "" ) 
+ progress );
             }
 
-            // display packaging at end of line
-            String packaging = '[' + event.getProject().getPackaging() + ']';
-            infoMain( chars( '-', LINE_LENGTH - packaging.length() ) + 
packaging );
+            infoMain( chars( '-', LINE_LENGTH  ) );
         }
     }
 

http://git-wip-us.apache.org/repos/asf/maven/blob/abac8ae1/maven-embedder/src/test/java/org/apache/maven/cli/event/ExecutionEventLoggerTest.java
----------------------------------------------------------------------
diff --git 
a/maven-embedder/src/test/java/org/apache/maven/cli/event/ExecutionEventLoggerTest.java
 
b/maven-embedder/src/test/java/org/apache/maven/cli/event/ExecutionEventLoggerTest.java
new file mode 100644
index 0000000..662a8cc
--- /dev/null
+++ 
b/maven-embedder/src/test/java/org/apache/maven/cli/event/ExecutionEventLoggerTest.java
@@ -0,0 +1,106 @@
+package org.apache.maven.cli.event;
+
+/*
+ * 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 static org.mockito.Mockito.inOrder;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+import org.apache.maven.execution.ExecutionEvent;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.shared.utils.logging.MessageUtils;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.mockito.InOrder;
+import org.slf4j.Logger;
+
+public class ExecutionEventLoggerTest
+{
+    private ExecutionEventLogger executionEventLogger;
+
+    @BeforeClass
+    public static void setUp() 
+    {
+        MessageUtils.setColorEnabled( false );
+    }
+
+    @AfterClass
+    public static void tearDown()
+    {
+        MessageUtils.setColorEnabled( true );
+    }
+
+    @Test
+    public void testProjectStarted()
+    {
+        // prepare
+        Logger logger = mock( Logger.class );
+        when( logger.isInfoEnabled() ).thenReturn( true );
+        executionEventLogger = new ExecutionEventLogger( logger );
+
+        ExecutionEvent event = mock( ExecutionEvent.class );
+        MavenProject project = mock( MavenProject.class );
+        when( project.getGroupId() ).thenReturn( "org.apache.maven" );
+        when( project.getArtifactId() ).thenReturn( "maven-embedder" );
+        when( project.getPackaging() ).thenReturn( "jar" );
+        when( project.getName() ).thenReturn( "Apache Maven Embedder" );
+        when( project.getVersion() ).thenReturn( "3.5.4-SNAPSHOT" );
+        when( event.getProject() ).thenReturn( project );
+
+        // execute
+        executionEventLogger.projectStarted( event );
+
+        // verify
+        InOrder inOrder = inOrder( logger );
+        inOrder.verify( logger ).info( "" );
+        inOrder.verify( logger ).info( "----------------< 
org.apache.maven:maven-embedder:jar >-----------------" );
+        inOrder.verify( logger ).info( "Building Apache Maven Embedder 
3.5.4-SNAPSHOT" );
+        inOrder.verify( logger ).info( 
"------------------------------------------------------------------------" );
+    }
+
+    @Test
+    public void testProjectStartedOverflow()
+    {
+        // prepare
+        Logger logger = mock( Logger.class );
+        when( logger.isInfoEnabled() ).thenReturn( true );
+        executionEventLogger = new ExecutionEventLogger( logger );
+
+        ExecutionEvent event = mock( ExecutionEvent.class );
+        MavenProject project = mock( MavenProject.class );
+        when( project.getGroupId() ).thenReturn( "org.apache.maven.plugins" );
+        when( project.getArtifactId() ).thenReturn( 
"maven-project-info-reports-plugin" );
+        when( project.getPackaging() ).thenReturn( "maven-plugin" );
+        when( project.getName() ).thenReturn( "Apache Maven Project Info 
Reports Plugin" );
+        when( project.getVersion() ).thenReturn( "3.0.0-SNAPSHOT" );
+        when( event.getProject() ).thenReturn( project );
+
+        // execute
+        executionEventLogger.projectStarted( event );
+
+        // verify
+        InOrder inOrder = inOrder( logger );
+        inOrder.verify( logger ).info( "" );
+        inOrder.verify( logger ).info( "-< 
org.apache.maven.plugins:maven-project-info-reports-plugin:maven-plugin >-" );
+        inOrder.verify( logger ).info( "Building Apache Maven Project Info 
Reports Plugin 3.0.0-SNAPSHOT" );
+        inOrder.verify( logger ).info( 
"------------------------------------------------------------------------" );
+    }
+}

Reply via email to