1 package org.apache.maven.it;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.it.Verifier;
23 import org.apache.maven.it.util.ResourceExtractor;
24
25 import java.io.File;
26 import java.util.Iterator;
27 import java.util.List;
28
29
30
31
32
33
34 public class MavenITmng4005UniqueDependencyKeyTest
35 extends AbstractMavenIntegrationTestCase
36 {
37
38 public MavenITmng4005UniqueDependencyKeyTest()
39 {
40 super( "[3.0-beta-1,)" );
41 }
42
43
44
45
46 public void testitDependency()
47 throws Exception
48 {
49 test( "dep" );
50 }
51
52
53
54
55 public void testitManagedDependency()
56 throws Exception
57 {
58 test( "man-dep" );
59 }
60
61
62
63
64 public void testitProfileDependency()
65 throws Exception
66 {
67 test( "profile-dep" );
68 }
69
70
71
72
73 public void testitProfileManagedDependency()
74 throws Exception
75 {
76 test( "profile-man-dep" );
77 }
78
79 private void test( String project )
80 throws Exception
81 {
82 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-4005/" + project );
83
84 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
85 verifier.setAutoclean( false );
86 verifier.deleteDirectory( "target" );
87 verifier.executeGoal( "validate" );
88 verifier.verifyErrorFreeLog();
89 verifier.resetStreams();
90
91 List lines = verifier.loadLines( verifier.getLogFileName(), "UTF-8" );
92 boolean foundWarning = false;
93 for ( Iterator it = lines.iterator(); it.hasNext(); )
94 {
95 String line = (String) it.next();
96
97 if ( line.startsWith( "[WARNING]" ) && line.indexOf( "must be unique: junit:junit:jar" ) > 0 )
98 {
99 foundWarning = true;
100 }
101 }
102
103 assertTrue( "Duplicate dependency warning wasn't generated.", foundWarning );
104 }
105
106 }