This is an automated email from the ASF dual-hosted git repository.

cstamas pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-integration-testing.git


The following commit(s) were added to refs/heads/master by this push:
     new c7c892351 [MNG-7909] Apply Resolver 2.0.0 changes (#317)
c7c892351 is described below

commit c7c8923515e7fc6830dec418720eb52bb4055a7e
Author: Tamas Cservenak <[email protected]>
AuthorDate: Tue Nov 7 13:27:35 2023 +0100

    [MNG-7909] Apply Resolver 2.0.0 changes (#317)
    
    Changes:
    * IT MNG-4368 "smart install" undone
    * IT MNG-5175 force Wagon as it uses Wagon config
    * IT MNG-7470 adapt to new default and new transport
---
 ...mng4368TimestampAwareArtifactInstallerTest.java |  3 +-
 .../maven/it/MavenITmng5175WagonHttpTest.java      |  2 +
 .../it/MavenITmng7470ResolverTransportTest.java    | 46 ++++++++++++++++++++--
 .../maven/it/AbstractMavenIntegrationTestCase.java |  2 +-
 4 files changed, 47 insertions(+), 6 deletions(-)

diff --git 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4368TimestampAwareArtifactInstallerTest.java
 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4368TimestampAwareArtifactInstallerTest.java
index b58ea201a..70de6f086 100644
--- 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4368TimestampAwareArtifactInstallerTest.java
+++ 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng4368TimestampAwareArtifactInstallerTest.java
@@ -27,13 +27,14 @@ import org.junit.jupiter.api.Test;
 
 /**
  * This is a test set for <a 
href="https://issues.apache.org/jira/browse/MNG-4368";>MNG-4368</a>.
+ * Resolver 2.0.0 (in use since Maven 4.0.0-alpha-9) undoes this "smart" 
solution.
  *
  * @author Benjamin Bentmann
  */
 public class MavenITmng4368TimestampAwareArtifactInstallerTest extends 
AbstractMavenIntegrationTestCase {
 
     public MavenITmng4368TimestampAwareArtifactInstallerTest() {
-        super("[2.0.3,3.0-alpha-1),[3.0-alpha-6,)");
+        super("[2.0.3,3.0-alpha-1),[3.0-alpha-6,4.0.0-alpha-8]");
     }
 
     /**
diff --git 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5175WagonHttpTest.java
 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5175WagonHttpTest.java
index 60a93dd8d..bd96fb58a 100644
--- 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5175WagonHttpTest.java
+++ 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5175WagonHttpTest.java
@@ -117,6 +117,8 @@ public class MavenITmng5175WagonHttpTest extends 
AbstractMavenIntegrationTestCas
         verifier.addCliArgument("--errors");
         verifier.addCliArgument("-X");
         verifier.addCliArgument("validate");
+        verifier.addCliArgument(
+                "-Dmaven.resolver.transport=wagon"); // this tests Wagon 
integration and uses Wagon specific config
         verifier.execute();
 
         verifier.verifyTextInLog(
diff --git 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng7470ResolverTransportTest.java
 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng7470ResolverTransportTest.java
index b6fa21bba..4221d2c38 100644
--- 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng7470ResolverTransportTest.java
+++ 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng7470ResolverTransportTest.java
@@ -22,9 +22,12 @@ import java.io.File;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.apache.maven.artifact.versioning.ArtifactVersion;
+import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
 import org.apache.maven.shared.verifier.Verifier;
 import org.apache.maven.shared.verifier.util.ResourceExtractor;
 import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.Assumptions;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
@@ -39,6 +42,11 @@ public class MavenITmng7470ResolverTransportTest extends 
AbstractMavenIntegratio
 
     private int port;
 
+    private static final ArtifactVersion JDK_TRANSPORT_USABLE_ON_JDK_SINCE = 
new DefaultArtifactVersion("11");
+
+    private static final ArtifactVersion JDK_TRANSPORT_IN_MAVEN_SINCE =
+            new DefaultArtifactVersion("4.0.0-alpha-9-SNAPSHOT");
+
     public MavenITmng7470ResolverTransportTest() {
         super("[3.9.0,)");
     }
@@ -99,11 +107,35 @@ public class MavenITmng7470ResolverTransportTest extends 
AbstractMavenIntegratio
 
     private static final String WAGON_LOG_SNIPPET = "[DEBUG] Using transporter 
WagonTransporter";
 
-    private static final String NATIVE_LOG_SNIPPET = "[DEBUG] Using 
transporter HttpTransporter";
+    private static final String APACHE_LOG_SNIPPET = "[DEBUG] Using 
transporter HttpTransporter";
+
+    private static final String JDK_LOG_SNIPPET = "[DEBUG] Using transporter 
JdkHttpTransporter";
+
+    /**
+     * Returns {@code true} if JDK HttpClient transport is usable (Java11 or 
better).
+     */
+    private boolean isJdkTransportUsable() {
+        return JDK_TRANSPORT_USABLE_ON_JDK_SINCE.compareTo(getJavaVersion()) < 
1;
+    }
+
+    /**
+     * Returns {@code true} if JDK HttpClient transport is present in Maven 
(since 4.0.0-alpha-9, the Resovler 2.0.0
+     * upgrade).
+     */
+    private boolean isJdkTransportPresent() {
+        return JDK_TRANSPORT_IN_MAVEN_SINCE.compareTo(getMavenVersion()) < 1;
+    }
+
+    private String defaultLogSnippet() {
+        if (isJdkTransportUsable() && isJdkTransportPresent()) {
+            return JDK_LOG_SNIPPET;
+        }
+        return APACHE_LOG_SNIPPET;
+    }
 
     @Test
     public void testResolverTransportDefault() throws Exception {
-        performTest(null, NATIVE_LOG_SNIPPET);
+        performTest(null, defaultLogSnippet());
     }
 
     @Test
@@ -112,7 +144,13 @@ public class MavenITmng7470ResolverTransportTest extends 
AbstractMavenIntegratio
     }
 
     @Test
-    public void testResolverTransportNative() throws Exception {
-        performTest("native", NATIVE_LOG_SNIPPET);
+    public void testResolverTransportApache() throws Exception {
+        performTest(isJdkTransportPresent() ? "apache" : "native", 
APACHE_LOG_SNIPPET);
+    }
+
+    @Test
+    public void testResolverTransportJdk() throws Exception {
+        Assumptions.assumeTrue(isJdkTransportUsable() && 
isJdkTransportPresent());
+        performTest("jdk", JDK_LOG_SNIPPET);
     }
 }
diff --git 
a/core-it-support/maven-it-helper/src/main/java/org/apache/maven/it/AbstractMavenIntegrationTestCase.java
 
b/core-it-support/maven-it-helper/src/main/java/org/apache/maven/it/AbstractMavenIntegrationTestCase.java
index cc02af688..2630be278 100644
--- 
a/core-it-support/maven-it-helper/src/main/java/org/apache/maven/it/AbstractMavenIntegrationTestCase.java
+++ 
b/core-it-support/maven-it-helper/src/main/java/org/apache/maven/it/AbstractMavenIntegrationTestCase.java
@@ -94,7 +94,7 @@ public abstract class AbstractMavenIntegrationTestCase {
      *
      * @return The Java version, never <code>null</code>.
      */
-    private static ArtifactVersion getJavaVersion() {
+    protected static ArtifactVersion getJavaVersion() {
         if (javaVersion == null) {
             String version = System.getProperty("java.version");
             version = version.replaceAll("[_-]", ".");

Reply via email to