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("[_-]", ".");