Make AbstractRewritingReleasePhaseTestCase an parameterized test, so we can simply add and verify new modelETLs
git-svn-id: https://svn.apache.org/repos/asf/maven/release/trunk@1744885 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractEditModeRewritingReleasePhaseTestCase.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractEditModeRewritingReleasePhaseTestCase.java
index c700145..cb544b6 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractEditModeRewritingReleasePhaseTestCase.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractEditModeRewritingReleasePhaseTestCase.java
@@ -56,6 +56,11 @@
public abstract class AbstractEditModeRewritingReleasePhaseTestCase
extends AbstractRewritingReleasePhaseTestCase
{
+ public AbstractEditModeRewritingReleasePhaseTestCase( String modelETL )
+ {
+ super( modelETL );
+ }
+
@Test
public void testRewriteBasicPomWithEditMode()
throws Exception
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java
index 0771e1a..0b7db6d 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java
@@ -30,6 +30,8 @@
import java.io.IOException;
import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
import java.util.Collections;
import java.util.List;
@@ -46,8 +48,12 @@
import org.apache.maven.shared.release.scm.DefaultScmRepositoryConfigurator;
import org.apache.maven.shared.release.scm.ReleaseScmRepositoryException;
import org.apache.maven.shared.release.scm.ScmRepositoryConfigurator;
+import org.apache.maven.shared.release.transform.jdom.JDomModelETLFactory;
import org.apache.maven.shared.release.util.ReleaseUtil;
import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameters;
import org.mockito.internal.util.reflection.Whitebox;
/**
@@ -55,9 +61,38 @@
*
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
*/
+@RunWith(Parameterized.class)
public abstract class AbstractRewritingReleasePhaseTestCase
extends AbstractReleaseTestCase
{
+ private String modelETL;
+
+ @Parameters
+ public static Collection<Object[]> data()
+ {
+ return Arrays.asList( new Object[][] { { JDomModelETLFactory.ROLE_HINT } } );
+ }
+
+ public AbstractRewritingReleasePhaseTestCase( String modelETL )
+ {
+ this.modelETL = modelETL;
+ }
+
+ @Override
+ public void setUp()
+ throws Exception
+ {
+ super.setUp();
+ phase = (ReleasePhase) lookup( ReleasePhase.ROLE, getRoleHint() );
+
+ if( phase instanceof AbstractRewritePomsPhase)
+ {
+ ((AbstractRewritePomsPhase) phase).setModelETL( modelETL );
+ }
+ }
+
+ protected abstract String getRoleHint();
+
@Test
public void testRewriteBasicPom()
throws Exception
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java
index a60e4e5..e5f17cb 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java
@@ -64,14 +64,24 @@
private ScmProvider scmProviderMock;
+ public GenerateReleasePomsPhaseTest( String modelETL )
+ {
+ super( modelETL );
+ }
+
public void setUp()
throws Exception
{
super.setUp();
- phase = (ReleasePhase) lookup( ReleasePhase.ROLE, "generate-release-poms" );
scmProviderMock = null;
}
+
+ @Override
+ protected String getRoleHint()
+ {
+ return "generate-release-poms";
+ }
// TODO: MRELEASE-262
// @Test public void testRewriteInternalRangeDependency() throws Exception
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForBranchPhaseTest.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForBranchPhaseTest.java
index 70dc9c8..79bf8a2 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForBranchPhaseTest.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForBranchPhaseTest.java
@@ -46,12 +46,15 @@
private static final String ALTERNATIVE_NEXT_VERSION = "2.0-SNAPSHOT";
- public void setUp()
- throws Exception
+ public RewritePomsForBranchPhaseTest( String modelETL )
{
- super.setUp();
+ super( modelETL );
+ }
- phase = (ReleasePhase) lookup( ReleasePhase.ROLE, "rewrite-poms-for-branch" );
+ @Override
+ protected String getRoleHint()
+ {
+ return "rewrite-poms-for-branch";
}
protected List<MavenProject> prepareReactorProjects( String path, boolean copyFiles )
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java
index 90cf5f2..1cc60f4 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java
@@ -55,12 +55,15 @@
private static final String ALTERNATIVE_RELEASE_VERSION = "2.0";
- public void setUp()
- throws Exception
+ public RewritePomsForDevelopmentPhaseTest( String modelETL )
{
- super.setUp();
+ super( modelETL );
+ }
- phase = (ReleasePhase) lookup( ReleasePhase.ROLE, "rewrite-poms-for-development" );
+ @Override
+ protected String getRoleHint()
+ {
+ return "rewrite-poms-for-development";
}
@Test
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java
index 6747516..f3d7587 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java
@@ -46,12 +46,15 @@
private static final String ALTERNATIVE_NEXT_VERSION = "2.0";
- public void setUp()
- throws Exception
+ public RewritePomsForReleasePhaseTest( String modelETL )
{
- super.setUp();
+ super( modelETL );
+ }
- phase = (ReleasePhase) lookup( ReleasePhase.ROLE, "rewrite-poms-for-release" );
+ @Override
+ protected String getRoleHint()
+ {
+ return "rewrite-poms-for-release";
}
protected List<MavenProject> prepareReactorProjects( String path, boolean copyFiles )