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
27
28
29
30
31
32 public class MavenITmng4960MakeLikeReactorResumeTest
33 extends AbstractMavenIntegrationTestCase
34 {
35
36 public MavenITmng4960MakeLikeReactorResumeTest()
37 {
38 super( "[2.1.0,3.0-alpha-1),[3.0.2,)" );
39 }
40
41
42
43
44
45 public void testitFromUpstream()
46 throws Exception
47 {
48 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-4960" );
49
50 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
51 verifier.setAutoclean( false );
52 verifier.deleteDirectory( "target" );
53 verifier.deleteDirectory( "mod-a/target" );
54 verifier.deleteDirectory( "mod-b/target" );
55 verifier.getCliOptions().add( "--projects" );
56 verifier.getCliOptions().add( "mod-b" );
57 verifier.getCliOptions().add( "--also-make" );
58 verifier.getCliOptions().add( "--resume-from" );
59 verifier.getCliOptions().add( "mod-a" );
60 verifier.setLogFileName( "log-up.txt" );
61 verifier.executeGoal( "validate" );
62 verifier.verifyErrorFreeLog();
63 verifier.resetStreams();
64
65 verifier.assertFilePresent( "mod-a/target/touch.txt" );
66 verifier.assertFilePresent( "mod-b/target/touch.txt" );
67 verifier.assertFileNotPresent( "target/touch.txt" );
68 }
69
70
71
72
73
74 public void testitFromDownstream()
75 throws Exception
76 {
77 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-4960" );
78
79 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
80 verifier.setAutoclean( false );
81 verifier.deleteDirectory( "target" );
82 verifier.deleteDirectory( "mod-a/target" );
83 verifier.deleteDirectory( "mod-b/target" );
84 verifier.getCliOptions().add( "--projects" );
85 verifier.getCliOptions().add( "mod-a" );
86 verifier.getCliOptions().add( "--also-make-dependents" );
87 verifier.getCliOptions().add( "--resume-from" );
88 verifier.getCliOptions().add( "mod-b" );
89 verifier.setLogFileName( "log-down.txt" );
90 verifier.executeGoal( "validate" );
91 verifier.verifyErrorFreeLog();
92 verifier.resetStreams();
93
94 verifier.assertFileNotPresent( "mod-a/target/touch.txt" );
95 verifier.assertFilePresent( "mod-b/target/touch.txt" );
96 verifier.assertFileNotPresent( "target/touch.txt" );
97 }
98
99 }