Author: jdcasey
Date: Thu Jul 31 08:42:31 2008
New Revision: 681400
URL: http://svn.apache.org/viewvc?rev=681400&view=rev
Log:
Fix ITs for use in 2.0.10+, and also clear up the test methods that do multiple
test runs (splitting them into different test methods). Finally, use 127.0.0.1
for some OS X platforms that seem to have problems resolving 'localhost' (seems
like /etc/hosts is empty).
Modified:
maven/core-integration-testing/trunk/core-integration-tests/pom.xml
maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3599useHttpProxyForWebDAV.java
maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3652UserAgentHeader.java
maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3652-user-agent/test-plugin/src/main/java/org/apache/maven/its/mng3652/MyMojo.java
Modified: maven/core-integration-testing/trunk/core-integration-tests/pom.xml
URL:
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-integration-tests/pom.xml?rev=681400&r1=681399&r2=681400&view=diff
==============================================================================
--- maven/core-integration-testing/trunk/core-integration-tests/pom.xml
(original)
+++ maven/core-integration-testing/trunk/core-integration-tests/pom.xml Thu Jul
31 08:42:31 2008
@@ -47,6 +47,12 @@
</includes>
<forkMode>never</forkMode>
<skip>true</skip>
+ <systemProperties>
+ <property>
+ <name>maven.version</name>
+ <value>${maven.version}</value>
+ </property>
+ </systemProperties>
</configuration>
</plugin>
<plugin>
Modified:
maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3599useHttpProxyForWebDAV.java
URL:
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3599useHttpProxyForWebDAV.java?rev=681400&r1=681399&r2=681400&view=diff
==============================================================================
---
maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3599useHttpProxyForWebDAV.java
(original)
+++
maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3599useHttpProxyForWebDAV.java
Thu Jul 31 08:42:31 2008
@@ -33,16 +33,24 @@
public void handle( String target, HttpServletRequest request,
HttpServletResponse response, int dispatch )
throws IOException, ServletException
{
+ System.out.println( "Got request for URL: '" +
request.getRequestURL() + "'" );
+ System.out.flush();
+
response.setContentType( "text/plain" );
+ System.out.println( "Checking for 'Proxy-Connection'
header..." );
if ( request.getHeader( "Proxy-Connection" ) != null )
{
response.setStatus( HttpServletResponse.SC_OK );
response.getWriter().println( "some content" );
+
+ System.out.println( "Proxy-Connection found." );
}
else
{
- response.setStatus( HttpServletResponse.SC_NOT_FOUND );
+ response.setStatus( HttpServletResponse.SC_BAD_REQUEST );
+
+ System.out.println( "Proxy-Connection not found." );
}
( (Request) request ).setHandled( true );
@@ -80,6 +88,7 @@
List cliOptions = new ArrayList();
cliOptions.add( "--settings" );
cliOptions.add( "settings.xml" );
+ cliOptions.add( "-X" );
verifier.setCliOptions( cliOptions );
@@ -90,6 +99,9 @@
verifier.verifyErrorFreeLog();
verifier.resetStreams();
+ File logFile = new File( testDir, "log.txt" );
+ logFile.renameTo( new File( testDir, "logHttp.txt" ) );
+
verifier.assertArtifactPresent( "org.apache.maven.its.mng3599",
"test-dependency", "1.0", "jar" );
verifier.assertArtifactContents( "org.apache.maven.its.mng3599",
"test-dependency", "1.0", "jar",
"some content\n" );
@@ -101,9 +113,9 @@
public void testmng3599useHttpProxyForWebDAV()
throws Exception
{
- // Doesn't work until 2.0.11+
+ // Doesn't work until 2.0.10+
// TODO: reinstate for 2.1 when WebDAV works
- if ( matchesVersionRange( "(2.0.10,2.0.99)" ) )
+ if ( matchesVersionRange( "(2.0.9,2.0.99)" ) )
{
File testDir = ResourceExtractor.simpleExtractResources(
getClass(), "/mng-3599-useHttpProxyForWebDAV" );
@@ -118,6 +130,7 @@
List cliOptions = new ArrayList();
cliOptions.add( "--settings" );
cliOptions.add( "settings.xml" );
+ cliOptions.add( "-X" );
verifier.setCliOptions( cliOptions );
@@ -128,6 +141,9 @@
verifier.verifyErrorFreeLog();
verifier.resetStreams();
+ File logFile = new File( testDir, "log.txt" );
+ logFile.renameTo( new File( testDir, "logDAV.txt" ) );
+
verifier.assertArtifactPresent( "org.apache.maven.its.mng3599",
"test-dependency", "1.0", "jar" );
verifier.assertArtifactContents( "org.apache.maven.its.mng3599",
"test-dependency", "1.0", "jar",
"some content\n" );
Modified:
maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3652UserAgentHeader.java
URL:
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3652UserAgentHeader.java?rev=681400&r1=681399&r2=681400&view=diff
==============================================================================
---
maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3652UserAgentHeader.java
(original)
+++
maven/core-integration-testing/trunk/core-integration-tests/src/test/java/org/apache/maven/integrationtests/MavenITmng3652UserAgentHeader.java
Thu Jul 31 08:42:31 2008
@@ -1,13 +1,9 @@
package org.apache.maven.integrationtests;
-import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
-import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
@@ -34,26 +30,30 @@
throws InvalidVersionSpecificationException
{
// TODO: fix support for this in 2.1-SNAPSHOT
- // 2.0.11+
- //super( "(2.0.9,)" );
- super( "(2.0.10,2.0.99)" );
+ // 2.0.10+
+ // super( "(2.0.9,)" );
+ super( "(2.0.9,2.0.99)" );
}
public void setUp()
throws Exception
{
Handler handler = new AbstractHandler()
- {
+ {
public void handle( String target, HttpServletRequest request,
HttpServletResponse response, int dispatch )
throws IOException, ServletException
{
+ System.out.println( "Handling URL: '" +
request.getRequestURL() + "'" );
+
userAgent = request.getHeader( "User-Agent" );
+
+ System.out.println( "Got User-Agent: '" + userAgent + "'" );
response.setContentType( "text/plain" );
response.setStatus( HttpServletResponse.SC_OK );
response.getWriter().println( "some content" );
response.getWriter().println();
-
+
( (Request) request ).setHandled( true );
}
};
@@ -76,7 +76,7 @@
/**
* Test that the user agent header is configured in the wagon manager.
*/
- public void testmng3652()
+ public void testmng3652_UnConfiguredHttp()
throws Exception
{
File testDir = ResourceExtractor.simpleExtractResources( getClass(),
"/mng-3652-user-agent" );
@@ -89,77 +89,177 @@
verifier.resetStreams();
verifier = new Verifier( projectDir.getAbsolutePath() );
-
+
List cliOptions = new ArrayList();
cliOptions.add( "-DtestPort=" + port );
+ cliOptions.add( "-X" );
verifier.setCliOptions( cliOptions );
-
+
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
+ File logFile = new File( projectDir, "log.txt" );
+ logFile.renameTo( new File( projectDir, "log-unConfiguredHttp.txt" ) );
+
String userAgent = this.userAgent;
assertNotNull( userAgent );
-
+
File touchFile = new File( projectDir, "target/touch.txt" );
assertTrue( touchFile.exists() );
-
+
List lines = verifier.loadFile( touchFile, false );
// NOTE: system property for maven.version may not exist if you use
-Dtest
// surefire parameter to run this single test. Therefore, the plugin
writes
// the maven version into the check file.
- String mavenVersion = ((String) lines.get( 0 )).substring( 0, 3 );
+ String mavenVersion = ( (String) lines.get( 0 ) ).substring( 0, 3 );
String javaVersion = (String) lines.get( 1 );
String os = (String) lines.get( 2 ) + " " + (String) lines.get( 3 );
String artifactVersion = (String) lines.get( 4 );
- assertEquals( "Comparing User-Agent '" + userAgent + "'",
"Apache-Maven/" + mavenVersion + " (Java " + javaVersion + "; " + os + ")" + "
maven-artifact/" + artifactVersion, userAgent );
+// System.out.println( "Comparing User-Agent '" + userAgent + "' to
'Apache-Maven/" + mavenVersion + " (Java "
+// + javaVersion + "; " + os + ")" + " maven-artifact/" +
artifactVersion + "'" );
+ assertEquals( "Comparing User-Agent '" + userAgent + "'",
"Apache-Maven/" + mavenVersion + " (Java "
+ + javaVersion + "; " + os + ")" + " maven-artifact/" +
artifactVersion, userAgent );
+ }
+
+ public void testmng3652_UnConfiguredDAV()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(),
"/mng-3652-user-agent" );
+ File pluginDir = new File( testDir, "test-plugin" );
+ File projectDir = new File( testDir, "test-project" );
+
+ Verifier verifier = new Verifier( pluginDir.getAbsolutePath() );
+ verifier.executeGoal( "install" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier = new Verifier( projectDir.getAbsolutePath() );
// test webdav
- cliOptions = new ArrayList();
+ List cliOptions = new ArrayList();
cliOptions.add( "-DtestPort=" + port );
cliOptions.add( "-DtestProtocol=dav:http" );
+ cliOptions.add( "-X" );
verifier.setCliOptions( cliOptions );
-
+
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
-
- userAgent = this.userAgent;
+
+ File touchFile = new File( projectDir, "target/touch.txt" );
+ assertTrue( touchFile.exists() );
+
+ List lines = verifier.loadFile( touchFile, false );
+
+ // NOTE: system property for maven.version may not exist if you use
-Dtest
+ // surefire parameter to run this single test. Therefore, the plugin
writes
+ // the maven version into the check file.
+ String mavenVersion = ( (String) lines.get( 0 ) ).substring( 0, 3 );
+ String javaVersion = (String) lines.get( 1 );
+ String os = (String) lines.get( 2 ) + " " + (String) lines.get( 3 );
+ String artifactVersion = (String) lines.get( 4 );
+
+ File logFile = new File( projectDir, "log.txt" );
+ logFile.renameTo( new File( projectDir, "log-unConfiguredDAV.txt" ) );
+
+ String userAgent = this.userAgent;
assertNotNull( userAgent );
- assertEquals( "Comparing User-Agent '" + userAgent + "'",
"Apache-Maven/" + mavenVersion + " (Java " + javaVersion + "; " + os + ")" + "
maven-artifact/" + artifactVersion, userAgent );
+
+// System.out.println( "Comparing User-Agent '" + userAgent + "' to
'Apache-Maven/" + mavenVersion + " (Java "
+// + javaVersion + "; " + os + ")" + " maven-artifact/" +
artifactVersion + "'" );
+ assertEquals( "Comparing User-Agent '" + userAgent + "'",
"Apache-Maven/" + mavenVersion + " (Java "
+ + javaVersion + "; " + os + ")" + " maven-artifact/" +
artifactVersion, userAgent );
+ }
+
+ public void testmng3652_ConfigurationInSettingsWithoutUserAgent()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(),
"/mng-3652-user-agent" );
+ File pluginDir = new File( testDir, "test-plugin" );
+ File projectDir = new File( testDir, "test-project" );
+
+ Verifier verifier = new Verifier( pluginDir.getAbsolutePath() );
+ verifier.executeGoal( "install" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier = new Verifier( projectDir.getAbsolutePath() );
// test settings with no config
- cliOptions = new ArrayList();
+ List cliOptions = new ArrayList();
cliOptions.add( "-DtestPort=" + port );
cliOptions.add( "--settings" );
cliOptions.add( "settings-no-config.xml" );
+ cliOptions.add( "-X" );
verifier.setCliOptions( cliOptions );
-
+
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
-
- userAgent = this.userAgent;
+
+ File touchFile = new File( projectDir, "target/touch.txt" );
+ assertTrue( touchFile.exists() );
+
+ List lines = verifier.loadFile( touchFile, false );
+
+ // NOTE: system property for maven.version may not exist if you use
-Dtest
+ // surefire parameter to run this single test. Therefore, the plugin
writes
+ // the maven version into the check file.
+ String mavenVersion = ( (String) lines.get( 0 ) ).substring( 0, 3 );
+ String javaVersion = (String) lines.get( 1 );
+ String os = (String) lines.get( 2 ) + " " + (String) lines.get( 3 );
+ String artifactVersion = (String) lines.get( 4 );
+
+ File logFile = new File( projectDir, "log.txt" );
+ logFile.renameTo( new File( projectDir,
"log-configWithoutUserAgent.txt" ) );
+
+ String userAgent = this.userAgent;
assertNotNull( userAgent );
- assertEquals( "Comparing User-Agent '" + userAgent + "'",
"Apache-Maven/" + mavenVersion + " (Java " + javaVersion + "; " + os + ")" + "
maven-artifact/" + artifactVersion, userAgent );
+
+// System.out.println( "Comparing User-Agent '" + userAgent + "' to
'Apache-Maven/" + mavenVersion + " (Java "
+// + javaVersion + "; " + os + ")" + " maven-artifact/" +
artifactVersion + "'" );
+ assertEquals( "Comparing User-Agent '" + userAgent + "'",
"Apache-Maven/" + mavenVersion + " (Java "
+ + javaVersion + "; " + os + ")" + " maven-artifact/" +
artifactVersion, userAgent );
+ }
+
+ public void testmng3652_UserAgentConfiguredInSettings()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(),
"/mng-3652-user-agent" );
+ File pluginDir = new File( testDir, "test-plugin" );
+ File projectDir = new File( testDir, "test-project" );
+
+ Verifier verifier = new Verifier( pluginDir.getAbsolutePath() );
+ verifier.executeGoal( "install" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier = new Verifier( projectDir.getAbsolutePath() );
// test settings with config
- cliOptions = new ArrayList();
+ List cliOptions = new ArrayList();
cliOptions.add( "-DtestPort=" + port );
cliOptions.add( "--settings" );
cliOptions.add( "settings.xml" );
+ cliOptions.add( "-X" );
verifier.setCliOptions( cliOptions );
-
+
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
-
- userAgent = this.userAgent;
+
+ File logFile = new File( projectDir, "log.txt" );
+ logFile.renameTo( new File( projectDir, "log-configWithUserAgent.txt"
) );
+
+ String userAgent = this.userAgent;
assertNotNull( userAgent );
- assertEquals( "Maven Fu", userAgent );
+
+// System.out.println( "Comparing User-Agent: '" + userAgent + "' to
'Maven Fu'" );
+ assertEquals( "Maven Fu", userAgent );
}
}
Modified:
maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3652-user-agent/test-plugin/src/main/java/org/apache/maven/its/mng3652/MyMojo.java
URL:
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3652-user-agent/test-plugin/src/main/java/org/apache/maven/its/mng3652/MyMojo.java?rev=681400&r1=681399&r2=681400&view=diff
==============================================================================
---
maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3652-user-agent/test-plugin/src/main/java/org/apache/maven/its/mng3652/MyMojo.java
(original)
+++
maven/core-integration-testing/trunk/core-integration-tests/src/test/resources/mng-3652-user-agent/test-plugin/src/main/java/org/apache/maven/its/mng3652/MyMojo.java
Thu Jul 31 08:42:31 2008
@@ -82,7 +82,7 @@
throws MojoExecutionException
{
ArtifactRepository remote =
- repositoryFactory.createArtifactRepository( "test", testProtocol +
"://localhost:" + testPort, layout,
+ repositoryFactory.createArtifactRepository( "test", testProtocol +
"://127.0.0.1:" + testPort, layout,
new
ArtifactRepositoryPolicy(), new ArtifactRepositoryPolicy() );
Artifact artifact = artifactFactory.createArtifact( "bad.group",
"missing-artifact", "1", null, "jar" );