1 package org.apache.maven.project.inheritance.t07;
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 import java.util.Set;
24
25 import org.apache.maven.artifact.Artifact;
26 import org.apache.maven.project.MavenProject;
27 import org.apache.maven.project.inheritance.AbstractProjectInheritanceTestCase;
28 import org.junit.jupiter.api.Test;
29
30 import static org.junit.jupiter.api.Assertions.assertEquals;
31 import static org.junit.jupiter.api.Assertions.assertFalse;
32 import static org.junit.jupiter.api.Assertions.assertNotNull;
33 import static org.junit.jupiter.api.Assertions.assertTrue;
34
35
36
37
38
39
40 public class ProjectInheritanceTest
41 extends AbstractProjectInheritanceTestCase
42 {
43
44
45
46
47
48
49
50
51
52
53
54 @Test
55 public void testDependencyManagement()
56 throws Exception
57 {
58 File localRepo = getLocalRepositoryPath();
59 File pom0 = new File( localRepo, "p0/pom.xml" );
60
61 File pom0Basedir = pom0.getParentFile();
62
63 File pom1 = new File( pom0Basedir, "p1/pom.xml" );
64
65
66 MavenProject project1 = getProjectWithDependencies( pom1 );
67
68 assertEquals( pom0Basedir, project1.getParent().getBasedir() );
69 System.out.println("Project " + project1.getId() + " " + project1);
70 Set set = project1.getArtifacts();
71 assertNotNull( set, "No artifacts" );
72 assertTrue( set.size() > 0, "No Artifacts" );
73 assertTrue( set.size() == 3, "Set size should be 3, is " + set.size() );
74
75 for ( Object aSet : set )
76 {
77 Artifact artifact = (Artifact) aSet;
78 assertFalse( artifact.getArtifactId().equals( "t07-d" ) );
79 System.out.println(
80 "Artifact: " + artifact.getDependencyConflictId() + " " + artifact.getVersion() + " Optional=" + (
81 artifact.isOptional()
82 ? "true"
83 : "false" ) );
84 assertTrue( artifact.getVersion().equals( "1.0" ),
85 "Incorrect version for " + artifact.getDependencyConflictId() );
86 }
87 }
88 }