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 java.io.File;
23 import java.io.IOException;
24
25 import org.apache.maven.it.VerificationException;
26 import org.apache.maven.it.Verifier;
27 import org.apache.maven.it.util.ResourceExtractor;
28
29
30
31
32
33
34
35 public class MavenITmng3038TransitiveDepManVersionTest
36 extends AbstractMavenIntegrationTestCase
37 {
38 public MavenITmng3038TransitiveDepManVersionTest()
39 {
40 super( ALL_MAVEN_VERSIONS );
41 }
42
43 public void testitMNG3038()
44 throws Exception
45 {
46 File testDirBase = ResourceExtractor.simpleExtractResources( getClass(), "/mng-3038" );
47
48 compileDDep( testDirBase, "D1", "1.0" );
49 compileDDep( testDirBase, "D2", "2.0" );
50
51 File testProjectDir = new File( testDirBase, "test-project" );
52
53 Verifier verifier = newVerifier( testProjectDir.getAbsolutePath() );
54 verifier.deleteArtifact( "org.apache.maven.its.it0121", "A", "1.0", "pom" );
55 verifier.deleteArtifact( "org.apache.maven.its.it0121", "A", "1.0", "jar" );
56 verifier.deleteArtifact( "org.apache.maven.its.it0121", "B", "1.0", "pom" );
57 verifier.deleteArtifact( "org.apache.maven.its.it0121", "B", "1.0", "jar" );
58 verifier.deleteArtifact( "org.apache.maven.its.it0121", "C", "1.0", "pom" );
59 verifier.deleteArtifact( "org.apache.maven.its.it0121", "D", "1.0", "jar" );
60 verifier.executeGoal( "install" );
61 verifier.verifyErrorFreeLog();
62 verifier.resetStreams();
63 }
64
65 private void compileDDep( File testDirBase, String projectDDepDir, String version )
66 throws VerificationException, IOException
67 {
68 File testOtherDepDir = new File( testDirBase, "test-other-deps/" + projectDDepDir );
69 Verifier verifierOtherDep = newVerifier( testOtherDepDir.getAbsolutePath() );
70 verifierOtherDep.deleteArtifact( "org.apache.maven.its.it0121", "D", version, "jar" );
71 verifierOtherDep.deleteArtifact( "org.apache.maven.its.it0121", "D", version, "pom" );
72 verifierOtherDep.executeGoal( "install" );
73 verifierOtherDep.verifyErrorFreeLog();
74 verifierOtherDep.resetStreams();
75 }
76 }