You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by br...@apache.org on 2006/04/28 08:38:59 UTC
svn commit: r397785 - in /maven/plugins/trunk/maven-release-plugin/src:
main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java
test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java
Author: brett
Date: Thu Apr 27 23:38:58 2006
New Revision: 397785
URL: http://svn.apache.org/viewcvs?rev=397785&view=rev
Log:
[MRELEASE-98] simulated rewrite
Modified:
maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java
maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java
Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java?rev=397785&r1=397784&r2=397785&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java (original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java Thu Apr 27 23:38:58 2006
@@ -87,6 +87,12 @@
public void execute( ReleaseConfiguration releaseConfiguration )
throws ReleaseExecutionException
{
+ transform( releaseConfiguration, false );
+ }
+
+ private void transform( ReleaseConfiguration releaseConfiguration, boolean simulate )
+ throws ReleaseExecutionException
+ {
for ( Iterator it = releaseConfiguration.getReactorProjects().iterator(); it.hasNext(); )
{
MavenProject project = (MavenProject) it.next();
@@ -147,8 +153,16 @@
transformPomToReleaseVersion( project, document, releaseConfiguration, scmRepository );
- writePom( project.getFile(), releaseConfiguration, document, intro, outtro, project.getModelVersion(),
- scmRepository, provider );
+ if ( simulate )
+ {
+ File outputFile = new File( project.getFile().getParentFile(), project.getFile().getName() + ".tag" );
+ writePom( outputFile, document, releaseConfiguration, project.getModelVersion(), intro, outtro );
+ }
+ else
+ {
+ writePom( project.getFile(), document, releaseConfiguration, project.getModelVersion(), intro, outtro,
+ scmRepository, provider );
+ }
}
}
@@ -395,8 +409,9 @@
}
}
- private void writePom( File pomFile, ReleaseConfiguration releaseConfiguration, Document document, String intro,
- String outtro, String modelVersion, ScmRepository repository, ScmProvider provider )
+ private void writePom( File pomFile, Document document, ReleaseConfiguration releaseConfiguration,
+ String modelVersion, String intro, String outtro, ScmRepository repository,
+ ScmProvider provider )
throws ReleaseExecutionException
{
try
@@ -417,6 +432,13 @@
throw new ReleaseExecutionException( "An error occurred enabling edit mode: " + e.getMessage(), e );
}
+ writePom( pomFile, document, releaseConfiguration, modelVersion, intro, outtro );
+ }
+
+ private void writePom( File pomFile, Document document, ReleaseConfiguration releaseConfiguration,
+ String modelVersion, String intro, String outtro )
+ throws ReleaseExecutionException
+ {
Element rootElement = document.getRootElement();
if ( releaseConfiguration.isAddSchema() )
@@ -474,8 +496,8 @@
}
public void simulate( ReleaseConfiguration releaseConfiguration )
+ throws ReleaseExecutionException
{
- // TODO: implement
-
+ transform( releaseConfiguration, true );
}
}
Modified: maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java?rev=397785&r1=397784&r2=397785&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java (original)
+++ maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java Thu Apr 27 23:38:58 2006
@@ -36,6 +36,7 @@
import org.jmock.cglib.Mock;
import org.jmock.core.constraint.IsEqual;
import org.jmock.core.matcher.InvokeAtLeastOnceMatcher;
+import org.jmock.core.matcher.TestFailureMatcher;
import org.jmock.core.stub.ThrowStub;
import java.io.File;
@@ -461,6 +462,46 @@
String actual = readTestProjectFile( "basic-pom/pom.xml" );
assertEquals( "Check the transformed POM", expected, actual );
}
+ }
+
+ public void testSimulateRewrite()
+ throws Exception
+ {
+ ReleaseConfiguration config = createConfigurationFromProjects( "basic-pom" );
+ config.mapReleaseVersion( "groupId:artifactId", "1.0" );
+
+ String expected = readTestProjectFile( "basic-pom/pom.xml" );
+
+ phase.simulate( config );
+
+ String actual = readTestProjectFile( "basic-pom/pom.xml" );
+ assertEquals( "Check the original POM untouched", expected, actual );
+
+ expected = readTestProjectFile( "basic-pom/expected-pom.xml" );
+ actual = readTestProjectFile( "basic-pom/pom.xml.tag" );
+ assertEquals( "Check the transformed POM", expected, actual );
+ }
+
+ public void testSimulateRewriteEditModeSkipped()
+ throws Exception
+ {
+ ReleaseConfiguration config = createConfigurationFromProjects( "basic-pom" );
+ config.setUseEditMode( true );
+ config.mapReleaseVersion( "groupId:artifactId", "1.0" );
+
+ Mock scmProviderMock = new Mock( ScmProvider.class );
+ scmProviderMock.expects( new TestFailureMatcher( "edit should not be called" ) ).method( "edit" );
+
+ ScmManagerStub scmManager = new ScmManagerStub();
+ DefaultScmRepositoryConfigurator configurator =
+ (DefaultScmRepositoryConfigurator) lookup( ScmRepositoryConfigurator.ROLE );
+ configurator.setScmManager( scmManager );
+ scmManager.setScmProvider( (ScmProvider) scmProviderMock.proxy() );
+
+ phase.simulate( config );
+
+ // Getting past mock is success
+ assertTrue( true );
}
public void testRewriteUnmappedPom()