Author: rfscholte
Date: Wed Feb 22 20:26:06 2012
New Revision: 1292493
URL: http://svn.apache.org/viewvc?rev=1292493&view=rev
Log:
Rename createReactorProjects(String, boolean) to prepareReactorProjects(String,
boolean)
Add verifyReactorProjects(String, boolean)
Modified:
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java
Modified:
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java
URL:
http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java?rev=1292493&r1=1292492&r2=1292493&view=diff
==============================================================================
---
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java
(original)
+++
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractReleaseTestCase.java
Wed Feb 22 20:26:06 2012
@@ -54,9 +54,6 @@ import org.apache.maven.project.MavenPro
import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.project.ProjectBuildingException;
import org.apache.maven.project.ProjectSorter;
-import org.apache.maven.scm.manager.ScmManager;
-import org.apache.maven.shared.release.scm.DefaultScmRepositoryConfigurator;
-import org.apache.maven.shared.release.scm.ScmRepositoryConfigurator;
import org.apache.maven.shared.release.util.ReleaseUtil;
import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.context.ContextException;
@@ -71,7 +68,6 @@ import org.custommonkey.xmlunit.Differen
import org.custommonkey.xmlunit.DifferenceListener;
import org.custommonkey.xmlunit.XMLAssert;
import org.custommonkey.xmlunit.XMLUnit;
-import org.jmock.Mock;
import org.w3c.dom.Node;
import org.xml.sax.SAXException;
Modified:
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java
URL:
http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java?rev=1292493&r1=1292492&r2=1292493&view=diff
==============================================================================
---
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java
(original)
+++
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/AbstractRewritingReleasePhaseTestCase.java
Wed Feb 22 20:26:06 2012
@@ -418,7 +418,8 @@ public abstract class AbstractRewritingR
// Run a second time to check they are not duplicated
for ( int i = 0; i < 2; i++ )
{
- List<MavenProject> reactorProjects = createReactorProjects(
"basic-pom", copyFiles );
+ String path = "basic-pom";
+ List<MavenProject> reactorProjects = prepareReactorProjects( path,
copyFiles );
ReleaseDescriptor config = createDescriptorFromBasicPom(
reactorProjects );
mapNextVersion( config, "groupId:artifactId" );
config.setAddSchema( true );
@@ -428,6 +429,8 @@ public abstract class AbstractRewritingR
comparePomFiles( reactorProjects, "-with-schema" );
copyFiles = false;
+
+ verifyReactorProjects( path, copyFiles );
}
}
@@ -601,7 +604,7 @@ public abstract class AbstractRewritingR
protected List<MavenProject> createReactorProjects( String path )
throws Exception
{
- return createReactorProjects( path, true );
+ return prepareReactorProjects( path, true );
}
protected ReleaseDescriptor createDefaultConfiguration( List<MavenProject>
reactorProjects )
@@ -664,8 +667,12 @@ public abstract class AbstractRewritingR
assertTrue( comparePomFiles( reactorProjects ) );
}
- protected abstract List<MavenProject> createReactorProjects( String path,
boolean copyFiles )
+ protected abstract List<MavenProject> prepareReactorProjects( String path,
boolean copyFiles )
throws Exception;
+
+ protected void verifyReactorProjects( String path, boolean copyFiles )
throws Exception
+ {
+ }
protected ReleaseDescriptor createDescriptorFromProjects(
List<MavenProject> reactorProjects )
{
Modified:
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java
URL:
http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java?rev=1292493&r1=1292492&r2=1292493&view=diff
==============================================================================
---
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java
(original)
+++
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/GenerateReleasePomsPhaseTest.java
Wed Feb 22 20:26:06 2012
@@ -19,6 +19,13 @@ package org.apache.maven.shared.release.
* under the License.
*/
+import static org.mockito.Matchers.argThat;
+import static org.mockito.Matchers.isA;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
+import static org.mockito.Mockito.when;
+
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
@@ -35,14 +42,10 @@ import org.apache.maven.scm.command.add.
import org.apache.maven.scm.manager.ScmManager;
import org.apache.maven.scm.manager.ScmManagerStub;
import org.apache.maven.scm.provider.ScmProvider;
+import org.apache.maven.scm.repository.ScmRepository;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
import org.apache.maven.shared.release.env.DefaultReleaseEnvironment;
import org.apache.maven.shared.release.util.ReleaseUtil;
-import org.jmock.Mock;
-import org.jmock.core.Constraint;
-import org.jmock.core.constraint.IsAnything;
-import org.jmock.core.matcher.InvokeOnceMatcher;
-import org.jmock.core.stub.ReturnStub;
/**
* Test the generate release POMs phase.
@@ -56,7 +59,7 @@ public class GenerateReleasePomsPhaseTes
private static final String ALTERNATIVE_NEXT_VERSION = "2.0";
- private Mock scmProviderMock;
+ private ScmProvider scmProviderMock;
protected void setUp()
throws Exception
@@ -103,14 +106,11 @@ public class GenerateReleasePomsPhaseTes
* @see
org.apache.maven.shared.release.phase.AbstractRewritingReleasePhaseTestCase#createReactorProjects(java.lang.String,
* boolean)
*/
- protected List<MavenProject> createReactorProjects( String path, boolean
copyFiles ) throws Exception
+ protected List<MavenProject> prepareReactorProjects( String path, boolean
copyFiles ) throws Exception
{
List<MavenProject> reactorProjects = createReactorProjects(
"generate-release-poms/", path );
- // add scm provider expectations for each project in the reactor
- // TODO: can we move this somewhere better?
-
- scmProviderMock = new Mock( ScmProvider.class );
+ scmProviderMock = mock( ScmProvider.class );
List<File> releasePoms = new ArrayList<File>();
@@ -124,22 +124,39 @@ public class GenerateReleasePomsPhaseTes
MavenProject rootProject = ReleaseUtil.getRootProject( reactorProjects
);
ScmFileSet fileSet = new ScmFileSet(
rootProject.getFile().getParentFile(), releasePoms );
- Constraint[] arguments = new Constraint[] { new IsAnything(), new
IsScmFileSetEquals( fileSet ) };
-
- scmProviderMock
- .expects( new InvokeOnceMatcher() )
- .method( "add" )
- .with( arguments )
- .will( new ReturnStub( new AddScmResult( "...", Collections
- .singletonList( new ScmFile( Maven.RELEASE_POMv4,
ScmFileStatus.ADDED ) ) ) ) );
-
+ when( scmProviderMock.add( isA( ScmRepository.class ),
+ argThat( new IsScmFileSetEquals( fileSet )
) ) ).
+ thenReturn( new AddScmResult( "...",
+
Collections.singletonList( new ScmFile( Maven.RELEASE_POMv4,
ScmFileStatus.ADDED ) ) ) );
ScmManagerStub stub = (ScmManagerStub) lookup( ScmManager.ROLE );
- stub.setScmProvider( (ScmProvider) scmProviderMock.proxy() );
+ stub.setScmProvider( scmProviderMock );
return reactorProjects;
}
+
+ @Override
+ protected void verifyReactorProjects( String path, boolean copyFiles )
throws Exception
+ {
+ List<MavenProject> reactorProjects = createReactorProjects(
"generate-release-poms/", path );
+
+ List<File> releasePoms = new ArrayList<File>();
+
+ for ( Iterator<MavenProject> iterator = reactorProjects.iterator();
iterator.hasNext(); )
+ {
+ MavenProject project = iterator.next();
+
+ releasePoms.add( ReleaseUtil.getReleasePom( project ) );
+ }
+
+ MavenProject rootProject = ReleaseUtil.getRootProject( reactorProjects
);
+ ScmFileSet fileSet = new ScmFileSet(
rootProject.getFile().getParentFile(), releasePoms );
+
+ verify( scmProviderMock ).add( isA( ScmRepository.class ),
+ argThat( new IsScmFileSetEquals(
fileSet ) ) );
+ verifyNoMoreInteractions( scmProviderMock );
+ }
/*
* @see
org.apache.maven.shared.release.phase.AbstractRewritingReleasePhaseTestCase#mapNextVersion(org.apache.maven.shared.release.config.ReleaseDescriptor,
@@ -214,13 +231,5 @@ public class GenerateReleasePomsPhaseTes
File expectedFile = new File( actualFile.getParentFile(),
"expected-release-pom" + expectedFileSuffix + ".xml" );
comparePomFiles( expectedFile, actualFile, normalizeLineEndings );
-
- // verify scm provider expectations here
- // TODO: can we move this somewhere better?
-
- if ( scmProviderMock != null )
- {
- scmProviderMock.verify();
- }
}
}
Modified:
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java
URL:
http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java?rev=1292493&r1=1292492&r2=1292493&view=diff
==============================================================================
---
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java
(original)
+++
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForDevelopmentPhaseTest.java
Wed Feb 22 20:26:06 2012
@@ -147,7 +147,7 @@ public class RewritePomsForDevelopmentPh
public void testRewriteBasicPomUnmappedScm()
throws Exception
{
- List<MavenProject> reactorProjects = createReactorProjects(
"basic-pom", true );
+ List<MavenProject> reactorProjects = prepareReactorProjects(
"basic-pom", true );
ReleaseDescriptor config = createDescriptorFromProjects(
reactorProjects );
@@ -161,7 +161,7 @@ public class RewritePomsForDevelopmentPh
}
catch ( ReleaseExecutionException e )
{
- assertTrue( true );
+ verifyReactorProjects( "basic-pom", true );
}
}
@@ -177,7 +177,7 @@ public class RewritePomsForDevelopmentPh
return ReleaseUtil.readXmlFile( getTestFile(
"target/test-classes/projects/"+ subpath + fileName ) );
}
- protected List<MavenProject> createReactorProjects( String path, boolean
copyFiles )
+ protected List<MavenProject> prepareReactorProjects( String path, boolean
copyFiles )
throws Exception
{
return createReactorProjects( "rewrite-for-development/", path );
Modified:
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java
URL:
http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java?rev=1292493&r1=1292492&r2=1292493&view=diff
==============================================================================
---
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java
(original)
+++
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/RewritePomsForReleasePhaseTest.java
Wed Feb 22 20:26:06 2012
@@ -49,7 +49,7 @@ public class RewritePomsForReleasePhaseT
phase = (ReleasePhase) lookup( ReleasePhase.ROLE,
"rewrite-poms-for-release" );
}
- protected List<MavenProject> createReactorProjects( String path, boolean
copyFiles )
+ protected List<MavenProject> prepareReactorProjects( String path, boolean
copyFiles )
throws Exception
{
return createReactorProjects( "rewrite-for-release/", path );