1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.project.inheritance.t10;
20
21 import java.io.File;
22 import java.util.Map;
23
24 import org.apache.maven.artifact.Artifact;
25 import org.apache.maven.project.MavenProject;
26 import org.apache.maven.project.inheritance.AbstractProjectInheritanceTestCase;
27
28
29
30
31
32
33
34
35
36
37
38
39
40 public class ProjectInheritanceTest extends AbstractProjectInheritanceTestCase {
41
42
43
44
45
46
47
48
49
50
51
52 public void testDependencyManagementOverridesTransitiveDependencyVersion() throws Exception {
53 File localRepo = getLocalRepositoryPath();
54
55 File pom0 = new File(localRepo, "p0/pom.xml");
56 File pom0Basedir = pom0.getParentFile();
57 File pom1 = new File(pom0Basedir, "p1/pom.xml");
58
59
60 MavenProject project0 = getProjectWithDependencies(pom0);
61 MavenProject project1 = getProjectWithDependencies(pom1);
62
63 assertEquals(pom0Basedir, project1.getParent().getBasedir());
64 System.out.println("Project " + project1.getId() + " " + project1);
65 Map map = project1.getArtifactMap();
66 assertNotNull("No artifacts", map);
67 assertTrue("No Artifacts", map.size() > 0);
68 assertTrue("Set size should be 3, is " + map.size(), map.size() == 3);
69
70 Artifact a = (Artifact) map.get("maven-test:t10-a");
71 Artifact b = (Artifact) map.get("maven-test:t10-b");
72 Artifact c = (Artifact) map.get("maven-test:t10-c");
73
74 assertNotNull(a);
75 assertNotNull(b);
76 assertNotNull(c);
77
78
79 System.out.println(a.getScope());
80 assertTrue(
81 "Incorrect scope for " + a.getDependencyConflictId(),
82 a.getScope().equals("test"));
83
84
85 assertTrue(
86 "Incorrect scope for " + b.getDependencyConflictId(),
87 b.getScope().equals("runtime"));
88
89
90 assertTrue(
91 "Incorrect scope for " + c.getDependencyConflictId(),
92 c.getScope().equals("runtime"));
93 }
94 }