1 package org.apache.maven.cli.event;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import static org.mockito.Mockito.inOrder;
23 import static org.mockito.Mockito.mock;
24 import static org.mockito.Mockito.when;
25
26 import org.apache.maven.execution.ExecutionEvent;
27 import org.apache.maven.project.MavenProject;
28 import org.apache.maven.shared.utils.logging.MessageUtils;
29 import org.junit.AfterClass;
30 import org.junit.BeforeClass;
31 import org.junit.Test;
32 import org.mockito.InOrder;
33 import org.slf4j.Logger;
34
35 public class ExecutionEventLoggerTest
36 {
37 private ExecutionEventLogger executionEventLogger;
38
39 @BeforeClass
40 public static void setUp()
41 {
42 MessageUtils.setColorEnabled( false );
43 }
44
45 @AfterClass
46 public static void tearDown()
47 {
48 MessageUtils.setColorEnabled( true );
49 }
50
51 @Test
52 public void testProjectStarted()
53 {
54
55 Logger logger = mock( Logger.class );
56 when( logger.isInfoEnabled() ).thenReturn( true );
57 executionEventLogger = new ExecutionEventLogger( logger );
58
59 ExecutionEvent event = mock( ExecutionEvent.class );
60 MavenProject project = mock( MavenProject.class );
61 when( project.getGroupId() ).thenReturn( "org.apache.maven" );
62 when( project.getArtifactId() ).thenReturn( "maven-embedder" );
63 when( project.getPackaging() ).thenReturn( "jar" );
64 when( project.getName() ).thenReturn( "Apache Maven Embedder" );
65 when( project.getVersion() ).thenReturn( "3.5.4-SNAPSHOT" );
66 when( event.getProject() ).thenReturn( project );
67
68
69 executionEventLogger.projectStarted( event );
70
71
72 InOrder inOrder = inOrder( logger );
73 inOrder.verify( logger ).info( "" );
74 inOrder.verify( logger ).info( "------------------< org.apache.maven:maven-embedder >-------------------" );
75 inOrder.verify( logger ).info( "Building Apache Maven Embedder 3.5.4-SNAPSHOT" );
76 inOrder.verify( logger ).info( "--------------------------------[ jar ]---------------------------------" );
77 }
78
79 @Test
80 public void testProjectStartedOverflow()
81 {
82
83 Logger logger = mock( Logger.class );
84 when( logger.isInfoEnabled() ).thenReturn( true );
85 executionEventLogger = new ExecutionEventLogger( logger );
86
87 ExecutionEvent event = mock( ExecutionEvent.class );
88 MavenProject project = mock( MavenProject.class );
89 when( project.getGroupId() ).thenReturn( "org.apache.maven.plugins.overflow" );
90 when( project.getArtifactId() ).thenReturn( "maven-project-info-reports-plugin" );
91 when( project.getPackaging() ).thenReturn( "maven-plugin" );
92 when( project.getName() ).thenReturn( "Apache Maven Project Info Reports Plugin" );
93 when( project.getVersion() ).thenReturn( "3.0.0-SNAPSHOT" );
94 when( event.getProject() ).thenReturn( project );
95
96
97 executionEventLogger.projectStarted( event );
98
99
100 InOrder inOrder = inOrder( logger );
101 inOrder.verify( logger ).info( "" );
102 inOrder.verify( logger ).info( "--< org.apache.maven.plugins.overflow:maven-project-info-reports-plugin >--" );
103 inOrder.verify( logger ).info( "Building Apache Maven Project Info Reports Plugin 3.0.0-SNAPSHOT" );
104 inOrder.verify( logger ).info( "----------------------------[ maven-plugin ]----------------------------" );
105 }
106 }