1 package org.apache.maven.plugin.dependency;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.File;
23
24 import org.apache.maven.artifact.repository.ArtifactRepository;
25 import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
26 import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
27 import org.apache.maven.artifact.repository.layout.LegacyRepositoryLayout;
28 import org.apache.maven.plugin.MojoFailureException;
29 import org.apache.maven.plugin.testing.stubs.StubArtifactRepository;
30
31 public class TestGetMojo
32 extends AbstractDependencyMojoTestCase
33 {
34 GetMojo mojo;
35
36 protected void setUp()
37 throws Exception
38 {
39
40 super.setUp( "markers", false );
41
42 File testPom = new File( getBasedir(), "target/test-classes/unit/get-test/plugin-config.xml" );
43 assert testPom.exists();
44 mojo = (GetMojo) lookupMojo( "get", testPom );
45
46 assertNotNull( mojo );
47 setVariableValueToObject( mojo, "localRepository", new StubArtifactRepository( testDir.getAbsolutePath() ) );
48 }
49
50
51
52
53
54
55 public void testTransitive()
56 throws Exception
57 {
58
59 setVariableValueToObject( mojo, "transitive", Boolean.FALSE );
60 setVariableValueToObject( mojo, "repositoryUrl", "http://repo1.maven.apache.org/maven2" );
61 setVariableValueToObject( mojo, "groupId", "org.apache.maven" );
62 setVariableValueToObject( mojo, "artifactId", "maven-model" );
63 setVariableValueToObject( mojo, "version", "2.0.9" );
64
65 mojo.execute();
66
67
68 setVariableValueToObject( mojo, "transitive", Boolean.FALSE );
69 mojo.execute();
70 }
71
72
73
74
75
76
77 public void testRemoteRepositories()
78 throws Exception
79 {
80 setVariableValueToObject( mojo, "remoteRepositories", "central::default::http://repo1.maven.apache.org/maven2,"
81 + "central::::http://repo1.maven.apache.org/maven2," + "http://repo1.maven.apache.org/maven2" );
82 setVariableValueToObject( mojo, "groupId", "org.apache.maven" );
83 setVariableValueToObject( mojo, "artifactId", "maven-model" );
84 setVariableValueToObject( mojo, "version", "2.0.9" );
85
86 mojo.execute();
87 }
88
89
90
91
92
93
94 public void testParseRepository()
95 throws Exception
96 {
97 ArtifactRepository repo;
98 ArtifactRepositoryPolicy policy = null;
99 repo = mojo.parseRepository( "central::default::http://repo1.maven.apache.org/maven2", policy );
100 assertEquals( "central", repo.getId() );
101 assertEquals( DefaultRepositoryLayout.class, repo.getLayout().getClass() );
102 assertEquals( "http://repo1.maven.apache.org/maven2", repo.getUrl() );
103
104 repo = mojo.parseRepository( "central::legacy::http://repo1.maven.apache.org/maven2", policy );
105 assertEquals( "central", repo.getId() );
106 assertEquals( LegacyRepositoryLayout.class, repo.getLayout().getClass() );
107 assertEquals( "http://repo1.maven.apache.org/maven2", repo.getUrl() );
108
109 repo = mojo.parseRepository( "central::::http://repo1.maven.apache.org/maven2", policy );
110 assertEquals( "central", repo.getId() );
111 assertEquals( DefaultRepositoryLayout.class, repo.getLayout().getClass() );
112 assertEquals( "http://repo1.maven.apache.org/maven2", repo.getUrl() );
113
114 repo = mojo.parseRepository( "http://repo1.maven.apache.org/maven2", policy );
115 assertEquals( "temp", repo.getId() );
116 assertEquals( DefaultRepositoryLayout.class, repo.getLayout().getClass() );
117 assertEquals( "http://repo1.maven.apache.org/maven2", repo.getUrl() );
118
119 try
120 {
121 repo = mojo.parseRepository( "::::http://repo1.maven.apache.org/maven2", policy );
122 fail( "Exception expected" );
123 }
124 catch ( MojoFailureException e )
125 {
126
127 }
128
129 try
130 {
131 repo = mojo.parseRepository( "central::http://repo1.maven.apache.org/maven2", policy );
132 fail( "Exception expected" );
133 }
134 catch ( MojoFailureException e )
135 {
136
137 }
138 }
139 }