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 );
+    }
 }


Reply via email to