diff --git a/pom.xml b/pom.xml
index 5964b217..46d67305 100644
--- a/pom.xml
+++ b/pom.xml
@@ -196,21 +196,6 @@ under the License.
org.codehaus.plexus
plexus-xml
-
-
-
- junit
- junit
- 4.13.2
- test
-
-
-
- org.hamcrest
- hamcrest-core
-
-
-
org.hamcrest
hamcrest
@@ -227,7 +212,7 @@ under the License.
org.mockito
mockito-core
- 4.6.1
+ 4.11.0
test
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/DefaultAssemblyArchiverTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/DefaultAssemblyArchiverTest.java
index e893a1d0..6ec290b7 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/DefaultAssemblyArchiverTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/DefaultAssemblyArchiverTest.java
@@ -46,18 +46,20 @@
import org.codehaus.plexus.archiver.zip.ZipArchiver;
import org.codehaus.plexus.component.configurator.BasicComponentConfigurator;
import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.fail;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.fail;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.atLeastOnce;
@@ -66,10 +68,11 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class DefaultAssemblyArchiverTest {
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
private ArchiverManager archiverManager;
@@ -90,17 +93,19 @@ public static void setupInterpolators(AssemblerConfigurationSource configSource,
.thenReturn(AbstractAssemblyMojo.mainProjectInterpolator(mavenProject));
}
- @Before
+ @BeforeEach
public void setup() throws PlexusContainerException {
this.archiverManager = mock(ArchiverManager.class);
this.container = new DefaultPlexusContainer();
this.configurator = new BasicComponentConfigurator();
}
- @Test(expected = InvalidAssemblerConfigurationException.class)
+ @Test
public void failWhenAssemblyIdIsNull() throws Exception {
- final DefaultAssemblyArchiver archiver = createSubject(Collections.emptyList());
- archiver.createArchive(new Assembly(), "full-name", "zip", null, null);
+ assertThrows(InvalidAssemblerConfigurationException.class, () -> {
+ final DefaultAssemblyArchiver archiver = createSubject(Collections.emptyList());
+ archiver.createArchive(new Assembly(), "full-name", "zip", null, null);
+ });
}
@Test
@@ -111,10 +116,10 @@ public void testCreateArchive() throws Exception {
final AssemblyArchiverPhase phase = mock(AssemblyArchiverPhase.class);
- final File outDir = temporaryFolder.newFolder("out");
+ final File outDir = newFolder(temporaryFolder, "out");
final AssemblerConfigurationSource configSource = mock(AssemblerConfigurationSource.class);
- when(configSource.getTemporaryRootDirectory()).thenReturn(new File(temporaryFolder.getRoot(), "temp"));
+ when(configSource.getTemporaryRootDirectory()).thenReturn(new File(temporaryFolder, "temp"));
when(configSource.getOverrideUid()).thenReturn(0);
when(configSource.getOverrideUserName()).thenReturn("root");
when(configSource.getOverrideGid()).thenReturn(0);
@@ -397,4 +402,13 @@ public String getDuplicateBehavior() {
return Archiver.DUPLICATES_ADD;
}
}
+
+ private static File newFolder(File root, String... subDirs) throws IOException {
+ String subFolder = String.join("/", subDirs);
+ File result = new File(root, subFolder);
+ if (!result.mkdirs()) {
+ throw new IOException("Couldn't create folders " + root);
+ }
+ return result;
+ }
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/ManifestCreationFinalizerTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/ManifestCreationFinalizerTest.java
index 7ac378a0..2c9be279 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/ManifestCreationFinalizerTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/ManifestCreationFinalizerTest.java
@@ -34,19 +34,21 @@
import org.apache.maven.model.Model;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.archiver.jar.JarArchiver;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertTrue;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class ManifestCreationFinalizerTest {
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
@Test
public void testShouldDoNothingWhenArchiveConfigIsNull() throws Exception {
@@ -66,7 +68,7 @@ public void testShouldAddManifestWhenArchiverIsJarArchiver() throws Exception {
MavenProject project = new MavenProject(new Model());
MavenArchiveConfiguration config = new MavenArchiveConfiguration();
- File tempDir = temporaryFolder.getRoot();
+ File tempDir = temporaryFolder;
Path manifestFile = tempDir.toPath().resolve("MANIFEST.MF");
@@ -78,7 +80,7 @@ public void testShouldAddManifestWhenArchiverIsJarArchiver() throws Exception {
archiver.setArchiveFinalizers(Collections.singletonList(new ManifestCreationFinalizer(null, project, config)));
- File file = temporaryFolder.newFile();
+ File file = File.createTempFile("junit", null, temporaryFolder);
archiver.setDestFile(file);
@@ -112,7 +114,7 @@ public void testShouldAddManifestEntriesWhenArchiverIsJarArchiver() throws Excep
archiver.setArchiveFinalizers(Collections.singletonList(new ManifestCreationFinalizer(null, project, config)));
- File file = temporaryFolder.newFile();
+ File file = File.createTempFile("junit", null, temporaryFolder);
archiver.setDestFile(file);
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/archiver/AssemblyProxyArchiverTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/archiver/AssemblyProxyArchiverTest.java
index a89fec67..1da880ae 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/archiver/AssemblyProxyArchiverTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/archiver/AssemblyProxyArchiverTest.java
@@ -25,6 +25,7 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.concurrent.TimeUnit;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
@@ -35,30 +36,34 @@
import org.codehaus.plexus.components.io.fileselectors.FileInfo;
import org.codehaus.plexus.components.io.fileselectors.FileSelector;
import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.Timeout;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
import org.mockito.ArgumentCaptor;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class AssemblyProxyArchiverTest {
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
- @Test(timeout = 5000)
+ @Test
+ @Timeout(value = 5000, unit = TimeUnit.MILLISECONDS)
public void addFileSetSkipWhenSourceIsAssemblyWorkDir() throws IOException, ArchiverException {
- final File sources = temporaryFolder.getRoot();
+ final File sources = temporaryFolder;
final File workdir = new File(sources, "workdir");
@@ -75,9 +80,10 @@ public void addFileSetSkipWhenSourceIsAssemblyWorkDir() throws IOException, Arch
assertTrue(tracker.added.isEmpty());
}
- @Test(timeout = 5000)
+ @Test
+ @Timeout(value = 5000, unit = TimeUnit.MILLISECONDS)
public void addFileSetAddExcludeWhenSourceContainsAssemblyWorkDir() throws IOException, ArchiverException {
- final File sources = temporaryFolder.getRoot();
+ final File sources = temporaryFolder;
final File workdir = new File(sources, "workdir");
workdir.mkdir();
@@ -121,7 +127,7 @@ public void addFileNoPermsCallAcceptFilesOnlyOnce() throws IOException, Archiver
new AssemblyProxyArchiver("", delegate, null, selectors, null, new File("."));
archiver.setForced(true);
- final File inputFile = temporaryFolder.newFile();
+ final File inputFile = File.createTempFile("junit", null, temporaryFolder);
archiver.addFile(inputFile, "file.txt");
assertEquals(1, counter.getCount());
@@ -134,7 +140,7 @@ public void addFileNoPermsCallAcceptFilesOnlyOnce() throws IOException, Archiver
public void addDirectoryNoPermsCallAcceptFilesOnlyOnce() throws IOException, ArchiverException {
final Archiver delegate = new JarArchiver();
- final File output = temporaryFolder.newFile();
+ final File output = File.createTempFile("junit", null, temporaryFolder);
delegate.setDestFile(output);
@@ -147,7 +153,7 @@ public void addDirectoryNoPermsCallAcceptFilesOnlyOnce() throws IOException, Arc
archiver.setForced(true);
- final File dir = temporaryFolder.newFolder();
+ final File dir = newFolder(temporaryFolder, "junit");
Files.write(
dir.toPath().resolve("file.txt"), Collections.singletonList("This is a test."), StandardCharsets.UTF_8);
@@ -164,10 +170,10 @@ public void assemblyWorkDir() {
final List selectors = new ArrayList<>();
final AssemblyProxyArchiver archiver = new AssemblyProxyArchiver(
- "prefix", delegate, null, selectors, null, new File(temporaryFolder.getRoot(), "module1"));
+ "prefix", delegate, null, selectors, null, new File(temporaryFolder, "module1"));
FileSet fileSet = mock(FileSet.class);
- when(fileSet.getDirectory()).thenReturn(temporaryFolder.getRoot());
+ when(fileSet.getDirectory()).thenReturn(temporaryFolder);
when(fileSet.getStreamTransformer()).thenReturn(mock(InputStreamTransformer.class));
archiver.addFileSet(fileSet);
@@ -176,7 +182,7 @@ public void assemblyWorkDir() {
verify(delegate).addFileSet(delFileSet.capture());
assertThat(delFileSet.getValue().getDirectory(), is(fileSet.getDirectory()));
- assertThat(delFileSet.getValue().getExcludes(), is(new String[] {"module1"}));
+ assertThat(delFileSet.getValue().getExcludes(), is(new String[]{"module1"}));
assertThat(delFileSet.getValue().getFileMappers(), is(fileSet.getFileMappers()));
assertThat(delFileSet.getValue().getFileSelectors(), is(fileSet.getFileSelectors()));
assertThat(delFileSet.getValue().getIncludes(), is(new String[0]));
@@ -207,4 +213,13 @@ public boolean isSelected(final FileInfo fileInfo) throws IOException {
return answer;
}
}
+
+ private static File newFolder(File root, String... subDirs) throws IOException {
+ String subFolder = String.join("/", subDirs);
+ File result = new File(root, subFolder);
+ if (!result.mkdirs()) {
+ throw new IOException("Couldn't create folders " + root);
+ }
+ return result;
+ }
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/AssemblyArchiverPhaseComparatorTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/AssemblyArchiverPhaseComparatorTest.java
index 0925f15a..55cfeac1 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/AssemblyArchiverPhaseComparatorTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/AssemblyArchiverPhaseComparatorTest.java
@@ -28,9 +28,9 @@
import org.apache.maven.plugins.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugins.assembly.model.Assembly;
import org.codehaus.plexus.archiver.Archiver;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
-import static org.junit.Assert.assertSame;
+import static org.junit.jupiter.api.Assertions.assertSame;
public class AssemblyArchiverPhaseComparatorTest {
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/DependencySetAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
index f6b50d1d..4a123c50 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
@@ -33,10 +33,12 @@
import org.apache.maven.plugins.assembly.model.DependencySet;
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.ProjectBuilder;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import static org.mockito.ArgumentMatchers.anyList;
import static org.mockito.ArgumentMatchers.eq;
@@ -45,13 +47,14 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class DependencySetAssemblyPhaseTest {
private DependencySetAssemblyPhase phase;
private DependencyResolver dependencyResolver;
- @Before
+ @BeforeEach
public void setUp() {
this.dependencyResolver = mock(DependencyResolver.class);
@@ -61,7 +64,7 @@ public void setUp() {
@Test
public void testExecuteShouldAddOneDependencyFromProject()
throws AssemblyFormattingException, ArchiveCreationException, IOException,
- InvalidAssemblerConfigurationException, DependencyResolutionException {
+ InvalidAssemblerConfigurationException, DependencyResolutionException {
final String outputLocation = "/out";
final MavenProject project = newMavenProject("group", "project", "0");
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/FileItemAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/FileItemAssemblyPhaseTest.java
index cfaa9f09..ce384c02 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/FileItemAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/FileItemAssemblyPhaseTest.java
@@ -19,6 +19,7 @@
package org.apache.maven.plugins.assembly.archive.phase;
import java.io.File;
+import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.util.Collections;
@@ -32,11 +33,12 @@
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.components.io.resources.PlexusIoResource;
import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -46,18 +48,19 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class FileItemAssemblyPhaseTest {
private final Logger logger = LoggerFactory.getLogger(getClass());
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
@Test
public void testExecuteShouldAddNothingWhenNoFileItemsArePresent() throws Exception {
final AssemblerConfigurationSource macCS = mock(AssemblerConfigurationSource.class);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
when(macCS.getBasedir()).thenReturn(basedir);
@@ -73,9 +76,9 @@ public void testExecuteShouldAddNothingWhenNoFileItemsArePresent() throws Except
public void testExecuteShouldAddAbsoluteFileNoFilterNoLineEndingConversion() throws Exception {
final AssemblerConfigurationSource macCS = mock(AssemblerConfigurationSource.class);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
- final File file = temporaryFolder.newFile("file.txt");
+ final File file = newFile(temporaryFolder, "file.txt");
Files.write(file.toPath(), Collections.singletonList("This is a test file."), StandardCharsets.UTF_8);
when(macCS.getBasedir()).thenReturn(basedir);
@@ -107,9 +110,9 @@ public void testExecuteShouldAddAbsoluteFileNoFilterNoLineEndingConversion() thr
public void testExecuteShouldAddRelativeFileNoFilterNoLineEndingConversion() throws Exception {
final AssemblerConfigurationSource macCS = mock(AssemblerConfigurationSource.class);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
- final File file = temporaryFolder.newFile("file.txt");
+ final File file = newFile(temporaryFolder, "file.txt");
Files.write(file.toPath(), Collections.singletonList("This is a test file."), StandardCharsets.UTF_8);
when(macCS.getBasedir()).thenReturn(basedir);
@@ -141,21 +144,21 @@ public void testExecuteShouldAddRelativeFileNoFilterNoLineEndingConversion() thr
public void testExecuteWithOutputDirectory() throws Exception {
final AssemblerConfigurationSource macCS = mock(AssemblerConfigurationSource.class);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
- final File readmeFile = temporaryFolder.newFile("README.txt");
+ final File readmeFile = newFile(temporaryFolder, "README.txt");
Files.write(
readmeFile.toPath(),
Collections.singletonList("This is a test file for README.txt."),
StandardCharsets.UTF_8);
- final File licenseFile = temporaryFolder.newFile("LICENSE.txt");
+ final File licenseFile = newFile(temporaryFolder, "LICENSE.txt");
Files.write(
licenseFile.toPath(),
Collections.singletonList("This is a test file for LICENSE.txt."),
StandardCharsets.UTF_8);
- final File configFile = new File(temporaryFolder.newFolder("config"), "config.txt");
+ final File configFile = new File(newFolder(temporaryFolder, "config"), "config.txt");
Files.write(
configFile.toPath(),
Collections.singletonList("This is a test file for config/config.txt"),
@@ -220,21 +223,21 @@ public void testExecuteWithOutputDirectory() throws Exception {
public void testExecuteWithOutputDirectoryAndDestName() throws Exception {
final AssemblerConfigurationSource macCS = mock(AssemblerConfigurationSource.class);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
- final File readmeFile = temporaryFolder.newFile("README.txt");
+ final File readmeFile = newFile(temporaryFolder, "README.txt");
Files.write(
readmeFile.toPath(),
Collections.singletonList("This is a test file for README.txt."),
StandardCharsets.UTF_8);
- final File licenseFile = temporaryFolder.newFile("LICENSE.txt");
+ final File licenseFile = newFile(temporaryFolder, "LICENSE.txt");
Files.write(
licenseFile.toPath(),
Collections.singletonList("This is a test file for LICENSE.txt."),
StandardCharsets.UTF_8);
- final File configFile = new File(temporaryFolder.newFolder("config"), "config.txt");
+ final File configFile = new File(newFolder(temporaryFolder, "config"), "config.txt");
Files.write(
configFile.toPath(),
Collections.singletonList("This is a test file for config/config.txt"),
@@ -302,21 +305,21 @@ public void testExecuteWithOutputDirectoryAndDestName() throws Exception {
public void testExecuteWithOutputDirectoryAndDestNameAndIncludeBaseDirectoryFalse() throws Exception {
final AssemblerConfigurationSource macCS = mock(AssemblerConfigurationSource.class);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
- final File readmeFile = temporaryFolder.newFile("README.txt");
+ final File readmeFile = newFile(temporaryFolder, "README.txt");
Files.write(
readmeFile.toPath(),
Collections.singletonList("This is a test file for README.txt."),
StandardCharsets.UTF_8);
- final File licenseFile = temporaryFolder.newFile("LICENSE.txt");
+ final File licenseFile = newFile(temporaryFolder, "LICENSE.txt");
Files.write(
licenseFile.toPath(),
Collections.singletonList("This is a test file for LICENSE.txt."),
StandardCharsets.UTF_8);
- final File configFile = new File(temporaryFolder.newFolder("config"), "config.txt");
+ final File configFile = new File(newFolder(temporaryFolder, "config"), "config.txt");
Files.write(
configFile.toPath(),
Collections.singletonList("This is a test file for config/config.txt"),
@@ -383,4 +386,19 @@ private void prepareInterpolators(AssemblerConfigurationSource configSource) {
when(configSource.getEnvInterpolator()).thenReturn(FixedStringSearchInterpolator.empty());
when(configSource.getMainProjectInterpolator()).thenReturn(FixedStringSearchInterpolator.empty());
}
+
+ private static File newFile(File parent, String child) throws IOException {
+ File result = new File(parent, child);
+ result.createNewFile();
+ return result;
+ }
+
+ private static File newFolder(File root, String... subDirs) throws IOException {
+ String subFolder = String.join("/", subDirs);
+ File result = new File(root, subFolder);
+ if (!result.mkdirs()) {
+ throw new IOException("Couldn't create folders " + root);
+ }
+ return result;
+ }
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/FileSetAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/FileSetAssemblyPhaseTest.java
index dff75928..72852a65 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/FileSetAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/FileSetAssemblyPhaseTest.java
@@ -25,21 +25,24 @@
import org.apache.maven.plugins.assembly.model.FileSet;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.archiver.Archiver;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class FileSetAssemblyPhaseTest {
private FileSetAssemblyPhase phase;
- @Before
+ @BeforeEach
public void setUp() {
this.phase = new FileSetAssemblyPhase();
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
index 01087952..896524ae 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
@@ -42,20 +42,21 @@
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.ProjectBuilder;
import org.codehaus.plexus.archiver.Archiver;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import static java.util.Collections.singleton;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyList;
import static org.mockito.ArgumentMatchers.eq;
@@ -67,18 +68,19 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class ModuleSetAssemblyPhaseTest {
private final Logger logger = LoggerFactory.getLogger(getClass());
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
private ModuleSetAssemblyPhase phase;
private DependencyResolver dependencyResolver;
- @Before
+ @BeforeEach
public void setUp() {
ProjectBuilder projectBuilder = mock(ProjectBuilder.class);
this.dependencyResolver = mock(DependencyResolver.class);
@@ -141,7 +143,7 @@ public void testCreateFileSetShouldUseModuleDirOnlyWhenOutDirIsNull() throws Exc
final ModuleSources sources = new ModuleSources();
sources.setIncludeModuleDirectory(true);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
final MavenProject artifactProject = new MavenProject(new Model());
artifactProject.setGroupId("GROUPID");
@@ -184,7 +186,7 @@ public void testCreateFileSetShouldPrependModuleDirWhenOutDirIsProvided() throws
final MavenProject artifactProject = new MavenProject(new Model());
artifactProject.setGroupId("GROUPID");
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
artifactProject.setFile(new File(basedir, "pom.xml"));
@@ -221,7 +223,7 @@ public void testCreateFileSetShouldAddExcludesForSubModulesWhenExcludeSubModDirs
final MavenProject project = new MavenProject(model);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
project.setGroupId("GROUPID");
project.setFile(new File(basedir, "pom.xml"));
@@ -257,7 +259,7 @@ public void testExecuteShouldAddOneModuleSetWithOneModuleInIt() throws Exception
final MavenProject module = createProject("group", "module", "version", project);
Artifact artifact = mock(Artifact.class);
- final File moduleArtifactFile = temporaryFolder.newFile();
+ final File moduleArtifactFile = File.createTempFile("junit", null, temporaryFolder);
when(artifact.getGroupId()).thenReturn("GROUPID");
when(artifact.getFile()).thenReturn(moduleArtifactFile);
module.setArtifact(artifact);
@@ -343,7 +345,7 @@ public void testAddModuleBinariesShouldAddOneModuleAttachmentArtifactAndNoDeps()
Artifact artifact = mock(Artifact.class);
when(artifact.getGroupId()).thenReturn("GROUPID");
when(artifact.getClassifier()).thenReturn("test");
- final File artifactFile = temporaryFolder.newFile();
+ final File artifactFile = File.createTempFile("junit", null, temporaryFolder);
when(artifact.getFile()).thenReturn(artifactFile);
final Archiver archiver = mock(Archiver.class);
@@ -421,7 +423,7 @@ public void testAddModuleBinariesShouldFailWhenOneModuleDoesntHaveAttachmentWith
@Test
public void testAddModuleBinariesShouldAddOneModuleArtifactAndNoDeps() throws Exception {
Artifact artifact = mock(Artifact.class);
- final File artifactFile = temporaryFolder.newFile();
+ final File artifactFile = File.createTempFile("junit", null, temporaryFolder);
when(artifact.getGroupId()).thenReturn("GROUPID");
when(artifact.getFile()).thenReturn(artifactFile);
@@ -447,7 +449,7 @@ public void testAddModuleBinariesShouldAddOneModuleArtifactAndNoDeps() throws Ex
final Set projects = singleton(project);
when(dependencyResolver.resolveDependencySets(
- isNull(), isNull(), any(AssemblerConfigurationSource.class), anyList()))
+ isNull(), isNull(), any(AssemblerConfigurationSource.class), anyList()))
.thenReturn(new LinkedHashMap<>());
DefaultAssemblyArchiverTest.setupInterpolators(configSource, project);
@@ -485,7 +487,7 @@ public void testAddModuleArtifactShouldThrowExceptionWhenArtifactFileIsNull() th
public void testAddModuleArtifactShouldAddOneArtifact() throws Exception {
Artifact artifact = mock(Artifact.class);
when(artifact.getGroupId()).thenReturn("GROUPID");
- final File artifactFile = temporaryFolder.newFile();
+ final File artifactFile = File.createTempFile("junit", null, temporaryFolder);
when(artifact.getFile()).thenReturn(artifactFile);
final MavenProject project = createProject("group", "artifact", "version", null);
@@ -772,7 +774,7 @@ private MavenProject createProject(
File pomFile;
if (parentProject == null) {
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
pomFile = new File(basedir, "pom.xml");
} else {
final File parentBase = parentProject.getBasedir();
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddArtifactTaskTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddArtifactTaskTest.java
index a35ff22d..36d5fc01 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddArtifactTaskTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddArtifactTaskTest.java
@@ -32,13 +32,14 @@
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.archiver.ArchivedFileSet;
import org.codehaus.plexus.archiver.Archiver;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -49,18 +50,19 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class AddArtifactTaskTest {
private final Logger logger = LoggerFactory.getLogger(getClass());
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
private MavenProject mainProject;
private AssemblerConfigurationSource configSource;
- @Before
+ @BeforeEach
public void setUp() throws IOException {
Model model = new Model();
model.setGroupId("group");
@@ -73,7 +75,7 @@ public void setUp() throws IOException {
when(configSource.getFinalName()).thenReturn("final-name");
}
- @After
+ @AfterEach
public void tearDown() {
// result of easymock migration, should be assert of expected result instead of verifying methodcalls
verify(configSource, atLeastOnce()).getFinalName();
@@ -86,7 +88,7 @@ public void testShouldAddArchiveFileWithoutUnpacking() throws Exception {
Artifact artifact = mock(Artifact.class);
when(artifact.getGroupId()).thenReturn("GROUPID");
- File artifactFile = temporaryFolder.newFile();
+ File artifactFile = File.createTempFile("junit", null, temporaryFolder);
when(artifact.getFile()).thenReturn(artifactFile);
final Archiver archiver = mock(Archiver.class);
@@ -122,7 +124,7 @@ public void testShouldAddArchiveFileWithDefaultOutputLocation() throws Exception
when(artifact.getGroupId()).thenReturn("GROUPID");
when(artifactHandler.getExtension()).thenReturn(ext);
when(artifact.getArtifactHandler()).thenReturn(artifactHandler);
- File artifactFile = temporaryFolder.newFile();
+ File artifactFile = File.createTempFile("junit", null, temporaryFolder);
when(artifact.getFile()).thenReturn(artifactFile);
final Archiver archiver = mock(Archiver.class);
@@ -178,7 +180,7 @@ public void testShouldAddArchiveFileWithUnpack() throws Exception {
DefaultAssemblyArchiverTest.setupInterpolators(configSource, mainProject);
Artifact artifact = mock(Artifact.class);
- when(artifact.getFile()).thenReturn(temporaryFolder.newFile());
+ when(artifact.getFile()).thenReturn(File.createTempFile("junit", null, temporaryFolder));
AddArtifactTask task = createTask(artifact);
task.setUnpack(true);
@@ -207,7 +209,7 @@ public void testShouldAddArchiveFileWithUnpackAndModes() throws Exception {
DefaultAssemblyArchiverTest.setupInterpolators(configSource, mainProject);
Artifact artifact = mock(Artifact.class);
- when(artifact.getFile()).thenReturn(temporaryFolder.newFile());
+ when(artifact.getFile()).thenReturn(File.createTempFile("junit", null, temporaryFolder));
AddArtifactTask task = createTask(artifact);
task.setUnpack(true);
@@ -241,7 +243,7 @@ public void testShouldAddArchiveFileWithUnpackIncludesAndExcludes() throws Excep
String[] excludes = {"**/README.txt"};
Artifact artifact = mock(Artifact.class);
- when(artifact.getFile()).thenReturn(temporaryFolder.newFile());
+ when(artifact.getFile()).thenReturn(File.createTempFile("junit", null, temporaryFolder));
DefaultAssemblyArchiverTest.setupInterpolators(configSource, mainProject);
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTaskTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTaskTest.java
index fd75678c..78440d4f 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTaskTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTaskTest.java
@@ -47,18 +47,19 @@
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
import org.codehaus.plexus.archiver.FileSet;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
import org.mockito.ArgumentCaptor;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertSame;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.isNull;
import static org.mockito.Mockito.atLeastOnce;
@@ -67,10 +68,11 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class AddDependencySetsTaskTest {
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
@Test
public void testAddDependencySetShouldInterpolateDefaultOutputFileNameMapping() throws Exception {
@@ -110,7 +112,7 @@ public void testAddDependencySetShouldInterpolateDefaultOutputFileNameMapping()
ArtifactHandler artifactHandler = mock(ArtifactHandler.class);
when(artifactHandler.getExtension()).thenReturn(depExt);
when(depArtifact.getArtifactHandler()).thenReturn(artifactHandler);
- final File newFile = temporaryFolder.newFile();
+ final File newFile = File.createTempFile("junit", null, temporaryFolder);
when(depArtifact.getFile()).thenReturn(newFile);
when(depArtifact.getGroupId()).thenReturn("GROUPID");
@@ -260,7 +262,7 @@ public void testAddDependencySetShouldAddOneDependencyFromProjectUnpacked() thro
private void verifyOneDependencyAdded(final String outputLocation, final boolean unpack)
throws AssemblyFormattingException, ArchiverException, ArchiveCreationException, IOException,
- InvalidAssemblerConfigurationException, ProjectBuildingException {
+ InvalidAssemblerConfigurationException, ProjectBuildingException {
final MavenProject project = new MavenProject(new Model());
final DependencySet ds = new DependencySet();
@@ -282,7 +284,7 @@ private void verifyOneDependencyAdded(final String outputLocation, final boolean
when(configSource.getFinalName()).thenReturn("final-name");
Artifact artifact = mock(Artifact.class);
- final File artifactFile = temporaryFolder.newFile();
+ final File artifactFile = File.createTempFile("junit", null, temporaryFolder);
when(artifact.getFile()).thenReturn(artifactFile);
when(artifact.getGroupId()).thenReturn("GROUPID");
@@ -426,13 +428,13 @@ public void useDefaultExcludes() throws Exception {
when(zipArtifact.getGroupId()).thenReturn("some-artifact");
when(zipArtifact.getArtifactId()).thenReturn("of-type-zip");
when(zipArtifact.getId()).thenReturn("some-artifact:of-type-zip:1.0:zip");
- when(zipArtifact.getFile()).thenReturn(temporaryFolder.newFile("of-type-zip.zip"));
+ when(zipArtifact.getFile()).thenReturn(newFile(temporaryFolder, "of-type-zip.zip"));
Artifact dirArtifact = mock(Artifact.class);
when(dirArtifact.getGroupId()).thenReturn("some-artifact");
when(dirArtifact.getArtifactId()).thenReturn("of-type-zip");
when(dirArtifact.getId()).thenReturn("some-artifact:of-type-zip:1.0:dir");
- when(dirArtifact.getFile()).thenReturn(temporaryFolder.newFolder("of-type-zip"));
+ when(dirArtifact.getFile()).thenReturn(newFolder(temporaryFolder, "of-type-zip"));
final Set artifacts = new HashSet<>(Arrays.asList(zipArtifact, dirArtifact));
@@ -478,4 +480,19 @@ public void useDefaultExcludes() throws Exception {
verify(archiver).addFileSet(fileSet.capture());
assertThat(fileSet.getValue().isUsingDefaultExcludes(), is(false));
}
+
+ private static File newFile(File parent, String child) throws IOException {
+ File result = new File(parent, child);
+ result.createNewFile();
+ return result;
+ }
+
+ private static File newFolder(File root, String... subDirs) throws IOException {
+ String subFolder = String.join("/", subDirs);
+ File result = new File(root, subFolder);
+ if (!result.mkdirs()) {
+ throw new IOException("Couldn't create folders " + root);
+ }
+ return result;
+ }
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddDirectoryTaskTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddDirectoryTaskTest.java
index af0de22b..aa6afeae 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddDirectoryTaskTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddDirectoryTaskTest.java
@@ -23,26 +23,28 @@
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.FileSet;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class AddDirectoryTaskTest {
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
private Archiver archiver;
- @Before
+ @BeforeEach
public void setUp() {
this.archiver = mock(Archiver.class);
}
@@ -55,7 +57,7 @@ public void testAddDirectoryShouldNotAddDirectoryIfNonExistent() throws Exceptio
when(archiver.getOverrideDirectoryMode()).thenReturn(defaultDirMode);
when(archiver.getOverrideFileMode()).thenReturn(defaultFileMode);
- AddDirectoryTask task = new AddDirectoryTask(new File(temporaryFolder.getRoot(), "non-existent"));
+ AddDirectoryTask task = new AddDirectoryTask(new File(temporaryFolder, "non-existent"));
task.execute(archiver);
@@ -72,7 +74,7 @@ public void testAddDirectoryShouldAddDirectory() throws Exception {
when(archiver.getOverrideDirectoryMode()).thenReturn(defaultDirMode);
when(archiver.getOverrideFileMode()).thenReturn(defaultFileMode);
- AddDirectoryTask task = new AddDirectoryTask(temporaryFolder.getRoot());
+ AddDirectoryTask task = new AddDirectoryTask(temporaryFolder);
task.setOutputDirectory("dir");
task.execute(archiver);
@@ -93,7 +95,7 @@ public void testAddDirectoryShouldAddDirectoryWithDirMode() throws Exception {
when(archiver.getOverrideDirectoryMode()).thenReturn(defaultDirMode);
when(archiver.getOverrideFileMode()).thenReturn(defaultFileMode);
- AddDirectoryTask task = new AddDirectoryTask(temporaryFolder.getRoot());
+ AddDirectoryTask task = new AddDirectoryTask(temporaryFolder);
task.setDirectoryMode(dirMode);
task.setFileMode(fileMode);
task.setOutputDirectory("dir");
@@ -115,7 +117,7 @@ public void testAddDirectoryShouldAddDirectoryWithIncludesAndExcludes() throws E
when(archiver.getOverrideDirectoryMode()).thenReturn(-1);
when(archiver.getOverrideFileMode()).thenReturn(-1);
- AddDirectoryTask task = new AddDirectoryTask(temporaryFolder.getRoot());
+ AddDirectoryTask task = new AddDirectoryTask(temporaryFolder);
task.setIncludes(Collections.singletonList("**/*.txt"));
task.setExcludes(Collections.singletonList("**/README.txt"));
task.setOutputDirectory("dir");
diff --git a/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddFileSetsTaskTest.java b/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddFileSetsTaskTest.java
index 185b01fe..4efb2441 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddFileSetsTaskTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/archive/task/AddFileSetsTaskTest.java
@@ -19,6 +19,7 @@
package org.apache.maven.plugins.assembly.archive.task;
import java.io.File;
+import java.io.IOException;
import java.util.ArrayList;
import org.apache.maven.model.Model;
@@ -28,14 +29,15 @@
import org.apache.maven.plugins.assembly.model.FileSet;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.archiver.Archiver;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.fail;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.mock;
@@ -43,14 +45,15 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class AddFileSetsTaskTest {
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
@Test
public void testGetFileSetDirectoryShouldReturnAbsoluteSourceDir() throws Exception {
- final File dir = temporaryFolder.newFolder();
+ final File dir = newFolder(temporaryFolder, "junit");
final FileSet fs = new FileSet();
@@ -63,7 +66,7 @@ public void testGetFileSetDirectoryShouldReturnAbsoluteSourceDir() throws Except
@Test
public void testGetFileSetDirectoryShouldReturnBasedir() throws Exception {
- final File dir = temporaryFolder.newFolder();
+ final File dir = newFolder(temporaryFolder, "junit");
final FileSet fs = new FileSet();
@@ -74,7 +77,7 @@ public void testGetFileSetDirectoryShouldReturnBasedir() throws Exception {
@Test
public void testGetFileSetDirectoryShouldReturnDirFromBasedirAndSourceDir() throws Exception {
- final File dir = temporaryFolder.newFolder();
+ final File dir = newFolder(temporaryFolder, "junit");
final String srcPath = "source";
@@ -91,7 +94,7 @@ public void testGetFileSetDirectoryShouldReturnDirFromBasedirAndSourceDir() thro
@Test
public void testGetFileSetDirectoryShouldReturnDirFromArchiveBasedirAndSourceDir() throws Exception {
- final File dir = temporaryFolder.newFolder();
+ final File dir = newFolder(temporaryFolder, "junit");
final String srcPath = "source";
@@ -108,10 +111,10 @@ public void testGetFileSetDirectoryShouldReturnDirFromArchiveBasedirAndSourceDir
@Test
public void testAddFileSetShouldAddDirectory() throws Exception {
- File basedir = temporaryFolder.getRoot();
+ File basedir = temporaryFolder;
final FileSet fs = new FileSet();
- fs.setDirectory(temporaryFolder.newFolder("dir").getName());
+ fs.setDirectory(newFolder(temporaryFolder, "dir").getName());
fs.setOutputDirectory("dir2");
// the logger sends a debug message with this info inside the addFileSet(..) method..
@@ -148,7 +151,7 @@ public void testAddFileSetShouldAddDirectoryUsingSourceDirNameForDestDir() throw
final String dirname = "dir";
fs.setDirectory(dirname);
- final File archiveBaseDir = temporaryFolder.newFolder();
+ final File archiveBaseDir = newFolder(temporaryFolder, "junit");
// ensure this exists, so the directory addition will proceed.
final File srcDir = new File(archiveBaseDir, dirname);
@@ -184,7 +187,7 @@ public void testAddFileSetShouldNotAddDirectoryWhenSourceDirNonExistent() throws
final FileSet fs = new FileSet();
fs.setDirectory("dir");
- final File archiveBaseDir = temporaryFolder.newFolder();
+ final File archiveBaseDir = newFolder(temporaryFolder, "junit");
final AssemblerConfigurationSource configSource = mock(AssemblerConfigurationSource.class);
when(configSource.getFinalName()).thenReturn("finalName");
@@ -213,7 +216,7 @@ public void testAddFileSetShouldNotAddDirectoryWhenSourceDirNonExistent() throws
@Test
public void testExecuteShouldThrowExceptionIfArchiveBasedirProvidedIsNonExistent() throws Exception {
- File archiveBaseDir = new File(temporaryFolder.getRoot(), "archive");
+ File archiveBaseDir = new File(temporaryFolder, "archive");
final AssemblerConfigurationSource configSource = mock(AssemblerConfigurationSource.class);
when(configSource.getArchiveBaseDirectory()).thenReturn(archiveBaseDir);
@@ -233,7 +236,7 @@ public void testExecuteShouldThrowExceptionIfArchiveBasedirProvidedIsNonExistent
@Test
public void testExecuteShouldThrowExceptionIfArchiveBasedirProvidedIsNotADirectory() throws Exception {
- File archiveBaseDir = temporaryFolder.newFile();
+ File archiveBaseDir = File.createTempFile("junit", null, temporaryFolder);
final AssemblerConfigurationSource configSource = mock(AssemblerConfigurationSource.class);
when(configSource.getArchiveBaseDirectory()).thenReturn(archiveBaseDir);
@@ -249,4 +252,13 @@ public void testExecuteShouldThrowExceptionIfArchiveBasedirProvidedIsNotADirecto
verify(configSource).getArchiveBaseDirectory();
}
+
+ private static File newFolder(File root, String... subDirs) throws IOException {
+ String subFolder = String.join("/", subDirs);
+ File result = new File(root, subFolder);
+ if (!result.mkdirs()) {
+ throw new IOException("Couldn't create folders " + root);
+ }
+ return result;
+ }
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/artifact/DefaultDependencyResolverTest.java b/src/test/java/org/apache/maven/plugins/assembly/artifact/DefaultDependencyResolverTest.java
index 364dc7b8..1d68808d 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/artifact/DefaultDependencyResolverTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/artifact/DefaultDependencyResolverTest.java
@@ -42,21 +42,24 @@
import org.eclipse.aether.graph.Dependency;
import org.eclipse.aether.resolution.DependencyRequest;
import org.eclipse.aether.resolution.DependencyResult;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class DefaultDependencyResolverTest {
@Mock
diff --git a/src/test/java/org/apache/maven/plugins/assembly/artifact/ResolutionManagementInfoTest.java b/src/test/java/org/apache/maven/plugins/assembly/artifact/ResolutionManagementInfoTest.java
index de7ffe3d..26e9c10a 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/artifact/ResolutionManagementInfoTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/artifact/ResolutionManagementInfoTest.java
@@ -26,9 +26,9 @@
import org.apache.maven.artifact.DefaultArtifact;
import org.apache.maven.artifact.handler.DefaultArtifactHandler;
import org.apache.maven.artifact.versioning.VersionRange;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class ResolutionManagementInfoTest {
diff --git a/src/test/java/org/apache/maven/plugins/assembly/filter/ComponentsXmlArchiverFileFilterTest.java b/src/test/java/org/apache/maven/plugins/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
index 2fb7c82a..d81698a3 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
@@ -52,24 +52,23 @@
import org.jdom2.input.sax.XMLReaders;
import org.jdom2.xpath.XPathExpression;
import org.jdom2.xpath.XPathFactory;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
public class ComponentsXmlArchiverFileFilterTest {
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
private ComponentsXmlArchiverFileFilter filter;
- @Before
+ @BeforeEach
public void setUp() {
filter = new ComponentsXmlArchiverFileFilter();
}
@@ -250,11 +249,11 @@ public void testAddToArchiveShouldWriteTwoComponentToArchivedFile() throws Excep
final ZipArchiver archiver = new ZipArchiver();
- final File archiveFile = temporaryFolder.newFile("archive");
+ final File archiveFile = newFile(temporaryFolder, "archive");
archiver.setDestFile(archiveFile);
- final File descriptorFile = new File(temporaryFolder.getRoot(), "descriptor.xml");
+ final File descriptorFile = new File(temporaryFolder, "descriptor.xml");
archiver.setArchiveFinalizers(Collections.singletonList(filter));
@@ -551,4 +550,10 @@ public int getOverrideFileMode() {
throw new UnsupportedOperationException("not supported");
}
}
+
+ private static File newFile(File parent, String child) throws IOException {
+ File result = new File(parent, child);
+ result.createNewFile();
+ return result;
+ }
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/format/ReaderFormatterTest.java b/src/test/java/org/apache/maven/plugins/assembly/format/ReaderFormatterTest.java
index c1d45971..1cf71a7b 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/format/ReaderFormatterTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/format/ReaderFormatterTest.java
@@ -39,13 +39,13 @@
import org.codehaus.plexus.archiver.resources.PlexusIoVirtualFileResource;
import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
import org.codehaus.plexus.components.io.resources.PlexusIoResource;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.not;
import static org.hamcrest.Matchers.sameInstance;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
diff --git a/src/test/java/org/apache/maven/plugins/assembly/interpolation/AssemblyExpressionEvaluatorTest.java b/src/test/java/org/apache/maven/plugins/assembly/interpolation/AssemblyExpressionEvaluatorTest.java
index 020bcd17..1af5ba82 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/interpolation/AssemblyExpressionEvaluatorTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/interpolation/AssemblyExpressionEvaluatorTest.java
@@ -28,16 +28,19 @@
import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
import org.codehaus.plexus.interpolation.fixed.PropertiesBasedValueSource;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class AssemblyExpressionEvaluatorTest {
private final PojoConfigSource configSourceStub = new PojoConfigSource();
diff --git a/src/test/java/org/apache/maven/plugins/assembly/interpolation/AssemblyInterpolatorTest.java b/src/test/java/org/apache/maven/plugins/assembly/interpolation/AssemblyInterpolatorTest.java
index a06d64d7..72c7170b 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/interpolation/AssemblyInterpolatorTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/interpolation/AssemblyInterpolatorTest.java
@@ -36,20 +36,23 @@
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
import org.codehaus.plexus.interpolation.fixed.PropertiesBasedValueSource;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class AssemblyInterpolatorTest {
@Test
public void testDependencySetOutputFileNameMappingsAreNotInterpolated()
throws IOException, AssemblyInterpolationException, AssemblyReadException,
- InvalidAssemblerConfigurationException {
+ InvalidAssemblerConfigurationException {
final Model model = new Model();
model.setArtifactId("artifact-id");
model.setGroupId("group.id");
@@ -87,7 +90,7 @@ public void testDependencySetOutputFileNameMappingsAreNotInterpolated()
@Test
public void testDependencySetOutputDirectoryIsNotInterpolated()
throws IOException, AssemblyInterpolationException, AssemblyReadException,
- InvalidAssemblerConfigurationException {
+ InvalidAssemblerConfigurationException {
final Model model = new Model();
model.setArtifactId("artifact-id");
model.setGroupId("group.id");
@@ -129,7 +132,7 @@ private Assembly roundTripInterpolation(Assembly assembly, AssemblerConfiguratio
@Test
public void testShouldResolveModelGroupIdInAssemblyId()
throws AssemblyInterpolationException, InvalidAssemblerConfigurationException, AssemblyReadException,
- IOException {
+ IOException {
final Model model = new Model();
model.setArtifactId("artifact-id");
model.setGroupId("group.id");
@@ -153,7 +156,7 @@ public void testShouldResolveModelGroupIdInAssemblyId()
@Test
public void testShouldResolveModelPropertyBeforeModelGroupIdInAssemblyId()
throws AssemblyInterpolationException, InvalidAssemblerConfigurationException, AssemblyReadException,
- IOException {
+ IOException {
final Model model = new Model();
model.setArtifactId("artifact-id");
model.setGroupId("group.id");
@@ -218,7 +221,7 @@ public void testShouldResolveContextValueBeforeModelPropertyOrModelGroupIdInAsse
@Test
public void testShouldNotTouchUnresolvedExpression()
throws AssemblyInterpolationException, InvalidAssemblerConfigurationException, AssemblyReadException,
- IOException {
+ IOException {
final Model model = new Model();
model.setArtifactId("artifact-id");
model.setGroupId("group.id");
@@ -243,7 +246,7 @@ public void testShouldNotTouchUnresolvedExpression()
@Test
public void testShouldInterpolateMultiDotProjectExpression()
throws AssemblyInterpolationException, InvalidAssemblerConfigurationException, AssemblyReadException,
- IOException {
+ IOException {
final Build build = new Build();
build.setFinalName("final-name");
diff --git a/src/test/java/org/apache/maven/plugins/assembly/io/DefaultAssemblyReaderTest.java b/src/test/java/org/apache/maven/plugins/assembly/io/DefaultAssemblyReaderTest.java
index 0b898fe7..609f86ac 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/io/DefaultAssemblyReaderTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/io/DefaultAssemblyReaderTest.java
@@ -49,25 +49,27 @@
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
import org.codehaus.plexus.interpolation.fixed.InterpolationState;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.io.TempDir;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import org.slf4j.LoggerFactory;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertSame;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.junit.jupiter.api.Assertions.fail;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class DefaultAssemblyReaderTest {
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
+ @TempDir
+ public File temporaryFolder;
@Mock
private AssemblerConfigurationSource configSource;
@@ -101,7 +103,7 @@ public void testIncludeSiteInAssemblyShouldFailIfSiteDirectoryNonExistent() thro
@Test
public void testIncludeSiteInAssemblyShouldAddSiteDirFileSetWhenDirExists() throws Exception {
- final File siteDir = temporaryFolder.getRoot();
+ final File siteDir = temporaryFolder;
when(configSource.getSiteDirectory()).thenReturn(siteDir);
@@ -270,7 +272,7 @@ public void testMergeComponentsWithMainAssemblyShouldAddOneFileSetToAssembly() t
component.addFileSet(fileSet);
- final File componentFile = temporaryFolder.newFile();
+ final File componentFile = File.createTempFile("junit", null, temporaryFolder);
try (Writer writer =
new OutputStreamWriter(Files.newOutputStream(componentFile.toPath()), StandardCharsets.UTF_8)) {
@@ -327,11 +329,11 @@ public void testReadAssemblyShouldReadAssemblyWithSiteDirInclusionFromAssemblyWi
final StringReader sr = writeToStringReader(assembly);
- final File siteDir = temporaryFolder.newFolder("site");
+ final File siteDir = newFolder(temporaryFolder, "site");
when(configSource.getSiteDirectory()).thenReturn(siteDir);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
when(configSource.getBasedir()).thenReturn(basedir);
@@ -360,7 +362,7 @@ public void testReadAssemblyShouldReadAssemblyWithSiteDirInclusionFromAssemblyWi
@Test
public void testReadAssemblyShouldReadAssemblyWithComponentWithoutSiteDirInclusionOrInterpolation()
throws Exception {
- final File componentsFile = temporaryFolder.newFile();
+ final File componentsFile = File.createTempFile("junit", null, temporaryFolder);
final File basedir = componentsFile.getParentFile();
final String componentsFilename = componentsFile.getName();
@@ -410,8 +412,8 @@ public void testReadAssemblyShouldReadAssemblyWithComponentWithoutSiteDirInclusi
@Test
public void
testReadAssemblyShouldReadAssemblyWithComponentInterpolationWithoutSiteDirInclusionOrAssemblyInterpolation()
- throws Exception {
- final File componentsFile = temporaryFolder.newFile();
+ throws Exception {
+ final File componentsFile = File.createTempFile("junit", null, temporaryFolder);
final File basedir = componentsFile.getParentFile();
final String componentsFilename = componentsFile.getName();
@@ -474,7 +476,7 @@ private Assembly doReadAssembly(Assembly assembly)
throws IOException, AssemblyReadException, InvalidAssemblerConfigurationException {
final StringReader sr = writeToStringReader(assembly);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
when(configSource.getBasedir()).thenReturn(basedir);
@@ -502,7 +504,7 @@ public void testGetAssemblyFromDescriptorFileShouldReadAssembly() throws Excepti
assembly.addFileSet(fs);
- final File assemblyFile = temporaryFolder.newFile();
+ final File assemblyFile = File.createTempFile("junit", null, temporaryFolder);
final File basedir = assemblyFile.getParentFile();
@@ -524,7 +526,7 @@ public void testGetAssemblyFromDescriptorFileShouldReadAssembly() throws Excepti
@Test
public void testGetAssemblyForDescriptorReferenceShouldReadBinaryAssemblyRef() throws Exception {
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
when(configSource.getBasedir()).thenReturn(basedir);
@@ -547,13 +549,13 @@ public void testReadAssembliesShouldGetAssemblyDescriptorFromSingleFile() throws
assembly.addFileSet(fs);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
final List files = writeAssembliesToFile(Collections.singletonList(assembly), basedir);
final String assemblyFile = files.get(0);
- final List assemblies = performReadAssemblies(basedir, new String[] {assemblyFile}, null, null);
+ final List assemblies = performReadAssemblies(basedir, new String[]{assemblyFile}, null, null);
assertNotNull(assemblies);
assertEquals(1, assemblies.size());
@@ -565,7 +567,7 @@ public void testReadAssembliesShouldGetAssemblyDescriptorFromSingleFile() throws
@Test
public void testReadAssembliesShouldFailWhenSingleDescriptorFileMissing() throws Exception {
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
try {
performReadAssemblies(basedir, null, null, null, false);
@@ -578,7 +580,7 @@ public void testReadAssembliesShouldFailWhenSingleDescriptorFileMissing() throws
@Test
public void testReadAssembliesShouldIgnoreMissingSingleDescriptorFileWhenIgnoreIsConfigured() throws Exception {
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
try {
performReadAssemblies(basedir, null, null, null, true);
@@ -600,7 +602,7 @@ public void testReadAssembliesShouldGetAssemblyDescriptorFromFileArray() throws
assemblies.add(assembly1);
assemblies.add(assembly2);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
final List files = writeAssembliesToFile(assemblies, basedir);
@@ -620,9 +622,9 @@ public void testReadAssembliesShouldGetAssemblyDescriptorFromFileArray() throws
@Test
public void testReadAssembliesShouldGetAssemblyDescriptorFromMultipleRefs() throws Exception {
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
- final List assemblies = performReadAssemblies(basedir, null, new String[] {"bin", "src"}, null);
+ final List assemblies = performReadAssemblies(basedir, null, new String[]{"bin", "src"}, null);
assertNotNull(assemblies);
assertEquals(2, assemblies.size());
@@ -648,7 +650,7 @@ public void testReadAssembliesShouldGetAssemblyDescriptorFromDirectory() throws
assemblies.add(assembly1);
assemblies.add(assembly2);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
writeAssembliesToFile(assemblies, basedir);
@@ -678,7 +680,7 @@ public void testReadAssembliesShouldGetTwoAssemblyDescriptorsFromDirectoryWithTh
assemblies.add(assembly1);
assemblies.add(assembly2);
- final File basedir = temporaryFolder.getRoot();
+ final File basedir = temporaryFolder;
writeAssembliesToFile(assemblies, basedir);
@@ -766,4 +768,13 @@ private List performReadAssemblies(
return new DefaultAssemblyReader().readAssemblies(configSource);
}
+
+ private static File newFolder(File root, String... subDirs) throws IOException {
+ String subFolder = String.join("/", subDirs);
+ File result = new File(root, subFolder);
+ if (!result.mkdirs()) {
+ throw new IOException("Couldn't create folders " + root);
+ }
+ return result;
+ }
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/io/PrefixedClasspathLocatorStrategyTest.java b/src/test/java/org/apache/maven/plugins/assembly/io/PrefixedClasspathLocatorStrategyTest.java
index 25844c78..5fd1919d 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/io/PrefixedClasspathLocatorStrategyTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/io/PrefixedClasspathLocatorStrategyTest.java
@@ -18,10 +18,10 @@
*/
package org.apache.maven.plugins.assembly.io;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
/**
* @author Benjamin Bentmann
diff --git a/src/test/java/org/apache/maven/plugins/assembly/utils/AssemblyFormatUtilsTest.java b/src/test/java/org/apache/maven/plugins/assembly/utils/AssemblyFormatUtilsTest.java
index a4cc6c64..62255849 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/utils/AssemblyFormatUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/utils/AssemblyFormatUtilsTest.java
@@ -32,18 +32,21 @@
import org.apache.maven.plugins.assembly.model.Assembly;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.atLeast;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class AssemblyFormatUtilsTest {
@Test
public void testFixRelativePathRefsShouldRemoveRelativeRefToCurrentDir() {
diff --git a/src/test/java/org/apache/maven/plugins/assembly/utils/FilterUtilsTest.java b/src/test/java/org/apache/maven/plugins/assembly/utils/FilterUtilsTest.java
index fe8f5709..1107cf77 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/utils/FilterUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/utils/FilterUtilsTest.java
@@ -30,20 +30,23 @@
import org.apache.maven.plugins.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.project.MavenProject;
import org.hamcrest.Matchers;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
import org.slf4j.LoggerFactory;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
import static org.mockito.Mockito.lenient;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@MockitoSettings(strictness = Strictness.WARN)
+@ExtendWith(MockitoExtension.class)
public class FilterUtilsTest {
@Test
diff --git a/src/test/java/org/apache/maven/plugins/assembly/utils/LineEndingsUtilsTest.java b/src/test/java/org/apache/maven/plugins/assembly/utils/LineEndingsUtilsTest.java
index bada093e..b9aff77c 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/utils/LineEndingsUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/utils/LineEndingsUtilsTest.java
@@ -28,10 +28,11 @@
import org.apache.commons.io.IOUtils;
import org.apache.maven.plugins.assembly.format.AssemblyFormattingException;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
public class LineEndingsUtilsTest {
@@ -81,10 +82,10 @@ public void testGetLineEndingCharsShouldReturnNullLineEnding() throws AssemblyFo
assertNull(LineEndingsUtils.getLineEndingCharacters("keep"));
}
- @Test(expected = AssemblyFormattingException.class)
- public void testGetLineEndingCharsShouldThrowFormattingExceptionWithInvalidHint()
- throws AssemblyFormattingException {
- LineEndingsUtils.getLineEndingCharacters("invalid");
+ @Test
+ public void testGetLineEndingCharsShouldThrowFormattingExceptionWithInvalidHint() {
+ assertThrows(AssemblyFormattingException.class, () ->
+ LineEndingsUtils.getLineEndingCharacters("invalid"));
}
@Test
diff --git a/src/test/java/org/apache/maven/plugins/assembly/utils/LinuxLineFeedInputStreamTest.java b/src/test/java/org/apache/maven/plugins/assembly/utils/LinuxLineFeedInputStreamTest.java
index 3630a2a9..849d287c 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/utils/LinuxLineFeedInputStreamTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/utils/LinuxLineFeedInputStreamTest.java
@@ -21,9 +21,9 @@
import java.io.ByteArrayInputStream;
import java.io.IOException;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class LinuxLineFeedInputStreamTest {
diff --git a/src/test/java/org/apache/maven/plugins/assembly/utils/ProjectUtilsTest.java b/src/test/java/org/apache/maven/plugins/assembly/utils/ProjectUtilsTest.java
index f74334e4..7633eea8 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/utils/ProjectUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/utils/ProjectUtilsTest.java
@@ -28,14 +28,14 @@
import org.apache.maven.model.Model;
import org.apache.maven.project.MavenProject;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
public class ProjectUtilsTest {
private final Logger logger = LoggerFactory.getLogger(getClass());
diff --git a/src/test/java/org/apache/maven/plugins/assembly/utils/TypeConversionUtilsTest.java b/src/test/java/org/apache/maven/plugins/assembly/utils/TypeConversionUtilsTest.java
index f5792d1f..342aab0c 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/utils/TypeConversionUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/utils/TypeConversionUtilsTest.java
@@ -22,14 +22,14 @@
import java.util.List;
import org.apache.maven.plugins.assembly.format.AssemblyFormattingException;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -89,9 +89,9 @@ private void checkFileModeSanity(
final String mode, final boolean isSane, final List messagesToCheckIfInsane) {
Logger logger = mock(Logger.class);
assertEquals(
- "Mode sanity should be: " + isSane,
isSane,
- TypeConversionUtils.verifyModeSanity(Integer.parseInt(mode, 8), logger));
+ TypeConversionUtils.verifyModeSanity(Integer.parseInt(mode, 8), logger),
+ "Mode sanity should be: " + isSane);
if (!isSane && messagesToCheckIfInsane != null && !messagesToCheckIfInsane.isEmpty()) {
ArgumentCaptor warnings = ArgumentCaptor.forClass(String.class);
@@ -100,7 +100,7 @@ private void checkFileModeSanity(
final String message = warnings.getAllValues().toString();
for (final String checkMessage : messagesToCheckIfInsane) {
- assertTrue("\'" + checkMessage + "\' is not present in output.", message.contains(checkMessage));
+ assertTrue(message.contains(checkMessage), "\'" + checkMessage + "\' is not present in output.");
}
}
}
diff --git a/src/test/java/org/apache/maven/plugins/assembly/utils/WindowsLineFeedInputStreamTest.java b/src/test/java/org/apache/maven/plugins/assembly/utils/WindowsLineFeedInputStreamTest.java
index 55ab114e..da8b0213 100644
--- a/src/test/java/org/apache/maven/plugins/assembly/utils/WindowsLineFeedInputStreamTest.java
+++ b/src/test/java/org/apache/maven/plugins/assembly/utils/WindowsLineFeedInputStreamTest.java
@@ -21,9 +21,9 @@
import java.io.ByteArrayInputStream;
import java.io.IOException;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class WindowsLineFeedInputStreamTest {