Author: brianf Date: Wed Mar 5 14:37:33 2008 New Revision: 634066 URL: http://svn.apache.org/viewvc?rev=634066&view=rev Log: MNG-3439: new unit test
Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java?rev=634066&r1=634065&r2=634066&view=diff ============================================================================== --- maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java (original) +++ maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java Wed Mar 5 14:37:33 2008 @@ -273,7 +273,7 @@ manageArtifact( child, managedVersions, listeners ); // Also, we need to ensure that any exclusions it presents are - // added to the artifact before we retrive the metadata + // added to the artifact before we retrieve the metadata // for the artifact; otherwise we may end up with unwanted // dependencies. Artifact ma = (Artifact) managedVersions.get( childKey ); @@ -341,7 +341,7 @@ artifact.setDependencyTrail( node.getDependencyTrail() ); ResolutionGroup rGroup = source.retrieve( artifact, localRepository, remoteRepositories ); - //TODO might be better to have source.retreive() throw a specific exception for this situation + //TODO might be better to have source.retrieve() throw a specific exception for this situation //and catch here rather than have it return null if ( rGroup == null ) { Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java?rev=634066&r1=634065&r2=634066&view=diff ============================================================================== --- maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java (original) +++ maven/components/branches/maven-2.0.x/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java Wed Mar 5 14:37:33 2008 @@ -338,6 +338,35 @@ assertEquals( "Check version", "2.5", getArtifact( "c", res.getArtifacts() ).getVersion() ); } + public void testCompatibleRecommendedVersionWithChildren() + throws ArtifactResolutionException, InvalidVersionSpecificationException + { + + // this test puts two dependencies on C with 3.2 and [1.0,3.0] as the version. + // it puts 2.5 in the pretend repo...we should get back c2.5 and d1.0 + ArtifactSpec a = createArtifactSpec( "a", "1.0" ); + ArtifactSpec b = a.addDependency( "b", "1.0" ); + ArtifactSpec e = a.addDependency( "e", "1.0" ); + ArtifactSpec c1 = b.addDependency( "c", "3.2" ); + ArtifactSpec d1 = c1.addDependency( "d","1.1" ); + e.addDependency( "c", "[1.0,3.0]" ); + + // put it in the repo + ArtifactSpec c = createArtifactSpec( "c", "2.5" ); + ArtifactSpec d = c.addDependency( "d","1.0" ); + + source.addArtifact( c ); + source.addArtifact( d ); + source.addArtifact( c1 ); + source.addArtifact( d1 ); + + ArtifactResolutionResult res = collect( a ); + + assertEquals( "Check artifact list", + createSet( new Object[] { a.artifact, b.artifact, e.artifact, c.artifact,d.artifact } ), res.getArtifacts() ); + assertEquals( "Check version", "2.5", getArtifact( "c", res.getArtifacts() ).getVersion() ); + } + public void testInCompatibleRecommendedVersion() throws ArtifactResolutionException, InvalidVersionSpecificationException { @@ -906,8 +935,8 @@ private String getKey( Artifact artifact ) { - //return artifact.getDependencyConflictId() + ":" + artifact.getVersionRange(); - return artifact.getDependencyConflictId(); + return artifact.getDependencyConflictId() + ":" + artifact.getVersion(); + //return artifact.getDependencyConflictId(); } private Set createArtifacts( ArtifactFactory artifactFactory, Set dependencies, String inheritedScope,