You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ma...@apache.org on 2007/10/12 17:05:48 UTC
svn commit: r584176 - in /maven/shared/trunk/maven-dependency-tree/src:
main/java/org/apache/maven/shared/dependency/tree/DefaultDependencyTreeBuilder.java
test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java
Author: markh
Date: Fri Oct 12 08:05:46 2007
New Revision: 584176
URL: http://svn.apache.org/viewvc?rev=584176&view=rev
Log:
Made DependencyTreeBuilderTest assert resolution tree against the internal one used by DefaultDependencyTreeBuilder. Previously it was asserting against the result of performing a further artifact collection, which caused misleading results since artifacts are mutated during collection.
Modified:
maven/shared/trunk/maven-dependency-tree/src/main/java/org/apache/maven/shared/dependency/tree/DefaultDependencyTreeBuilder.java
maven/shared/trunk/maven-dependency-tree/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java
Modified: maven/shared/trunk/maven-dependency-tree/src/main/java/org/apache/maven/shared/dependency/tree/DefaultDependencyTreeBuilder.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-dependency-tree/src/main/java/org/apache/maven/shared/dependency/tree/DefaultDependencyTreeBuilder.java?rev=584176&r1=584175&r2=584176&view=diff
==============================================================================
--- maven/shared/trunk/maven-dependency-tree/src/main/java/org/apache/maven/shared/dependency/tree/DefaultDependencyTreeBuilder.java (original)
+++ maven/shared/trunk/maven-dependency-tree/src/main/java/org/apache/maven/shared/dependency/tree/DefaultDependencyTreeBuilder.java Fri Oct 12 08:05:46 2007
@@ -28,6 +28,7 @@
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.ArtifactCollector;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
+import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.artifact.InvalidDependencyVersionException;
@@ -45,6 +46,10 @@
*/
public class DefaultDependencyTreeBuilder extends AbstractLogEnabled implements DependencyTreeBuilder
{
+ // fields -----------------------------------------------------------------
+
+ private ArtifactResolutionResult result;
+
// DependencyTreeBuilder methods ------------------------------------------
/*
@@ -94,7 +99,7 @@
// TODO: note that filter does not get applied due to MNG-3236
- collector.collect( dependencyArtifacts, project.getArtifact(), managedVersions, repository,
+ result = collector.collect( dependencyArtifacts, project.getArtifact(), managedVersions, repository,
project.getRemoteArtifactRepositories(), metadataSource, filter,
Collections.singletonList( listener ) );
@@ -109,5 +114,12 @@
throw new DependencyTreeBuilderException( "Invalid dependency version for artifact "
+ project.getArtifact() );
}
+ }
+
+ // protected methods ------------------------------------------------------
+
+ protected ArtifactResolutionResult getArtifactResolutionResult()
+ {
+ return result;
}
}
Modified: maven/shared/trunk/maven-dependency-tree/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-dependency-tree/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java?rev=584176&r1=584175&r2=584176&view=diff
==============================================================================
--- maven/shared/trunk/maven-dependency-tree/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java (original)
+++ maven/shared/trunk/maven-dependency-tree/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java Fri Oct 12 08:05:46 2007
@@ -38,7 +38,6 @@
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
import org.apache.maven.artifact.resolver.ArtifactCollector;
-import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
import org.apache.maven.artifact.resolver.ResolutionNode;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
@@ -57,7 +56,7 @@
{
// fields -----------------------------------------------------------------
- private DependencyTreeBuilder builder;
+ private DefaultDependencyTreeBuilder builder;
private ArtifactRepository artifactRepository;
@@ -76,7 +75,7 @@
{
super.setUp();
- builder = (DependencyTreeBuilder) lookup( DependencyTreeBuilder.ROLE );
+ builder = (DefaultDependencyTreeBuilder) lookup( DependencyTreeBuilder.ROLE );
String repositoryURL = getTestFile( "target/local-repo" ).toURI().toString();
artifactRepository = new DefaultArtifactRepository( "local", repositoryURL, new DefaultRepositoryLayout() );
@@ -107,9 +106,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithDependency() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithDependency() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact childArtifact = createArtifact( "g:a:t:1" );
@@ -132,9 +130,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithTransitiveDependency() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithTransitiveDependency() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact childArtifact = createArtifact( "g:a:t:1" );
@@ -163,9 +160,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithDuplicateDependency() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithDuplicateDependency() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact child1Artifact = createArtifact( "g:a:t:1" );
@@ -201,9 +197,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithConflictDependencyVersionFirstWins() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithConflictDependencyVersionFirstWins() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact nearestArtifact = createArtifact( "g:a:t:1" );
@@ -235,9 +230,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithConflictDependencyVersionLastWins() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithConflictDependencyVersionLastWins() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact childArtifact = createArtifact( "g:a:t:1" );
@@ -269,9 +263,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithConflictDependencyScopeCurrentPom() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithConflictDependencyScopeCurrentPom() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact nearestArtifact = createArtifact( "g:b:t:1:test" );
@@ -294,7 +287,7 @@
// TODO: fix when discussion resolved: http://www.mail-archive.com/dev@maven.apache.org/msg68011.html
/*
- public void testProjectWithConflictDependencyScope() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithConflictDependencyScope() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact childArtifact = createArtifact( "g:a:t:1" );
@@ -334,7 +327,7 @@
// TODO: fix when discussion resolved: http://www.mail-archive.com/dev@maven.apache.org/msg68011.html
/*
- public void testProjectWithConflictDependencyScopeReversedOrder() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithConflictDependencyScopeReversedOrder() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact childArtifact = createArtifact( "g:a:t:1" );
@@ -373,9 +366,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithManagedTransitiveDependencyVersion() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithManagedTransitiveDependencyVersion() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact childArtifact = createArtifact( "g:a:t:1" );
@@ -406,9 +398,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithManagedTransitiveDependencyScope() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithManagedTransitiveDependencyScope() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact childArtifact = createArtifact( "g:a:t:1" );
@@ -440,9 +431,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithManagedTransitiveDependencyVersionAndScope() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithManagedTransitiveDependencyVersionAndScope() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact childArtifact = createArtifact( "g:a:t:1" );
@@ -476,9 +466,8 @@
* </pre>
*
* @throws DependencyTreeBuilderException
- * @throws ArtifactResolutionException
*/
- public void testProjectWithManagedTransitiveDependencyVersionAndConflictDependencyVersion() throws DependencyTreeBuilderException, ArtifactResolutionException
+ public void testProjectWithManagedTransitiveDependencyVersionAndConflictDependencyVersion() throws DependencyTreeBuilderException
{
Artifact projectArtifact = createArtifact( "g:p:t:1" );
Artifact nearestArtifact = createArtifact( "g:a:t:1" );
@@ -594,12 +583,12 @@
return artifact.getGroupId() + ":" + artifact.getArtifactId() + ":" + artifact.getType() + (artifact.getClassifier() != null ? ":" + artifact.getClassifier() : "");
}
- private void assertDependencyTree( DependencyNode expectedRootNode, MavenProject project ) throws DependencyTreeBuilderException, ArtifactResolutionException
+ private void assertDependencyTree( DependencyNode expectedRootNode, MavenProject project ) throws DependencyTreeBuilderException
{
assertDependencyTree( expectedRootNode, project, null );
}
- private void assertDependencyTree( DependencyNode expectedRootNode, MavenProject project, ArtifactFilter artifactFilter ) throws DependencyTreeBuilderException, ArtifactResolutionException
+ private void assertDependencyTree( DependencyNode expectedRootNode, MavenProject project, ArtifactFilter artifactFilter ) throws DependencyTreeBuilderException
{
// assert built dependency tree is as expected
@@ -611,17 +600,9 @@
// assert resolution tree is as expected
- ArtifactResolutionResult result = collect( project, artifactFilter );
+ ArtifactResolutionResult result = builder.getArtifactResolutionResult();
assertTreeEquals( expectedRootNode, project, result );
- }
-
- private ArtifactResolutionResult collect( MavenProject project, ArtifactFilter artifactFilter ) throws ArtifactResolutionException
- {
- return artifactCollector.collect( project.getDependencyArtifacts(), project.getArtifact(),
- project.getManagedVersionMap(), artifactRepository,
- project.getRemoteArtifactRepositories(), artifactMetadataSource,
- artifactFilter, Collections.EMPTY_LIST );
}
private void assertTreeEquals( DependencyNode dependencyNode, MavenProject project, ArtifactResolutionResult resolutionResult )