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.util.ResourceExtractor;
23
24 import java.io.File;
25 import java.util.ArrayList;
26 import java.util.List;
27
28
29
30
31
32
33
34
35
36
37 public class MavenITmng3710PollutedClonedPluginsTest
38 extends AbstractMavenIntegrationTestCase
39 {
40 public MavenITmng3710PollutedClonedPluginsTest()
41 {
42 super( "(2.0.8,)" );
43 }
44
45 public void testitMNG3710_POMInheritance()
46 throws Exception
47 {
48 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-3710/pom-inheritance" );
49 File pluginDir = new File( testDir, "maven-mng3710-pomInheritance-plugin" );
50 File projectsDir = new File( testDir, "projects" );
51
52 Verifier verifier;
53
54 verifier = newVerifier( pluginDir.getAbsolutePath(), "remote" );
55 verifier.executeGoal( "install" );
56
57 verifier.verifyErrorFreeLog();
58 verifier.resetStreams();
59
60 verifier = newVerifier( projectsDir.getAbsolutePath() );
61 verifier.executeGoal( "validate" );
62
63 verifier.verifyErrorFreeLog();
64 verifier.resetStreams();
65
66 File topLevelTouchFile = new File( projectsDir, "target/touch.txt" );
67 assertFalse( "Top-level touch file should NOT be created in projects tree.", topLevelTouchFile.exists() );
68
69 File midLevelTouchFile = new File( projectsDir, "middle/target/touch.txt" );
70 assertTrue( "Mid-level touch file should have been created in projects tree.", midLevelTouchFile.exists() );
71
72 File childLevelTouchFile = new File( projectsDir, "middle/child/target/touch.txt" );
73 assertTrue( "Child-level touch file should have been created in projects tree.", childLevelTouchFile.exists() );
74
75 }
76
77 public void testitMNG3710_OriginalModel()
78 throws Exception
79 {
80 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-3710/original-model" );
81 File pluginsDir = new File( testDir, "plugins" );
82 File projectDir = new File( testDir, "project" );
83
84 Verifier verifier;
85
86 verifier = newVerifier( pluginsDir.getAbsolutePath(), "remote" );
87 verifier.executeGoal( "install" );
88
89 verifier.verifyErrorFreeLog();
90 verifier.resetStreams();
91
92 verifier = newVerifier( projectDir.getAbsolutePath() );
93
94 List<String> goals = new ArrayList<>();
95 goals.add( "org.apache.maven.its.mng3710:mavenit-mng3710-directInvoke-plugin:1:run" );
96 goals.add( "validate" );
97
98 verifier.executeGoals( goals );
99
100 verifier.verifyErrorFreeLog();
101 verifier.resetStreams();
102 }
103 }