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.List;
26
27
28
29
30
31
32 public class MavenITmng2741PluginMetadataResolutionErrorMessageTest
33 extends AbstractMavenIntegrationTestCase
34 {
35
36 public MavenITmng2741PluginMetadataResolutionErrorMessageTest()
37 {
38 super( "[2.1.0,3.0-alpha-1),[3.0-beta-1,)" );
39 }
40
41
42
43
44
45
46 public void testitPrefix()
47 throws Exception
48 {
49 testit( "prefix", "foo:bar" );
50 }
51
52
53
54
55
56
57 public void testitVersion()
58 throws Exception
59 {
60 testit( "version", "org.apache.maven.its.mng2741:maven-it-plugin:foo" );
61 }
62
63 private void testit( String test, String goal )
64 throws Exception
65 {
66 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-2741" );
67
68 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
69 verifier.setAutoclean( false );
70 verifier.setLogFileName( "log-" + test + ".txt" );
71 verifier.addCliOption( "--settings" );
72 verifier.addCliOption( "settings.xml" );
73 try
74 {
75 verifier.executeGoal( goal );
76 fail( "Build should have failed to resolve plugin prefix" );
77 }
78 catch ( VerificationException e )
79 {
80 boolean foundCause = false;
81 StringBuilder sb = new StringBuilder( );
82 List<String> lines = verifier.loadLines( verifier.getLogFileName(), "UTF-8" );
83 for ( String line : lines )
84 {
85 sb.append( line ).append( System.lineSeparator() );
86 if ( line.matches( ".*Connection refused.*" ) )
87 {
88 foundCause = true;
89 break;
90 }
91 if ( line.matches( ".*Connection to http://localhost:54312 refused.*" ) )
92 {
93 foundCause = true;
94 break;
95 }
96 if ( line.matches( ".*[Tt]ransfer failed for http://localhost:54312/repo/.*/maven-metadata.xml.*" ) )
97 {
98 foundCause = true;
99 break;
100 }
101 }
102 assertTrue( "Transfer error cause was not found: " + sb, foundCause );
103 }
104 finally
105 {
106 verifier.resetStreams();
107 }
108 }
109
110 }