1 package org.codehaus.gmavenplus.mojo;
2
3 import org.apache.maven.plugin.MojoExecution;
4 import org.apache.maven.plugin.descriptor.MojoDescriptor;
5 import org.apache.maven.project.MavenProject;
6 import org.apache.maven.shared.model.fileset.FileSet;
7 import org.apache.maven.shared.model.fileset.util.FileSetManager;
8 import org.junit.Before;
9 import org.junit.Test;
10 import org.mockito.Mock;
11 import org.mockito.MockitoAnnotations;
12 import org.mockito.Spy;
13
14 import java.io.File;
15 import java.util.Properties;
16
17 import static java.util.Collections.emptyList;
18 import static org.mockito.Mockito.*;
19
20
21
22
23
24
25 public class AbstractGroovyDocMojoTest {
26 @Spy
27 private TestMojo testMojo;
28
29 @Mock
30 private MojoExecution mojoExecution;
31
32 @Mock
33 private MojoDescriptor mojoDescriptor;
34
35 @Mock
36 private MavenProject project;
37
38 @Before
39 public void setup() throws Exception {
40 MockitoAnnotations.openMocks(this);
41 testMojo.mojoExecution = mojoExecution;
42 doReturn(mojoDescriptor).when(mojoExecution).getMojoDescriptor();
43 testMojo.project = project;
44 doReturn(new Properties()).when(testMojo).setupProperties();
45 doReturn(emptyList()).when(testMojo).setupGroovyDocSources(any(FileSet[].class), any(FileSetManager.class));
46 doNothing().when(testMojo).generateGroovyDoc(any(File.class), any(Class.class), any(Class.class), any(), anyList(), any());
47 }
48
49 @Test
50 public void testDontSkipGroovyDoc() throws Exception {
51 testMojo.doGroovyDocGeneration(new FileSet[]{new FileSet()}, emptyList(), new File(""));
52 verify(testMojo, times(1)).generateGroovyDoc(any(File.class), any(Class.class), any(Class.class), any(), anyList(), any());
53 }
54
55 @Test
56 public void testSkipGroovyDoc() throws Exception {
57 testMojo.skipGroovyDoc = true;
58 testMojo.doGroovyDocGeneration(new FileSet[]{new FileSet()}, emptyList(), new File(""));
59 verify(testMojo, never()).generateGroovyDoc(any(File.class), any(Class.class), any(Class.class), any(), anyList(), any());
60 }
61
62 public static class TestMojo extends AbstractGroovyDocMojo {
63 @Override
64 public void execute() {
65 }
66 }
67
68 }