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