You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by gn...@apache.org on 2022/08/31 07:46:02 UTC
[maven-verifier] branch master updated: [MSHARED-1089] Upgrade maven-verifier to JDK 8 / Junit 5 (#31)
This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-verifier.git
The following commit(s) were added to refs/heads/master by this push:
new 9c6b80b [MSHARED-1089] Upgrade maven-verifier to JDK 8 / Junit 5 (#31)
9c6b80b is described below
commit 9c6b80bb6daa6e9f486bade6dd18136f31fe27eb
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Wed Aug 31 09:45:57 2022 +0200
[MSHARED-1089] Upgrade maven-verifier to JDK 8 / Junit 5 (#31)
* [MSHARED-1089] Upgrade maven-verifier to JDK 8 / Junit 5
* Remove junit from compile scope
---
pom.xml | 12 +--
src/main/java/org/apache/maven/it/Verifier.java | 100 ---------------------
.../apache/maven/it/Embedded3xLauncherTest.java | 18 ++--
.../org/apache/maven/it/ForkedLauncherTest.java | 38 ++++----
.../java/org/apache/maven/it/VerifierTest.java | 37 ++++----
5 files changed, 52 insertions(+), 153 deletions(-)
diff --git a/pom.xml b/pom.xml
index a68fe0e..77b756c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -28,13 +28,13 @@
</parent>
<artifactId>maven-verifier</artifactId>
- <version>1.8.1-SNAPSHOT</version>
+ <version>2.0.0-SNAPSHOT</version>
<name>Apache Maven Verifier Component</name>
<description>Provides a test harness for Maven integration tests.</description>
<properties>
- <javaVersion>7</javaVersion>
+ <javaVersion>8</javaVersion>
<project.build.outputTimestamp>2022-03-19T12:57:53Z</project.build.outputTimestamp>
</properties>
@@ -73,14 +73,16 @@
</dependency>
<dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.13.2</version>
+ <groupId>org.junit.jupiter</groupId>
+ <artifactId>junit-jupiter</artifactId>
+ <version>5.8.0</version>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>2.2</version>
+ <scope>test</scope>
</dependency>
<!-- embedder for testing Embedded3xLauncher with classpath -->
<dependency>
diff --git a/src/main/java/org/apache/maven/it/Verifier.java b/src/main/java/org/apache/maven/it/Verifier.java
index 5313698..ebf54cb 100644
--- a/src/main/java/org/apache/maven/it/Verifier.java
+++ b/src/main/java/org/apache/maven/it/Verifier.java
@@ -59,7 +59,6 @@ import org.apache.maven.shared.utils.cli.Commandline;
import org.apache.maven.shared.utils.cli.StreamConsumer;
import org.apache.maven.shared.utils.cli.WriterStreamConsumer;
import org.apache.maven.shared.utils.io.FileUtils;
-import org.junit.Assert;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
@@ -1046,24 +1045,6 @@ public class Verifier
verifyFilePresence( file, true );
}
- /**
- *
- * @param file the path of the file to check
- * @deprecated Use {@link #verifyFilePresent(String)} instead.
- */
- @Deprecated
- public void assertFilePresent( String file )
- {
- try
- {
- verifyFilePresent( file );
- }
- catch ( VerificationException e )
- {
- Assert.fail( e.getMessage() );
- }
- }
-
/**
* Verifies the given file's content matches an regular expression.
* Note this method also checks that the file exists and is readable.
@@ -1090,28 +1071,6 @@ public class Verifier
}
}
- /**
- * Check the given file's content matches a regular expression. Note this method also checks that the file exists
- * and is readable.
- *
- * @param file the path of the file to check
- * @param regex a regular expression that the file's contents should match
- * @see Pattern
- * @deprecated Use {@link #verifyFileContentMatches(String, String)} instead.
- */
- @Deprecated
- public void assertFileMatches( String file, String regex )
- {
- try
- {
- verifyFileContentMatches( file, regex );
- }
- catch ( VerificationException e )
- {
- Assert.fail( e.getMessage() );
- }
- }
-
/**
* Verifies that the given file does not exist.
*
@@ -1123,24 +1082,6 @@ public class Verifier
verifyFilePresence( file, false );
}
- /**
- *
- * @param file the path of the file to check
- * @deprecated Use {@link #verifyFileNotPresent(String)} instead.
- */
- @Deprecated
- public void assertFileNotPresent( String file )
- {
- try
- {
- verifyFileNotPresent( file );
- }
- catch ( VerificationException e )
- {
- Assert.fail( e.getMessage() );
- }
- }
-
private void verifyArtifactPresence( boolean wanted, String groupId, String artifactId, String version, String ext )
throws VerificationException
{
@@ -1181,36 +1122,6 @@ public class Verifier
verifyArtifactPresence( false, groupId, artifactId, version, ext );
}
- private void assertArtifactPresence( boolean wanted, String org, String name, String version, String ext )
- {
- try
- {
- verifyArtifactPresence( wanted, org, name, version, ext );
- }
- catch ( VerificationException e )
- {
- Assert.fail( e.getMessage() );
- }
- }
-
- /**
- * @deprecated Use {@link #verifyArtifactPresent(String, String, String, String)} instead.
- */
- @Deprecated
- public void assertArtifactPresent( String org, String name, String version, String ext )
- {
- assertArtifactPresence( true, org, name, version, ext );
- }
-
- /**
- * @deprecated Use {@link #verifyArtifactNotPresent(String, String, String, String)} instead.
- */
- @Deprecated
- public void assertArtifactNotPresent( String org, String name, String version, String ext )
- {
- assertArtifactPresence( false, org, name, version, ext );
- }
-
private void verifyExpectedResult( String line )
throws VerificationException
{
@@ -1916,17 +1827,6 @@ public class Verifier
}
}
- /**
- * @deprecated Use {@link #verifyArtifactContent(String, String, String, String, String)} instead.
- */
- @Deprecated
- public void assertArtifactContents( String org, String artifact, String version, String type, String contents )
- throws IOException
- {
- String fileName = getArtifactPath( org, artifact, version, type );
- Assert.assertEquals( contents, FileUtils.fileRead( fileName ) );
- }
-
static class UserModelReader
extends DefaultHandler
{
diff --git a/src/test/java/org/apache/maven/it/Embedded3xLauncherTest.java b/src/test/java/org/apache/maven/it/Embedded3xLauncherTest.java
index 9548a1b..d58c495 100644
--- a/src/test/java/org/apache/maven/it/Embedded3xLauncherTest.java
+++ b/src/test/java/org/apache/maven/it/Embedded3xLauncherTest.java
@@ -19,22 +19,22 @@ package org.apache.maven.it;
* under the License.
*/
-import java.io.File;
import java.nio.file.Files;
+import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Properties;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
+
public class Embedded3xLauncherTest
{
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public Path temporaryDir;
private final String workingDir = Paths.get( "src/test/resources" ).toAbsolutePath().toString();
@@ -56,11 +56,11 @@ public class Embedded3xLauncherTest
private void runLauncher( MavenLauncher launcher ) throws Exception
{
- File logFile = temporaryFolder.newFile( "build.log" );
+ Path logFile = temporaryDir.resolve( "build.log" );
- int exitCode = launcher.run( new String[] {"clean"}, new Properties(), workingDir, logFile );
+ int exitCode = launcher.run( new String[] {"clean"}, new Properties(), workingDir, logFile.toFile() );
assertThat( "exit code unexpected, build log: " + System.lineSeparator() +
- new String( Files.readAllBytes( logFile.toPath() ) ), exitCode, is( 0 ) );
+ new String( Files.readAllBytes( logFile ) ), exitCode, is( 0 ) );
}
}
diff --git a/src/test/java/org/apache/maven/it/ForkedLauncherTest.java b/src/test/java/org/apache/maven/it/ForkedLauncherTest.java
index 1173593..7808cae 100644
--- a/src/test/java/org/apache/maven/it/ForkedLauncherTest.java
+++ b/src/test/java/org/apache/maven/it/ForkedLauncherTest.java
@@ -22,26 +22,27 @@ import static org.hamcrest.MatcherAssert.assertThat;
*/
import static org.hamcrest.Matchers.is;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.fail;
import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileReader;
+import java.nio.file.Files;
import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Properties;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
+
public class ForkedLauncherTest
{
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public Path temporaryDir;
private ForkedLauncher launcher;
@@ -50,10 +51,10 @@ public class ForkedLauncherTest
@Test
public void mvnw() throws Exception
{
- launcher = new ForkedLauncher( ".", Collections.<String, String>emptyMap(), false, true );
- File logFile = temporaryFolder.newFile( "build.log" );
+ launcher = new ForkedLauncher( ".", Collections.emptyMap(), false, true );
+ Path logFile = temporaryDir.resolve( "build.log" );
- int exitCode = launcher.run( new String[0], new Properties(), workingDir, logFile );
+ int exitCode = launcher.run( new String[0], new Properties(), workingDir, logFile.toFile() );
// most likely this contains the exception in case exitCode != 0
expectFileLine( logFile, "Hello World" );
@@ -64,10 +65,10 @@ public class ForkedLauncherTest
@Test
public void mvnwDebug() throws Exception
{
- launcher = new ForkedLauncher( ".", Collections.<String, String>emptyMap(), true, true );
- File logFile = temporaryFolder.newFile( "build.log" );
+ launcher = new ForkedLauncher( ".", Collections.emptyMap(), true, true );
+ Path logFile = temporaryDir.resolve( "build.log" );
- int exitCode = launcher.run( new String[0], new Properties(), workingDir, logFile );
+ int exitCode = launcher.run( new String[0], new Properties(), workingDir, logFile.toFile() );
// most likely this contains the exception in case exitCode != 0
expectFileLine( logFile, "Hello World" );
@@ -75,10 +76,9 @@ public class ForkedLauncherTest
assertThat( "exit code", exitCode , is ( 0 ) );
}
- static void expectFileLine( File file, String expectedline ) throws IOException
+ static void expectFileLine( Path file, String expectedline ) throws IOException
{
- try ( FileReader fr = new FileReader( file );
- BufferedReader br = new BufferedReader( fr ) )
+ try ( BufferedReader br = Files.newBufferedReader( file, StandardCharsets.UTF_8 ) )
{
Collection<String> text = new ArrayList<>();
String line;
@@ -91,8 +91,8 @@ public class ForkedLauncherTest
text.add( line );
}
- String message = "%s doesn't contain '%s', was:\n%s";
- fail( String.format( message, file.getName(), expectedline, text ) );
+ String message = "%s doesn't contain '%s', was:%n%s";
+ fail( String.format( message, file.getFileName(), expectedline, text ) );
}
}
diff --git a/src/test/java/org/apache/maven/it/VerifierTest.java b/src/test/java/org/apache/maven/it/VerifierTest.java
index 69cd80a..f80cb1d 100644
--- a/src/test/java/org/apache/maven/it/VerifierTest.java
+++ b/src/test/java/org/apache/maven/it/VerifierTest.java
@@ -19,28 +19,24 @@ package org.apache.maven.it;
* under the License.
*/
-import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
+import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;
import java.util.Properties;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.junit.rules.TemporaryFolder;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
-import static org.hamcrest.CoreMatchers.isA;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertInstanceOf;
+import static org.junit.jupiter.api.Assertions.assertThrows;
public class VerifierTest
{
- @Rule
- public final ExpectedException exception = ExpectedException.none();
-
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public Path temporaryDir;
private void check( String expected, String... lines )
{
@@ -90,8 +86,8 @@ public class VerifierTest
{
//File file = new File( "src/test/resources/mshared104.jar!fud.xml" );
Verifier verifier = new Verifier( "src/test/resources" );
- verifier.assertFilePresent( "mshared104.jar!/pom.xml" );
- verifier.assertFileNotPresent( "mshared104.jar!/fud.xml" );
+ verifier.verifyFilePresent( "mshared104.jar!/pom.xml" );
+ verifier.verifyFileNotPresent( "mshared104.jar!/fud.xml" );
}
@Test
@@ -105,19 +101,20 @@ public class VerifierTest
@Test
public void testLoadPropertiesFNFE() throws VerificationException
{
- exception.expectCause( isA( FileNotFoundException.class ) );
-
- Verifier verifier = new Verifier( "src/test/resources" );
- verifier.loadProperties( "unknown.properties" );
+ VerificationException exception = assertThrows( VerificationException.class, () -> {
+ Verifier verifier = new Verifier( "src/test/resources" );
+ verifier.loadProperties( "unknown.properties" );
+ } );
+ assertInstanceOf( FileNotFoundException.class, exception.getCause() );
}
@Test
public void testDedicatedMavenHome() throws VerificationException, IOException
{
String mavenHome = Paths.get( "src/test/resources/maven-home" ).toAbsolutePath().toString();
- Verifier verifier = new Verifier( temporaryFolder.getRoot().toString(), null, false, mavenHome );
+ Verifier verifier = new Verifier( temporaryDir.toString(), null, false, mavenHome );
verifier.executeGoal( "some-goal" );
- File logFile = new File( verifier.getBasedir(), verifier.getLogFileName() );
+ Path logFile = Paths.get( verifier.getBasedir(), verifier.getLogFileName() );
ForkedLauncherTest.expectFileLine( logFile, "Hello World from Maven Home" );
}