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 import java.util.Properties;
27
28
29
30
31
32
33 public class MavenITmng4367LayoutAwareMirrorSelectionTest
34 extends AbstractMavenIntegrationTestCase
35 {
36
37 public MavenITmng4367LayoutAwareMirrorSelectionTest()
38 {
39 super( "[3.0-alpha-3,)" );
40 }
41
42
43
44
45
46 public void testitNoLayout()
47 throws Exception
48 {
49 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-4367" );
50
51 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
52 verifier.setAutoclean( false );
53 verifier.deleteArtifacts( "org.apache.maven.its.mng4367" );
54
55 Properties filterProps = verifier.newDefaultFilterProperties();
56 filterProps.setProperty( "@repourl@", filterProps.getProperty( "@baseurl@" ) + "/void" );
57 filterProps.setProperty( "@mirrorurl@", filterProps.getProperty( "@baseurl@" ) + "/repo" );
58 filterProps.setProperty( "@layouts@", "" );
59
60 verifier.getCliOptions().add( "-s" );
61 verifier.getCliOptions().add( "settings-a.xml" );
62 verifier.filterFile( "settings-template.xml", "settings-a.xml", "UTF-8", filterProps );
63 verifier.setLogFileName( "log-a.txt" );
64 verifier.executeGoal( "validate" );
65 verifier.verifyErrorFreeLog();
66 verifier.resetStreams();
67
68 verifier.assertArtifactPresent( "org.apache.maven.its.mng4367", "dep", "0.1", "jar" );
69 }
70
71
72
73
74 public void testitSpecificLayouts()
75 throws Exception
76 {
77 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-4367" );
78
79 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
80 verifier.setAutoclean( false );
81 verifier.deleteArtifacts( "org.apache.maven.its.mng4367" );
82
83 Properties filterProps = verifier.newDefaultFilterProperties();
84 filterProps.setProperty( "@repourl@", filterProps.getProperty( "@baseurl@" ) + "/void" );
85 filterProps.setProperty( "@mirrorurl@", filterProps.getProperty( "@baseurl@" ) + "/repo" );
86 filterProps.setProperty( "@layouts@", "default,legacy" );
87
88 verifier.getCliOptions().add( "-s" );
89 verifier.getCliOptions().add( "settings-b.xml" );
90 verifier.filterFile( "settings-template.xml", "settings-b.xml", "UTF-8", filterProps );
91 verifier.setLogFileName( "log-b.txt" );
92 verifier.executeGoal( "validate" );
93 verifier.verifyErrorFreeLog();
94 verifier.resetStreams();
95
96 verifier.assertArtifactPresent( "org.apache.maven.its.mng4367", "dep", "0.1", "jar" );
97 }
98
99
100
101
102 public void testitNonMatchingLayout()
103 throws Exception
104 {
105 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-4367" );
106
107 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
108 verifier.setAutoclean( false );
109 verifier.deleteArtifacts( "org.apache.maven.its.mng4367" );
110
111 Properties filterProps = verifier.newDefaultFilterProperties();
112 filterProps.setProperty( "@repourl@", filterProps.getProperty( "@baseurl@" ) + "/repo" );
113 filterProps.setProperty( "@mirrorurl@", filterProps.getProperty( "@baseurl@" ) + "/void" );
114 filterProps.setProperty( "@layouts@", "foo" );
115
116 verifier.getCliOptions().add( "-s" );
117 verifier.getCliOptions().add( "settings-c.xml" );
118 verifier.filterFile( "settings-template.xml", "settings-c.xml", "UTF-8", filterProps );
119 verifier.setLogFileName( "log-c.txt" );
120 verifier.executeGoal( "validate" );
121 verifier.verifyErrorFreeLog();
122 verifier.resetStreams();
123
124 verifier.assertArtifactPresent( "org.apache.maven.its.mng4367", "dep", "0.1", "jar" );
125 }
126
127 }