diff --git a/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng3652UserAgentHeaderTest.java b/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng3652UserAgentHeaderTest.java index bade08c306..2f31344ecd 100644 --- a/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng3652UserAgentHeaderTest.java +++ b/its/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng3652UserAgentHeaderTest.java @@ -47,6 +47,8 @@ public class MavenITmng3652UserAgentHeaderTest private int port; private String userAgent; + + private String customHeader; public MavenITmng3652UserAgentHeaderTest() { @@ -65,6 +67,8 @@ public void handle( String target, HttpServletRequest request, HttpServletRespon userAgent = request.getHeader( "User-Agent" ); + customHeader = request.getHeader( "Custom-Header" ); + System.out.println( "Got User-Agent: '" + userAgent + "'" ); response.setContentType( "text/plain" ); @@ -258,7 +262,8 @@ public void testmng3652_UserAgentConfiguredInSettings() throws Exception { // customizing version not supported in Maven 3 - requiresMavenVersion( "(,3.0-beta-3)" ); + //requiresMavenVersion( "(,3.0-beta-3)" ); + requiresMavenVersion("[2.1.0-M1,3.0-alpha-1),[3.0-beta-3,)"); File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-3652" ); File pluginDir = new File( testDir, "test-plugin" ); @@ -287,6 +292,43 @@ public void testmng3652_UserAgentConfiguredInSettings() assertNotNull( userAgent ); assertEquals( "Maven Fu", userAgent ); + assertEquals( "My wonderful header", customHeader ); + } + + public void testmng3652_AddutionnalHttpHeaderConfiguredInSettings() + throws Exception + { + // customizing version not supported in Maven 3 + requiresMavenVersion("[2.1.0-M1,3.0-alpha-1),[3.0-beta-3,)"); + + File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-3652" ); + File pluginDir = new File( testDir, "test-plugin" ); + File projectDir = new File( testDir, "test-project" ); + + Verifier verifier = newVerifier( pluginDir.getAbsolutePath(), "remote" ); + verifier.executeGoal( "install" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + + verifier = newVerifier( projectDir.getAbsolutePath(), "remote" ); + + // test settings with config + + verifier.getCliOptions().add( "-DtestPort=" + port ); + verifier.getCliOptions().add( "--settings" ); + verifier.getCliOptions().add( "settings.xml" ); + verifier.getCliOptions().add( "-X" ); + + verifier.setLogFileName( "log-configWithUserAgent.txt" ); + verifier.executeGoal( "validate" ); + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + + String userAgent = this.userAgent; + assertNotNull( userAgent ); + + assertEquals( "Maven Fu", userAgent ); + assertEquals( "My wonderful header", customHeader ); } private String getMavenUAVersion( String mavenVersion ) diff --git a/its/core-it-suite/src/test/resources/mng-3652/test-project/settings.xml b/its/core-it-suite/src/test/resources/mng-3652/test-project/settings.xml index 1ba6d7060b..bb720a4b89 100644 --- a/its/core-it-suite/src/test/resources/mng-3652/test-project/settings.xml +++ b/its/core-it-suite/src/test/resources/mng-3652/test-project/settings.xml @@ -8,6 +8,10 @@ User-Agent Maven Fu + + Custom-Header + My wonderful header +