You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2012/06/22 23:33:13 UTC
svn commit: r1353035 - in /maven/release/trunk/maven-release-manager/src:
main/java/org/apache/maven/shared/release/config/ReleaseUtils.java
test/java/org/apache/maven/shared/release/config/ReleaseUtilsTest.java
Author: rfscholte
Date: Fri Jun 22 21:33:12 2012
New Revision: 1353035
URL: http://svn.apache.org/viewvc?rev=1353035&view=rev
Log:
Fix MRELEASE-750: String index out of range exception.
Actually it looks like ReleaseDescriptor.getResolvedDependencies() could have never worked at all!
Modified:
maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java
maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/config/ReleaseUtilsTest.java
Modified: maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java?rev=1353035&r1=1353034&r2=1353035&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java (original)
+++ maven/release/trunk/maven-release-manager/src/main/java/org/apache/maven/shared/release/config/ReleaseUtils.java Fri Jun 22 21:33:12 2012
@@ -230,27 +230,26 @@ public class ReleaseUtils
while ( iterator.hasNext() )
{
currentEntry = iterator.next();
- propertyName = (String) currentEntry.getKey();
+ propertyName = currentEntry.getKey();
if ( propertyName.startsWith( "dependency." ) )
{
Map<String, String> versionMap;
String artifactVersionlessKey;
- int startIndex;
+ int startIndex = "dependency.".length();
int endIndex;
String versionType;
versionMap = new HashMap<String, String>();
- startIndex = propertyName.lastIndexOf( "dependency." );
if ( propertyName.indexOf( ".development" ) != -1 )
{
- endIndex = propertyName.indexOf( ".development" );
+ endIndex = propertyName.lastIndexOf( ".development" );
versionType = ReleaseDescriptor.DEVELOPMENT_KEY;
}
else
{
- endIndex = propertyName.indexOf( ".release" );
+ endIndex = propertyName.lastIndexOf( ".release" );
versionType = ReleaseDescriptor.RELEASE_KEY;
}
Modified: maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/config/ReleaseUtilsTest.java
URL: http://svn.apache.org/viewvc/maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/config/ReleaseUtilsTest.java?rev=1353035&r1=1353034&r2=1353035&view=diff
==============================================================================
--- maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/config/ReleaseUtilsTest.java (original)
+++ maven/release/trunk/maven-release-manager/src/test/java/org/apache/maven/shared/release/config/ReleaseUtilsTest.java Fri Jun 22 21:33:12 2012
@@ -20,11 +20,15 @@ package org.apache.maven.shared.release.
*/
import junit.framework.TestCase;
+
+import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.model.Scm;
import org.apache.maven.shared.release.phase.AbstractReleaseTestCase;
import java.io.File;
import java.io.IOException;
+import java.util.Map;
+import java.util.Properties;
/**
* ReleaseDescriptor Tester.
@@ -250,6 +254,36 @@ public class ReleaseUtilsTest
createReleaseDescriptor( releaseDescriptor.getWorkingDirectory() ).hashCode() );
}
+ public void testLoadResolvedDependencies()
+ {
+ Properties properties = new Properties();
+ String dependencyKey = ArtifactUtils.versionlessKey( "com.groupId", "artifactId" );
+ properties.put( "dependency." + dependencyKey + ".release", "1.3" );
+ properties.put( "dependency." + dependencyKey + ".development", "1.3-SNAPSHOT" );
+ ReleaseDescriptor descriptor = ReleaseUtils.copyPropertiesToReleaseDescriptor( properties );
+
+ Map<String, String> versionMap = (Map<String, String>) descriptor.getResolvedSnapshotDependencies().get( dependencyKey );
+ assertEquals( "1.3", versionMap.get( ReleaseDescriptor.RELEASE_KEY ) );
+ assertEquals( "1.3-SNAPSHOT", versionMap.get( ReleaseDescriptor.DEVELOPMENT_KEY) );
+ }
+
+ // MRELEASE-750
+ public void testArtifactIdEndswithDependency()
+ {
+ Properties properties = new Properties();
+ String relDependencyKey = ArtifactUtils.versionlessKey( "com.release.magic", "dependency" );
+ properties.put( "dependency." + relDependencyKey + ".release", "1.3" );
+ String devDependencyKey = ArtifactUtils.versionlessKey( "com.development.magic", "dependency" );
+ properties.put( "dependency." + devDependencyKey + ".development", "1.3-SNAPSHOT" );
+ ReleaseDescriptor descriptor = ReleaseUtils.copyPropertiesToReleaseDescriptor( properties );
+
+ Map<String, String> versionMap = (Map<String, String>) descriptor.getResolvedSnapshotDependencies().get( relDependencyKey );
+ assertEquals( "1.3", versionMap.get( ReleaseDescriptor.RELEASE_KEY ) );
+
+ versionMap = (Map<String, String>) descriptor.getResolvedSnapshotDependencies().get( devDependencyKey );
+ assertEquals( "1.3-SNAPSHOT", versionMap.get( ReleaseDescriptor.DEVELOPMENT_KEY) );
+ }
+
private static ReleaseDescriptor copyReleaseDescriptor( ReleaseDescriptor originalReleaseDescriptor )
{
return createReleaseDescriptor( originalReleaseDescriptor.getWorkingDirectory() );