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

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


The following commit(s) were added to refs/heads/master by this push:
     new abdc76da Fix assertions and cleanups in Mojo Tests
abdc76da is described below

commit abdc76da7115ebdce28ba1257df42ba9bb641f72
Author: Slawomir Jaranowski <[email protected]>
AuthorDate: Sat Nov 8 11:15:59 2025 +0100

    Fix assertions and cleanups in Mojo Tests
---
 .../plugins/release/CleanReleaseMojoTest.java      |   6 +-
 .../plugins/release/PerformReleaseMojoTest.java    | 145 ++++++++-------------
 .../plugins/release/PrepareReleaseMojoTest.java    |  96 ++------------
 .../plugins/release/StageReleaseMojoTest.java      |  23 ++--
 .../src/test/resources/mojos/clean/clean.xml       |   2 +-
 .../resources/mojos/perform/perform-with-args.xml  |   8 +-
 .../mojos/perform/perform-with-flat-structure.xml  |   6 +-
 .../mojos/perform/perform-with-multiline-goals.xml |  14 +-
 .../resources/mojos/perform/perform-with-scm.xml   |   8 +-
 .../mojos/perform/perform-without-site.xml         |   8 +-
 .../src/test/resources/mojos/perform/perform.xml   |   8 +-
 .../src/test/resources/mojos/prepare/prepare.xml   |   6 +-
 .../src/test/resources/mojos/stage/stage.xml       |   6 +-
 13 files changed, 110 insertions(+), 226 deletions(-)

diff --git 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/CleanReleaseMojoTest.java
 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/CleanReleaseMojoTest.java
index 0e87abb4..07d09f1f 100644
--- 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/CleanReleaseMojoTest.java
+++ 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/CleanReleaseMojoTest.java
@@ -37,14 +37,12 @@ import static org.mockito.Mockito.verifyNoMoreInteractions;
 public class CleanReleaseMojoTest extends AbstractMojoTestCase {
     protected CleanReleaseMojo mojo;
 
-    private File workingDirectory;
-
     protected void setUp() throws Exception {
         super.setUp();
 
         File testFile = 
getTestFile("target/test-classes/mojos/clean/clean.xml");
-        mojo = (CleanReleaseMojo) lookupMojo("clean", testFile);
-        workingDirectory = testFile.getParentFile();
+        mojo = lookupMojo("clean", testFile);
+        File workingDirectory = testFile.getParentFile();
         mojo.setBasedir(workingDirectory);
     }
 
diff --git 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PerformReleaseMojoTest.java
 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PerformReleaseMojoTest.java
index 27667f8a..f2b37fc2 100644
--- 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PerformReleaseMojoTest.java
+++ 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PerformReleaseMojoTest.java
@@ -20,11 +20,9 @@ package org.apache.maven.plugins.release;
 
 import java.io.File;
 import java.util.Arrays;
-import java.util.List;
 
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.DistributionManagement;
-import org.apache.maven.model.Profile;
 import org.apache.maven.model.Site;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
@@ -54,12 +52,6 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
     public void testPerform() throws Exception {
         PerformReleaseMojo mojo = getMojoWithProjectSite("perform.xml");
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy site-deploy");
-
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
 
@@ -73,19 +65,17 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReleaseEnvironment());
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
+
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy site-deploy", 
releaseDescriptor.getPerformGoals());
+
         verifyNoMoreInteractions(mock);
     }
 
     public void testPerformWithFlatStructure() throws Exception {
         PerformReleaseMojo mojo = 
getMojoWithProjectSite("perform-with-flat-structure.xml");
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy");
-        
builder.setScmSourceUrl("scm:svn:file://localhost/target/svnroot/flat-multi-module/trunk/root-project");
-
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
 
@@ -99,25 +89,26 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReleaseEnvironment());
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
+
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy", releaseDescriptor.getPerformGoals());
+        assertEquals(
+                
"scm:svn:file://localhost/target/svnroot/flat-multi-module/trunk/root-project",
+                releaseDescriptor.getScmSourceUrl());
+
         verifyNoMoreInteractions(mock);
     }
 
     public void testPerformWithoutSite() throws Exception {
         File testFileDirectory = 
getTestFile("target/test-classes/mojos/perform/");
-        PerformReleaseMojo mojo =
-                (PerformReleaseMojo) lookupMojo("perform", new 
File(testFileDirectory, "perform-without-site.xml"));
+        PerformReleaseMojo mojo = lookupMojo("perform", new 
File(testFileDirectory, "perform-without-site.xml"));
         mojo.setBasedir(testFileDirectory);
         mojo.setPomFileName("pom.xml");
 
-        MavenProject project = (MavenProject) getVariableValueFromObject(mojo, 
"project");
+        MavenProject project = getVariableValueFromObject(mojo, "project");
         setVariableValueToObject(mojo, "session", newMavenSession(project));
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy");
-
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
 
@@ -132,14 +123,18 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
         verifyNoMoreInteractions(mock);
+
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy", releaseDescriptor.getPerformGoals());
     }
 
     private PerformReleaseMojo getMojoWithProjectSite(String fileName) throws 
Exception {
-        PerformReleaseMojo mojo = (PerformReleaseMojo) lookupMojo("perform", 
new File(workingDirectory, fileName));
+        PerformReleaseMojo mojo = lookupMojo("perform", new 
File(workingDirectory, fileName));
         mojo.setBasedir(workingDirectory);
         mojo.setPomFileName(fileName);
 
-        MavenProject project = (MavenProject) getVariableValueFromObject(mojo, 
"project");
+        MavenProject project = getVariableValueFromObject(mojo, "project");
         DistributionManagement distributionManagement = new 
DistributionManagement();
         distributionManagement.setSite(new Site());
         project.setDistributionManagement(distributionManagement);
@@ -152,12 +147,6 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
     public void testPerformWithExecutionException() throws Exception {
         PerformReleaseMojo mojo = getMojoWithProjectSite("perform.xml");
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy site-deploy");
-
         ReleaseManager mock = mock(ReleaseManager.class);
         doThrow(new 
ReleaseExecutionException("...")).when(mock).perform(isA(ReleasePerformRequest.class));
         mojo.setReleaseManager(mock);
@@ -180,18 +169,16 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
 
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy site-deploy", 
releaseDescriptor.getPerformGoals());
+
         verifyNoMoreInteractions(mock);
     }
 
     public void testPerformWithExecutionFailure() throws Exception {
         PerformReleaseMojo mojo = getMojoWithProjectSite("perform.xml");
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy site-deploy");
-
         ReleaseManager mock = mock(ReleaseManager.class);
         ReleaseFailureException cause = new ReleaseFailureException("...");
         doThrow(cause).when(mock).perform(isA(ReleasePerformRequest.class));
@@ -215,19 +202,16 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
 
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy site-deploy", 
releaseDescriptor.getPerformGoals());
+
         verifyNoMoreInteractions(mock);
     }
 
     public void testPerformWithScm() throws Exception {
         PerformReleaseMojo mojo = 
getMojoWithProjectSite("perform-with-scm.xml");
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy site-deploy");
-        builder.setScmSourceUrl("scm-url");
-
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
 
@@ -242,26 +226,18 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
 
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy site-deploy", 
releaseDescriptor.getPerformGoals());
+        assertEquals("scm-url", releaseDescriptor.getScmSourceUrl());
+
         verifyNoMoreInteractions(mock);
     }
 
     public void testPerformWithProfiles() throws Exception {
         PerformReleaseMojo mojo = getMojoWithProjectSite("perform.xml");
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy site-deploy");
-        builder.setAdditionalArguments("-P prof1,2prof");
-
-        MavenSession session = (MavenSession) getVariableValueFromObject(mojo, 
"session");
-        Profile profile1 = new Profile();
-        profile1.setId("prof1");
-        session.getRequest().addProfile(profile1);
-        Profile profile2 = new Profile();
-        profile2.setId("2prof");
-        session.getRequest().addProfile(profile2);
+        MavenSession session = getVariableValueFromObject(mojo, "session");
         session.getRequest().setActiveProfiles(Arrays.asList("prof1", 
"2prof"));
 
         ReleaseManager mock = mock(ReleaseManager.class);
@@ -278,26 +254,19 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
 
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy site-deploy", 
releaseDescriptor.getPerformGoals());
+        assertTrue(releaseDescriptor.getActivateProfiles().contains("prof1"));
+        assertTrue(releaseDescriptor.getActivateProfiles().contains("2prof"));
+
         verifyNoMoreInteractions(mock);
     }
 
     public void testPerformWithProfilesAndArguments() throws Exception {
         PerformReleaseMojo mojo = 
getMojoWithProjectSite("perform-with-args.xml");
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy site-deploy");
-        builder.setAdditionalArguments("-Dmaven.test.skip=true -P 
prof1,2prof");
-
-        MavenSession session = (MavenSession) getVariableValueFromObject(mojo, 
"session");
-        Profile profile1 = new Profile();
-        profile1.setId("prof1");
-        session.getRequest().addProfile(profile1);
-        Profile profile2 = new Profile();
-        profile2.setId("2prof");
-        session.getRequest().addProfile(profile2);
+        MavenSession session = getVariableValueFromObject(mojo, "session");
         session.getRequest().setActiveProfiles(Arrays.asList("prof1", 
"2prof"));
 
         ReleaseManager mock = mock(ReleaseManager.class);
@@ -314,18 +283,19 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
 
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy site-deploy", 
releaseDescriptor.getPerformGoals());
+        assertTrue(releaseDescriptor.getActivateProfiles().contains("prof1"));
+        assertTrue(releaseDescriptor.getActivateProfiles().contains("2prof"));
+        assertEquals("-Dmaven.test.skip=true", 
releaseDescriptor.getAdditionalArguments());
+
         verifyNoMoreInteractions(mock);
     }
 
     public void testPerformWithMultilineGoals() throws Exception {
         PerformReleaseMojo mojo = 
getMojoWithProjectSite("perform-with-multiline-goals.xml");
 
-        ReleaseDescriptorBuilder builder = 
createReleaseDescriptorBuilder(mojo);
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy site-deploy");
-
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
 
@@ -340,20 +310,11 @@ public class PerformReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
 
-        verifyNoMoreInteractions(mock);
-    }
-
-    private ReleaseDescriptorBuilder 
createReleaseDescriptorBuilder(PerformReleaseMojo mojo) throws Exception {
-        ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
-
-        @SuppressWarnings("unchecked")
-        List<MavenProject> reactorProjects = (List<MavenProject>) 
getVariableValueFromObject(mojo, "reactorProjects");
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy site-deploy", 
releaseDescriptor.getPerformGoals());
 
-        for (MavenProject project : reactorProjects) {
-            builder.putOriginalVersion(project.getGroupId() + ':' + 
project.getArtifactId(), project.getVersion());
-        }
-
-        return builder;
+        verifyNoMoreInteractions(mock);
     }
 
     protected void setUp() throws Exception {
diff --git 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
index 1dd461f9..db4c8c21 100644
--- 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
+++ 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
@@ -19,15 +19,10 @@
 package org.apache.maven.plugins.release;
 
 import java.io.File;
-import java.util.Collections;
-import java.util.List;
-import java.util.Properties;
 
-import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.plugin.testing.AbstractMojoTestCase;
-import org.apache.maven.project.MavenProject;
 import org.apache.maven.shared.release.ReleaseExecutionException;
 import org.apache.maven.shared.release.ReleaseFailureException;
 import org.apache.maven.shared.release.ReleaseManager;
@@ -35,8 +30,6 @@ import org.apache.maven.shared.release.ReleasePrepareRequest;
 import org.apache.maven.shared.release.config.ReleaseDescriptorBuilder;
 import org.apache.maven.shared.release.env.ReleaseEnvironment;
 import org.mockito.ArgumentCaptor;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.stubbing.Answer;
 
 import static org.hamcrest.CoreMatchers.instanceOf;
 import static org.hamcrest.CoreMatchers.is;
@@ -45,11 +38,9 @@ import static org.hamcrest.MatcherAssert.assertThat;
 import static org.mockito.ArgumentMatchers.isA;
 import static org.mockito.Mockito.doThrow;
 import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verifyNoMoreInteractions;
-import static org.mockito.Mockito.when;
 
 /**
  * Test release:prepare.
@@ -63,38 +54,16 @@ public class PrepareReleaseMojoTest extends 
AbstractMojoTestCase {
 
     public void testPrepare() throws Exception {
         File testFile = 
getTestFile("target/test-classes/mojos/prepare/prepare.xml");
-        final PrepareReleaseMojo mojo = spy((PrepareReleaseMojo) 
lookupMojo("prepare", testFile));
+        final PrepareReleaseMojo mojo = lookupMojo("prepare", testFile);
         mojo.getProject().setFile(testFile);
         setDefaults(mojo);
         mojo.setBasedir(testFile.getParentFile());
         mojo.setPomFileName("pom.xml");
-        mojo.session = new MavenSession(null, null, null, null, null, null, 
null, null, null) {
-            public Properties getExecutionProperties() {
-                return new Properties();
-            }
-            ;
-
-            @Override
-            public List<MavenProject> getProjects() {
-                return Collections.singletonList(mojo.project);
-            }
-        };
-
-        ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
-        
builder.setWorkingDirectory(testFile.getParentFile().getAbsolutePath());
-        builder.setUpdateDependencies(false);
+        setVariableValueToObject(mojo, "session", 
newMavenSession(mojo.project));
 
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
 
-        when(mojo.createReleaseDescriptor()).thenAnswer(new 
Answer<ReleaseDescriptorBuilder>() {
-            @Override
-            public ReleaseDescriptorBuilder answer(InvocationOnMock 
invocationOnMock) throws Throwable {
-                ReleaseDescriptorBuilder original = (ReleaseDescriptorBuilder) 
invocationOnMock.callRealMethod();
-                return spy(original);
-            }
-        });
-
         // execute
         mojo.execute();
 
@@ -111,27 +80,20 @@ public class PrepareReleaseMojoTest extends 
AbstractMojoTestCase {
         assertThat(prepareRequest.getValue().getResume(), is(true));
         assertThat(prepareRequest.getValue().getDryRun(), is(false));
 
-        
verify(prepareRequest.getValue().getReleaseDescriptorBuilder()).setScmSignTags(false);
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                
prepareRequest.getValue().getReleaseDescriptorBuilder().build();
+        assertThat(releaseDescriptor.isScmSignTags(), is(false));
+        assertThat(releaseDescriptor.isUpdateDependencies(), is(false));
     }
 
     public void testPrepareWithExecutionException() throws Exception {
         File testFile = 
getTestFile("target/test-classes/mojos/prepare/prepare.xml");
-        final PrepareReleaseMojo mojo = (PrepareReleaseMojo) 
lookupMojo("prepare", testFile);
+        final PrepareReleaseMojo mojo = lookupMojo("prepare", testFile);
         mojo.getProject().setFile(testFile);
         setDefaults(mojo);
         mojo.setBasedir(testFile.getParentFile());
         mojo.setPomFileName("pom.xml");
-        mojo.session = new MavenSession(null, null, null, null, null, null, 
null, null, null) {
-            public Properties getExecutionProperties() {
-                return new Properties();
-            }
-            ;
-
-            @Override
-            public List<MavenProject> getProjects() {
-                return Collections.singletonList(mojo.project);
-            }
-        };
+        setVariableValueToObject(mojo, "session", 
newMavenSession(mojo.project));
 
         ReleaseManager mock = mock(ReleaseManager.class);
         doThrow(new 
ReleaseExecutionException("...")).when(mock).prepare(isA(ReleasePrepareRequest.class));
@@ -154,22 +116,12 @@ public class PrepareReleaseMojoTest extends 
AbstractMojoTestCase {
 
     public void testPrepareWithExecutionFailure() throws Exception {
         File testFile = 
getTestFile("target/test-classes/mojos/prepare/prepare.xml");
-        final PrepareReleaseMojo mojo = (PrepareReleaseMojo) 
lookupMojo("prepare", testFile);
+        final PrepareReleaseMojo mojo = lookupMojo("prepare", testFile);
         mojo.getProject().setFile(testFile);
         setDefaults(mojo);
         mojo.setBasedir(testFile.getParentFile());
         mojo.setPomFileName("pom.xml");
-        mojo.session = new MavenSession(null, null, null, null, null, null, 
null, null, null) {
-            public Properties getExecutionProperties() {
-                return new Properties();
-            }
-            ;
-
-            @Override
-            public List<MavenProject> getProjects() {
-                return Collections.singletonList(mojo.project);
-            }
-        };
+        setVariableValueToObject(mojo, "session", 
newMavenSession(mojo.project));
 
         ReleaseManager mock = mock(ReleaseManager.class);
         ReleaseFailureException cause = new ReleaseFailureException("...");
@@ -191,24 +143,14 @@ public class PrepareReleaseMojoTest extends 
AbstractMojoTestCase {
 
     public void testLineSeparatorInPrepareWithPom() throws Exception {
         File testFile = 
getTestFile("target/test-classes/mojos/prepare/prepare.xml");
-        final PrepareWithPomReleaseMojo mojo = (PrepareWithPomReleaseMojo) 
lookupMojo("prepare-with-pom", testFile);
+        final PrepareWithPomReleaseMojo mojo = lookupMojo("prepare-with-pom", 
testFile);
         mojo.getProject().setFile(testFile);
         setDefaults(mojo);
         setVariableValueToObject(mojo, "generateReleasePoms", Boolean.TRUE);
         mojo.setBasedir(testFile.getParentFile());
         mojo.setPomFileName("pom.xml");
         mojo.project.setFile(testFile);
-        mojo.session = new MavenSession(null, null, null, null, null, null, 
null, null, null) {
-            public Properties getExecutionProperties() {
-                return new Properties();
-            }
-            ;
-
-            @Override
-            public List<MavenProject> getProjects() {
-                return Collections.singletonList(mojo.project);
-            }
-        };
+        setVariableValueToObject(mojo, "session", 
newMavenSession(mojo.project));
 
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
@@ -224,23 +166,13 @@ public class PrepareReleaseMojoTest extends 
AbstractMojoTestCase {
 
     public void testLineSeparatorInPrepare() throws Exception {
         File testFile = 
getTestFile("target/test-classes/mojos/prepare/prepare.xml");
-        final PrepareReleaseMojo mojo = (PrepareReleaseMojo) 
lookupMojo("prepare", testFile);
+        final PrepareReleaseMojo mojo = lookupMojo("prepare", testFile);
         mojo.getProject().setFile(testFile);
         setDefaults(mojo);
         mojo.setBasedir(testFile.getParentFile());
         mojo.setPomFileName("pom.xml");
         mojo.project.setFile(testFile);
-        mojo.session = new MavenSession(null, null, null, null, null, null, 
null, null, null) {
-            public Properties getExecutionProperties() {
-                return new Properties();
-            }
-            ;
-
-            @Override
-            public List<MavenProject> getProjects() {
-                return Collections.singletonList(mojo.project);
-            }
-        };
+        setVariableValueToObject(mojo, "session", 
newMavenSession(mojo.project));
 
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
diff --git 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/StageReleaseMojoTest.java
 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/StageReleaseMojoTest.java
index 2a6bcaf6..04033fce 100644
--- 
a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/StageReleaseMojoTest.java
+++ 
b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/StageReleaseMojoTest.java
@@ -44,19 +44,6 @@ public class StageReleaseMojoTest extends 
AbstractMojoTestCase {
     public void testStage() throws Exception {
         StageReleaseMojo mojo = getMojoWithProjectSite("stage.xml");
 
-        ReleaseDescriptorBuilder builder = new ReleaseDescriptorBuilder();
-        builder.setWorkingDirectory(workingDirectory.getAbsolutePath());
-        File checkoutDirectory = getTestFile("target/checkout");
-        builder.setCheckoutDirectory(checkoutDirectory.getAbsolutePath());
-        builder.setPerformGoals("deploy site:stage-deploy");
-        
builder.setAdditionalArguments("-DaltDeploymentRepository=\"staging\"");
-
-        ReleasePerformRequest performRequest = new ReleasePerformRequest();
-        performRequest.setReleaseDescriptorBuilder(builder);
-        performRequest.setReleaseEnvironment(mojo.getReleaseEnvironment());
-        performRequest.setReactorProjects(mojo.getReactorProjects());
-        performRequest.setDryRun(false);
-
         ReleaseManager mock = mock(ReleaseManager.class);
         mojo.setReleaseManager(mock);
 
@@ -69,6 +56,12 @@ public class StageReleaseMojoTest extends 
AbstractMojoTestCase {
         assertNotNull(argument.getValue().getReleaseEnvironment());
         assertNotNull(argument.getValue().getReactorProjects());
         assertEquals(Boolean.FALSE, argument.getValue().getDryRun());
+
+        ReleaseDescriptorBuilder.BuilderReleaseDescriptor releaseDescriptor =
+                argument.getValue().getReleaseDescriptorBuilder().build();
+        assertEquals("deploy site:stage-deploy", 
releaseDescriptor.getPerformGoals());
+        assertEquals("-DskipTests -DaltDeploymentRepository=\"staging\"", 
releaseDescriptor.getAdditionalArguments());
+
         verifyNoMoreInteractions(mock);
     }
 
@@ -90,11 +83,11 @@ public class StageReleaseMojoTest extends 
AbstractMojoTestCase {
     }
 
     private StageReleaseMojo getMojoWithProjectSite(String fileName) throws 
Exception {
-        StageReleaseMojo mojo = (StageReleaseMojo) lookupMojo("stage", new 
File(workingDirectory, fileName));
+        StageReleaseMojo mojo = lookupMojo("stage", new File(workingDirectory, 
fileName));
         mojo.setBasedir(workingDirectory);
         mojo.setPomFileName("pom.xml");
 
-        MavenProject project = (MavenProject) getVariableValueFromObject(mojo, 
"project");
+        MavenProject project = getVariableValueFromObject(mojo, "project");
         DistributionManagement distributionManagement = new 
DistributionManagement();
         distributionManagement.setSite(new Site());
         project.setDistributionManagement(distributionManagement);
diff --git a/maven-release-plugin/src/test/resources/mojos/clean/clean.xml 
b/maven-release-plugin/src/test/resources/mojos/clean/clean.xml
index 58832e50..2bb1c57a 100644
--- a/maven-release-plugin/src/test/resources/mojos/clean/clean.xml
+++ b/maven-release-plugin/src/test/resources/mojos/clean/clean.xml
@@ -25,7 +25,7 @@
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugin.testing.stubs.MavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugin.testing.stubs.MavenProjectStub" />
           </reactorProjects>
         </configuration>
       </plugin>
diff --git 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-with-args.xml 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-with-args.xml
index 14af0dca..cda042e6 100644
--- 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-with-args.xml
+++ 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-with-args.xml
@@ -24,14 +24,14 @@
       <plugin>
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
-          <settings implementation="org.apache.maven.settings.Settings"/>
-          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+          <settings implementation="org.apache.maven.settings.Settings" />
+          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           </reactorProjects>
           <workingDirectory>${basedir}/target/checkout</workingDirectory>
           <useReleaseProfile>true</useReleaseProfile>
-                 <goals>deploy site-deploy</goals>               
+          <goals>deploy site-deploy</goals>
           <arguments>-Dmaven.test.skip=true</arguments>
         </configuration>
       </plugin>
diff --git 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-with-flat-structure.xml
 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-with-flat-structure.xml
index 32e25fcb..1b5dc1ec 100644
--- 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-with-flat-structure.xml
+++ 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-with-flat-structure.xml
@@ -24,10 +24,10 @@
       <plugin>
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
-          <settings implementation="org.apache.maven.settings.Settings"/>
-          <project 
implementation="org.apache.maven.plugins.release.stubs.FlatMultiModuleMavenProjectStub"/>
+          <settings implementation="org.apache.maven.settings.Settings" />
+          <project 
implementation="org.apache.maven.plugins.release.stubs.FlatMultiModuleMavenProjectStub"
 />
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.FlatMultiModuleMavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.FlatMultiModuleMavenProjectStub"
 />
           </reactorProjects>
           <workingDirectory>${basedir}/target/checkout</workingDirectory>
           <useReleaseProfile>true</useReleaseProfile>
diff --git 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-with-multiline-goals.xml
 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-with-multiline-goals.xml
index f5446398..493c00e7 100644
--- 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-with-multiline-goals.xml
+++ 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-with-multiline-goals.xml
@@ -24,17 +24,17 @@
       <plugin>
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
-          <settings implementation="org.apache.maven.settings.Settings"/>
-          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+          <settings implementation="org.apache.maven.settings.Settings" />
+          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           </reactorProjects>
           <workingDirectory>${basedir}/target/checkout</workingDirectory>
           <useReleaseProfile>true</useReleaseProfile>
-                 <goals>
-                    deploy
-                        site-deploy
-             </goals>
+          <goals>
+            deploy
+            site-deploy
+          </goals>
         </configuration>
       </plugin>
     </plugins>
diff --git 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-with-scm.xml 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-with-scm.xml
index cb8a8660..b2dfe64a 100644
--- a/maven-release-plugin/src/test/resources/mojos/perform/perform-with-scm.xml
+++ b/maven-release-plugin/src/test/resources/mojos/perform/perform-with-scm.xml
@@ -24,15 +24,15 @@
       <plugin>
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
-          <settings implementation="org.apache.maven.settings.Settings"/>
-          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+          <settings implementation="org.apache.maven.settings.Settings" />
+          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           </reactorProjects>
           <workingDirectory>${basedir}/target/checkout</workingDirectory>
           <useReleaseProfile>true</useReleaseProfile>
           <connectionUrl>scm-url</connectionUrl>
-                 <goals>deploy site-deploy</goals>
+          <goals>deploy site-deploy</goals>
         </configuration>
       </plugin>
     </plugins>
diff --git 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-without-site.xml
 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-without-site.xml
index be9fcbb0..d661d428 100644
--- 
a/maven-release-plugin/src/test/resources/mojos/perform/perform-without-site.xml
+++ 
b/maven-release-plugin/src/test/resources/mojos/perform/perform-without-site.xml
@@ -24,13 +24,13 @@
       <plugin>
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
-          <settings implementation="org.apache.maven.settings.Settings"/>
-          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+          <settings implementation="org.apache.maven.settings.Settings" />
+          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           </reactorProjects>
           <workingDirectory>${basedir}/target/checkout</workingDirectory>
-                 <goals>deploy</goals>
+          <goals>deploy</goals>
           <useReleaseProfile>true</useReleaseProfile>
         </configuration>
       </plugin>
diff --git a/maven-release-plugin/src/test/resources/mojos/perform/perform.xml 
b/maven-release-plugin/src/test/resources/mojos/perform/perform.xml
index 0580f004..ebcf45af 100644
--- a/maven-release-plugin/src/test/resources/mojos/perform/perform.xml
+++ b/maven-release-plugin/src/test/resources/mojos/perform/perform.xml
@@ -24,13 +24,13 @@
       <plugin>
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
-          <settings implementation="org.apache.maven.settings.Settings"/>
-          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+          <settings implementation="org.apache.maven.settings.Settings" />
+          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           </reactorProjects>
           <workingDirectory>${basedir}/target/checkout</workingDirectory>
-                 <goals>deploy site-deploy</goals>
+          <goals>deploy site-deploy</goals>
           <useReleaseProfile>true</useReleaseProfile>
         </configuration>
       </plugin>
diff --git a/maven-release-plugin/src/test/resources/mojos/prepare/prepare.xml 
b/maven-release-plugin/src/test/resources/mojos/prepare/prepare.xml
index 623ff2b8..ef619798 100644
--- a/maven-release-plugin/src/test/resources/mojos/prepare/prepare.xml
+++ b/maven-release-plugin/src/test/resources/mojos/prepare/prepare.xml
@@ -24,10 +24,10 @@
       <plugin>
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
-          <settings implementation="org.apache.maven.settings.Settings"/>
-          <project 
implementation="org.apache.maven.plugin.testing.stubs.MavenProjectStub"/>
+          <settings implementation="org.apache.maven.settings.Settings" />
+          <project 
implementation="org.apache.maven.plugin.testing.stubs.MavenProjectStub" />
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           </reactorProjects>
           <resume>true</resume>
         </configuration>
diff --git a/maven-release-plugin/src/test/resources/mojos/stage/stage.xml 
b/maven-release-plugin/src/test/resources/mojos/stage/stage.xml
index ee865b24..6a54431c 100644
--- a/maven-release-plugin/src/test/resources/mojos/stage/stage.xml
+++ b/maven-release-plugin/src/test/resources/mojos/stage/stage.xml
@@ -24,10 +24,10 @@
       <plugin>
         <artifactId>maven-release-plugin</artifactId>
         <configuration>
-          <settings implementation="org.apache.maven.settings.Settings"/>
-          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+          <settings implementation="org.apache.maven.settings.Settings" />
+          <project 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           <reactorProjects>
-            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub"/>
+            <reactorProject 
implementation="org.apache.maven.plugins.release.stubs.MavenProjectStub" />
           </reactorProjects>
           <workingDirectory>${basedir}/target/checkout</workingDirectory>
           <stagingRepository>staging</stagingRepository>


Reply via email to