You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2007/08/15 23:25:51 UTC
svn commit: r566347 - in /maven/maven-artifact/src:
main/java/org/apache/maven/artifact/DefaultArtifact.java
test/java/org/apache/maven/artifact/DefaultArtifactTest.java
Author: jdcasey
Date: Wed Aug 15 14:25:51 2007
New Revision: 566347
URL: http://svn.apache.org/viewvc?view=rev&rev=566347
Log:
Merging 565901 and 566205 from trunk of maven/components, to fix the isSnapshot() state-change problem.
Modified:
maven/maven-artifact/src/main/java/org/apache/maven/artifact/DefaultArtifact.java
maven/maven-artifact/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java
Modified: maven/maven-artifact/src/main/java/org/apache/maven/artifact/DefaultArtifact.java
URL: http://svn.apache.org/viewvc/maven/maven-artifact/src/main/java/org/apache/maven/artifact/DefaultArtifact.java?view=diff&rev=566347&r1=566346&r2=566347
==============================================================================
--- maven/maven-artifact/src/main/java/org/apache/maven/artifact/DefaultArtifact.java (original)
+++ maven/maven-artifact/src/main/java/org/apache/maven/artifact/DefaultArtifact.java Wed Aug 15 14:25:51 2007
@@ -187,7 +187,7 @@
public void setVersion( String version )
{
this.version = version;
- this.baseVersion = version;
+ this.setBaseVersionInternal( version );
this.versionRange = null;
}
@@ -283,7 +283,7 @@
}
appendArtifactTypeClassifierString( sb );
sb.append( ":" );
- if ( version != null || baseVersion != null )
+ if ( getBaseVersion() != null )
{
sb.append( getBaseVersion() );
}
@@ -357,19 +357,31 @@
{
if ( baseVersion == null )
{
- baseVersion = version;
-
if ( version == null )
{
throw new NullPointerException( "version was null for " + groupId + ":" + artifactId );
}
+ setBaseVersionInternal( version );
}
return baseVersion;
}
public void setBaseVersion( String baseVersion )
{
- this.baseVersion = baseVersion;
+ setBaseVersionInternal( baseVersion );
+ }
+
+ protected void setBaseVersionInternal( String baseVersion )
+ {
+ Matcher m = VERSION_FILE_PATTERN.matcher( baseVersion );
+ if ( m.matches() )
+ {
+ this.baseVersion = m.group( 1 ) + "-" + SNAPSHOT_VERSION;
+ }
+ else
+ {
+ this.baseVersion = baseVersion;
+ }
}
public int compareTo( Object o )
@@ -488,7 +500,7 @@
public void selectVersion( String version )
{
this.version = version;
- this.baseVersion = version;
+ setBaseVersionInternal( version );
}
public void setGroupId( String groupId )
@@ -503,18 +515,9 @@
public boolean isSnapshot()
{
- if ( version != null || baseVersion != null )
+ if ( getBaseVersion() != null )
{
- Matcher m = VERSION_FILE_PATTERN.matcher( getBaseVersion() );
- if ( m.matches() )
- {
- setBaseVersion( m.group( 1 ) + "-" + SNAPSHOT_VERSION );
- return true;
- }
- else
- {
- return getBaseVersion().endsWith( SNAPSHOT_VERSION ) || getBaseVersion().equals( LATEST_VERSION );
- }
+ return getBaseVersion().endsWith( SNAPSHOT_VERSION ) || getBaseVersion().equals( LATEST_VERSION );
}
else
{
Modified: maven/maven-artifact/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java
URL: http://svn.apache.org/viewvc/maven/maven-artifact/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java?view=diff&rev=566347&r1=566346&r2=566347
==============================================================================
--- maven/maven-artifact/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java (original)
+++ maven/maven-artifact/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java Wed Aug 15 14:25:51 2007
@@ -19,20 +19,27 @@
* under the License.
*/
-import junit.framework.TestCase;
import org.apache.maven.artifact.handler.ArtifactHandlerMock;
import org.apache.maven.artifact.versioning.VersionRange;
+import junit.framework.TestCase;
+
public class DefaultArtifactTest
extends TestCase
{
private DefaultArtifact artifact;
+ private DefaultArtifact snapshotArtifact;
+
private String groupId = "groupid", artifactId = "artifactId", version = "1.0", scope = "scope", type = "type",
classifier = "classifier";
+ private String snapshotSpecVersion = "1.0-SNAPSHOT";
+ private String snapshotResolvedVersion = "1.0-20070606.010101-1";
+
private VersionRange versionRange;
+ private VersionRange snapshotVersionRange;
private ArtifactHandlerMock artifactHandler;
@@ -43,6 +50,19 @@
artifactHandler = new ArtifactHandlerMock();
versionRange = VersionRange.createFromVersion( version );
artifact = new DefaultArtifact( groupId, artifactId, versionRange, scope, type, classifier, artifactHandler );
+
+ snapshotVersionRange = VersionRange.createFromVersion( snapshotResolvedVersion );
+ snapshotArtifact = new DefaultArtifact( groupId, artifactId, snapshotVersionRange, scope, type, classifier, artifactHandler );
+ }
+
+ public void testGetVersionReturnsResolvedVersionOnSnapshot()
+ {
+ assertEquals( snapshotResolvedVersion, snapshotArtifact.getVersion() );
+
+ // this is FOUL!
+// snapshotArtifact.isSnapshot();
+
+ assertEquals( snapshotSpecVersion, snapshotArtifact.getBaseVersion() );
}
public void testGetDependencyConflictId()