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 2008/03/05 23:15:15 UTC

svn commit: r634055 - in /maven/artifact/trunk/src: main/java/org/apache/maven/artifact/DefaultArtifact.java test/java/org/apache/maven/artifact/DefaultArtifactTest.java

Author: brett
Date: Wed Mar  5 14:15:13 2008
New Revision: 634055

URL: http://svn.apache.org/viewvc?rev=634055&view=rev
Log:
[MNG-3440] artifact comparison should compare versions using normal version comparison logic

Modified:
    maven/artifact/trunk/src/main/java/org/apache/maven/artifact/DefaultArtifact.java
    maven/artifact/trunk/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java

Modified: maven/artifact/trunk/src/main/java/org/apache/maven/artifact/DefaultArtifact.java
URL: http://svn.apache.org/viewvc/maven/artifact/trunk/src/main/java/org/apache/maven/artifact/DefaultArtifact.java?rev=634055&r1=634054&r2=634055&view=diff
==============================================================================
--- maven/artifact/trunk/src/main/java/org/apache/maven/artifact/DefaultArtifact.java (original)
+++ maven/artifact/trunk/src/main/java/org/apache/maven/artifact/DefaultArtifact.java Wed Mar  5 14:15:13 2008
@@ -26,6 +26,7 @@
 import org.apache.maven.artifact.versioning.ArtifactVersion;
 import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
 import org.apache.maven.artifact.versioning.VersionRange;
+import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
 import org.codehaus.plexus.util.StringUtils;
 
 import java.io.File;
@@ -439,7 +440,8 @@
                     if ( result == 0 )
                     {
                         // We don't consider the version range in the comparison, just the resolved version
-                        result = version.compareTo( a.getVersion() );
+                        result = new DefaultArtifactVersion( version ).compareTo(
+                            new DefaultArtifactVersion( a.getVersion() ) );
                     }
                 }
             }

Modified: maven/artifact/trunk/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java
URL: http://svn.apache.org/viewvc/maven/artifact/trunk/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java?rev=634055&r1=634054&r2=634055&view=diff
==============================================================================
--- maven/artifact/trunk/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java (original)
+++ maven/artifact/trunk/src/test/java/org/apache/maven/artifact/DefaultArtifactTest.java Wed Mar  5 14:15:13 2008
@@ -112,4 +112,19 @@
         assertEquals( groupId + ":" + artifactId + ":" + type + ":" + classifier + ":" + version, artifact.toString() );
     }
 
+    public void testComparisonByVersion()
+    {
+        Artifact artifact1 = new DefaultArtifact( groupId, artifactId, VersionRange.createFromVersion( "5.0" ), scope,
+                                                  type, classifier, artifactHandler );
+        Artifact artifact2 = new DefaultArtifact( groupId, artifactId, VersionRange.createFromVersion( "12.0" ), scope,
+                                                  type, classifier, artifactHandler );
+
+        assertTrue( artifact1.compareTo( artifact2 ) < 0 );
+        assertTrue( artifact2.compareTo( artifact1 ) > 0 );
+
+        Artifact artifact = new DefaultArtifact( groupId, artifactId, VersionRange.createFromVersion( "5.0" ), scope,
+                                                  type, classifier, artifactHandler );
+        assertTrue( artifact.compareTo( artifact1 ) == 0 );
+        assertTrue( artifact1.compareTo( artifact ) == 0 );
+    }
 }