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.util.List;
24
25 import org.apache.maven.it.Verifier;
26 import org.apache.maven.it.util.ResourceExtractor;
27
28
29
30
31
32
33
34
35
36
37 public class MavenITmng2045testJarDependenciesBrokenInReactorTest
38 extends AbstractMavenIntegrationTestCase
39 {
40
41 public MavenITmng2045testJarDependenciesBrokenInReactorTest()
42 {
43 super( "(2.0.7,)" );
44 }
45
46 public void testitMNG2045()
47 throws Exception
48 {
49 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-2045" );
50
51 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
52 verifier.setAutoclean( false );
53 verifier.deleteDirectory( "test-user/target" );
54 verifier.deleteArtifacts( "org.apache.maven.its.mng2045" );
55 verifier.executeGoal( "validate" );
56 verifier.verifyErrorFreeLog();
57 verifier.resetStreams();
58
59 List compile = verifier.loadLines( "test-user/target/compile.txt", "UTF-8" );
60 assertTestClasses( compile );
61 assertNotMainClasses( compile );
62
63 List runtime = verifier.loadLines( "test-user/target/runtime.txt", "UTF-8" );
64 assertTestClasses( runtime );
65 assertNotMainClasses( runtime );
66
67 List test = verifier.loadLines( "test-user/target/test.txt", "UTF-8" );
68 assertTestClasses( test );
69 assertNotMainClasses( test );
70 }
71
72 private void assertTestClasses( List classpath )
73 {
74
75
76
77
78 assertTrue( "test classes missing in " + classpath,
79 classpath.contains( "test" ) || classpath.contains( "test.jar" )
80 || classpath.contains( "test-jar-0.1-SNAPSHOT-tests.jar" ) );
81 }
82
83 private void assertNotMainClasses( List classpath )
84 {
85
86 assertFalse( "main classes present in " + classpath,
87 classpath.contains( "main" ) );
88 }
89
90 }