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 2010/09/28 17:56:36 UTC
svn commit: r1002231 - in /maven/release/trunk/maven-release-manager/src:
main/java/org/apache/maven/shared/release/phase/
test/java/org/apache/maven/shared/release/phase/
test/resources/projects/check-dependencies/external-snapshot-all/
Author: brett
Date: Tue Sep 28 15:56:36 2010
New Revision: 1002231
URL: http://svn.apache.org/viewvc?rev=1002231&view=rev
Log:
[MRELEASE-350] option '0' did not work
Added:
maven/release/trunk/maven-release-manager/src/test/resources/projects/check-dependencies/external-snapshot-all/
- copied from r1002110, maven/release/trunk/maven-release-manager/src/test/resources/projects/check-dependencies/external-snapshot-report-plugins/
Modified:
maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhase.java
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhaseTest.java
maven/release/trunk/maven-release-manager/src/test/resources/projects/check-dependencies/external-snapshot-all/pom.xml
Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhase.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhase.java?rev=1002231&r1=1002230&r2=1002231&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhase.java (original)
+++ maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhase.java Tue Sep 28 15:56:36 2010
@@ -327,7 +327,6 @@ public class CheckDependencySnapshotsPha
if ( result.toLowerCase( Locale.ENGLISH ).startsWith( "y" ) )
{
- Set snapshotSet = new HashSet();
Map resolvedSnapshots = null;
prompter.showMessage( RESOLVE_SNAPSHOT_TYPE_MESSAGE );
result = prompter.prompt( RESOLVE_SNAPSHOT_TYPE_PROMPT,
@@ -337,11 +336,10 @@ public class CheckDependencySnapshotsPha
{
// all
case 0:
- snapshotSet.addAll( projectDependencies );
- snapshotSet.addAll( reportDependencies );
- snapshotSet.addAll( extensionDependencies );
- snapshotSet.addAll( pluginDependencies );
- resolvedSnapshots = processSnapshot( snapshotSet );
+ resolvedSnapshots = processSnapshot( projectDependencies );
+ resolvedSnapshots.putAll( processSnapshot( pluginDependencies ) );
+ resolvedSnapshots.putAll( processSnapshot( reportDependencies ) );
+ resolvedSnapshots.putAll( processSnapshot( extensionDependencies ) );
break;
// project dependencies
@@ -402,7 +400,7 @@ public class CheckDependencySnapshotsPha
iterator.remove();
// by default, keep the same version for the dependency after release, unless it was previously newer
- // th euser may opt to type in something different
+ // the user may opt to type in something different
VersionInfo nextVersionInfo = new DefaultVersionInfo( result );
String nextVersion;
Modified: maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhaseTest.java?rev=1002231&r1=1002230&r2=1002231&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhaseTest.java (original)
+++ maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/phase/CheckDependencySnapshotsPhaseTest.java Tue Sep 28 15:56:36 2010
@@ -28,6 +28,7 @@ import org.codehaus.plexus.components.in
import static org.mockito.Mockito.*;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -551,6 +552,67 @@ public class CheckDependencySnapshotsPha
assertEquals( "1.0", versionsMap.get( ReleaseDescriptor.RELEASE_KEY ) );
}
+ public void testSnapshotDependenciesUpdateAllOnlyDependenciesNeeded()
+ throws Exception
+ {
+ CheckDependencySnapshotsPhase phase =
+ (CheckDependencySnapshotsPhase) lookup( ReleasePhase.ROLE, "check-dependency-snapshots" );
+
+ ReleaseDescriptor releaseDescriptor = new ReleaseDescriptor();
+ List reactorProjects = createDescriptorFromProjects( "external-snapshot-dependencies" );
+
+ phase.setPrompter( createMockPrompter( YES, "0", new VersionPair( "1.0", "1.0" ) ) );
+
+ try
+ {
+ phase.execute( releaseDescriptor, new DefaultReleaseEnvironment(), reactorProjects );
+ }
+ catch ( ReleaseFailureException e )
+ {
+ fail( e.getMessage() );
+ }
+
+ // validate
+ Map versionsMap = (Map) releaseDescriptor.getResolvedSnapshotDependencies().get( "external:artifactId" );
+
+ assertNotNull( versionsMap );
+ assertEquals( "1.0", versionsMap.get( ReleaseDescriptor.DEVELOPMENT_KEY ) );
+ assertEquals( "1.0", versionsMap.get( ReleaseDescriptor.RELEASE_KEY ) );
+ }
+
+
+ public void testSnapshotDependenciesUpdateAll()
+ throws Exception
+ {
+ CheckDependencySnapshotsPhase phase =
+ (CheckDependencySnapshotsPhase) lookup( ReleasePhase.ROLE, "check-dependency-snapshots" );
+
+ ReleaseDescriptor releaseDescriptor = new ReleaseDescriptor();
+ List reactorProjects = createDescriptorFromProjects( "external-snapshot-all" );
+
+ Prompter mockPrompter = createMockPrompter( YES, "0", Arrays.asList( new VersionPair( "1.0", "1.0" ),
+ new VersionPair( "1.1", "1.1" ),
+ new VersionPair( "1.2", "1.2" ),
+ new VersionPair( "1.3", "1.3" ) ) );
+ phase.setPrompter( mockPrompter );
+
+ try
+ {
+ phase.execute( releaseDescriptor, new DefaultReleaseEnvironment(), reactorProjects );
+ }
+ catch ( ReleaseFailureException e )
+ {
+ fail( e.getMessage() );
+ }
+
+ // validate
+ Map versionsMap = (Map) releaseDescriptor.getResolvedSnapshotDependencies().get( "external:artifactId" );
+
+ assertNotNull( versionsMap );
+ assertEquals( "1.0", versionsMap.get( ReleaseDescriptor.DEVELOPMENT_KEY ) );
+ assertEquals( "1.0", versionsMap.get( ReleaseDescriptor.RELEASE_KEY ) );
+ }
+
public void testSnapshotDependenciesInsideAndOutsideProject()
throws Exception
{
@@ -1053,27 +1115,42 @@ public class CheckDependencySnapshotsPha
private Prompter createMockPrompter( String resolveSnapshots, String resolutionType, VersionPair resolvedVersions )
throws PrompterException
{
- VersionPair defaultVersions = new VersionPair( resolvedVersions.releaseVersion,
- resolvedVersions.developmentVersion );
-
- return createMockPrompter( resolveSnapshots, resolutionType, resolvedVersions, defaultVersions );
+ return createMockPrompter( resolveSnapshots, resolutionType, resolvedVersions, resolvedVersions );
}
private Prompter createMockPrompter( String resolveSnapshots, String resolutionType, VersionPair resolvedVersions,
VersionPair defaultVersions )
throws PrompterException
{
+ return createMockPrompter( resolveSnapshots, resolutionType, Collections.singletonList( resolvedVersions ),
+ Collections.singletonList( defaultVersions ) );
+ }
+
+ private Prompter createMockPrompter( String resolveSnapshots, String resolutionType,
+ List<VersionPair> resolvedVersions )
+ throws PrompterException
+ {
+ return createMockPrompter( resolveSnapshots, resolutionType, resolvedVersions, resolvedVersions );
+ }
+
+ private Prompter createMockPrompter( String resolveSnapshots, String resolutionType,
+ List<VersionPair> resolvedVersions, List<VersionPair> defaultVersions )
+ throws PrompterException
+ {
Prompter mockPrompter = mock( Prompter.class );
when( mockPrompter.prompt( anyString(), eq( YES_NO_ARRAY ), eq( NO ) ) ).thenReturn( resolveSnapshots );
when( mockPrompter.prompt( anyString(), eq( CHOICE_ARRAY ), eq( DEFAULT_CHOICE ) ) ).thenReturn(
resolutionType );
- when( mockPrompter.prompt( "Which release version should it be set to?",
- defaultVersions.releaseVersion ) ).thenReturn( resolvedVersions.releaseVersion );
- when( mockPrompter.prompt( "What version should the dependency be reset to for development?",
- defaultVersions.developmentVersion ) ).thenReturn(
- resolvedVersions.developmentVersion );
+ for ( int i = 0; i < resolvedVersions.size(); i++ )
+ {
+ when( mockPrompter.prompt( "Which release version should it be set to?", defaultVersions.get(
+ i ).releaseVersion ) ).thenReturn( resolvedVersions.get( i ).releaseVersion );
+ when( mockPrompter.prompt( "What version should the dependency be reset to for development?",
+ defaultVersions.get( i ).developmentVersion ) ).thenReturn( resolvedVersions.get(
+ i ).developmentVersion );
+ }
return mockPrompter;
}
Modified: maven/release/trunk/maven-release-manager/src/test/resources/projects/check-dependencies/external-snapshot-all/pom.xml
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/resources/projects/check-dependencies/external-snapshot-all/pom.xml?rev=1002231&r1=1002110&r2=1002231&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/test/resources/projects/check-dependencies/external-snapshot-all/pom.xml (original)
+++ maven/release/trunk/maven-release-manager/src/test/resources/projects/check-dependencies/external-snapshot-all/pom.xml Tue Sep 28 15:56:36 2010
@@ -20,7 +20,7 @@
<artifactId>artifactId</artifactId>
<version>1.0-SNAPSHOT</version>
- <reporting>
+ <build>
<plugins>
<plugin>
<groupId>external</groupId>
@@ -28,5 +28,30 @@
<version>1.1-SNAPSHOT</version>
</plugin>
</plugins>
+ <extensions>
+ <extension>
+ <groupId>external</groupId>
+ <artifactId>extension-artifactId</artifactId>
+ <version>1.3-SNAPSHOT</version>
+ </extension>
+ </extensions>
+ </build>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>external</groupId>
+ <artifactId>report-artifactId</artifactId>
+ <version>1.2-SNAPSHOT</version>
+ </plugin>
+ </plugins>
</reporting>
+
+ <dependencies>
+ <dependency>
+ <groupId>external</groupId>
+ <artifactId>artifactId</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
</project>