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.Iterator;
27 import java.util.List;
28
29
30
31
32
33
34 public class MavenITmng4829ChecksumFailureWarningTest
35 extends AbstractMavenIntegrationTestCase
36 {
37
38 public MavenITmng4829ChecksumFailureWarningTest()
39 {
40 super( "[2.0.3,3.0-alpha-1)[3.0,)" );
41 }
42
43
44
45
46 public void testit()
47 throws Exception
48 {
49 File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-4829" );
50
51 Verifier verifier = newVerifier( testDir.getAbsolutePath() );
52 verifier.setAutoclean( false );
53 verifier.deleteDirectory( "target" );
54 verifier.deleteArtifacts( "org.apache.maven.its.mng4829" );
55 verifier.getCliOptions().add( "-s" );
56 verifier.getCliOptions().add( "settings.xml" );
57 verifier.filterFile( "settings-template.xml", "settings.xml", "UTF-8", verifier.newDefaultFilterProperties() );
58 verifier.executeGoal( "validate" );
59 verifier.verifyErrorFreeLog();
60 verifier.resetStreams();
61
62 List lines = verifier.loadFile( new File( testDir, verifier.getLogFileName() ), false );
63
64 boolean foundWarningJar = false, foundWarningPom = false;
65
66 for ( Iterator it = lines.iterator(); it.hasNext(); )
67 {
68 String line = (String) it.next();
69
70 if ( line.matches( "(?i)\\[WARNING\\].*Checksum.*failed.*fa23720355eead3906fdf4ffd2a1a5f5.*" ) )
71 {
72 foundWarningPom = true;
73 }
74 else if ( line.matches( "(?i)\\[WARNING\\].*Checksum.*failed.*d912aa49cba88e7e9c578e042953f7ce307daac5.*" ) )
75 {
76 foundWarningJar = true;
77 }
78 }
79
80 assertTrue( "Checksum warning for corrupt.pom has not been logged.", foundWarningPom );
81 assertTrue( "Checksum warning for corrupt.jar has not been logged.", foundWarningJar );
82 }
83
84 }