o Changed commented-out testProjectWithConflictDependencyScope to the behaviour Maven appears to exhibit - real expected outcome is still preserved in comments
o Added commented-out testProjectWithConflictDependencyScopeReversedOrder to fix corrected NPE - cannot uncomment since Maven's internal resolution tree is contradictory to the events it fires
git-svn-id: https://svn.apache.org/repos/asf/maven/shared/trunk@556047 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java b/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java
index c1180e3..38a94e9 100644
--- a/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java
+++ b/src/test/java/org/apache/maven/shared/dependency/tree/DependencyTreeBuilderTest.java
@@ -227,15 +227,57 @@
MavenProject project = createProject( projectArtifact, new Artifact[] { childArtifact } );
+ // TODO: i would have expected this..
+// DependencyNode expectedRootNode = createNode( "g:p:t:1" );
+// DependencyNode childArtifactNode = createNode( "g:a:t:1" );
+// expectedRootNode.addChild( childArtifactNode );
+// DependencyNode nearestArtifactNode = createNode( "g:c:t:1:compile" );
+// nearestArtifactNode.setOriginalScope( "test" );
+// childArtifactNode.addChild( nearestArtifactNode );
+// DependencyNode grandchildArtifactNode = createNode( "g:b:t:1" );
+// childArtifactNode.addChild( grandchildArtifactNode );
+// grandchildArtifactNode.addChild( createNode( "g:c:t:1:compile", DependencyNode.OMITTED_FOR_DUPLICATE, nearestArtifactNode.getArtifact() ) );
+
DependencyNode expectedRootNode = createNode( "g:p:t:1" );
DependencyNode childArtifactNode = createNode( "g:a:t:1" );
expectedRootNode.addChild( childArtifactNode );
- DependencyNode nearestArtifactNode = createNode( "g:c:t:1:compile" );
+ DependencyNode farthestArtifactNode = createNode( "g:c:t:1:compile" );
+ DependencyNode nearestArtifactNode = createNode( "g:c:t:1:compile", DependencyNode.OMITTED_FOR_DUPLICATE, farthestArtifactNode.getArtifact() );
nearestArtifactNode.setOriginalScope( "test" );
childArtifactNode.addChild( nearestArtifactNode );
DependencyNode grandchildArtifactNode = createNode( "g:b:t:1" );
childArtifactNode.addChild( grandchildArtifactNode );
- grandchildArtifactNode.addChild( createNode( "g:c:t:1:compile", DependencyNode.OMITTED_FOR_DUPLICATE, nearestArtifactNode.getArtifact() ) );
+ grandchildArtifactNode.addChild( farthestArtifactNode );
+
+ assertDependencyTree( expectedRootNode, project );
+ }
+ */
+
+ // TODO: fix when discussion resolved: http://www.mail-archive.com/dev@maven.apache.org/msg68011.html
+ /*
+ public void testProjectWithConflictDependencyScopeReversedOrder() throws DependencyTreeBuilderException, ArtifactResolutionException
+ {
+ Artifact projectArtifact = createArtifact( "g:p:t:1" );
+ Artifact childArtifact = createArtifact( "g:a:t:1" );
+ Artifact nearestArtifact = createArtifact( "g:c:t:1:test" );
+ Artifact grandchildArtifact = createArtifact( "g:b:t:1" );
+ Artifact farthestArtifact = createArtifact( "g:c:t:1:compile" );
+ addArtifactMetadata( childArtifact, new Artifact[] { grandchildArtifact, nearestArtifact } );
+ addArtifactMetadata( grandchildArtifact, farthestArtifact );
+
+ MavenProject project = createProject( projectArtifact, new Artifact[] { childArtifact } );
+
+ // TODO: add expected results as per above test method
+ DependencyNode expectedRootNode = createNode( "g:p:t:1" );
+ DependencyNode childArtifactNode = createNode( "g:a:t:1" );
+ expectedRootNode.addChild( childArtifactNode );
+ DependencyNode grandchildArtifactNode = createNode( "g:b:t:1" );
+ childArtifactNode.addChild( grandchildArtifactNode );
+ DependencyNode farthestArtifactNode = createNode( "g:c:t:1:compile" );
+ grandchildArtifactNode.addChild( farthestArtifactNode );
+ DependencyNode nearestArtifactNode = createNode( "g:c:t:1:compile", DependencyNode.OMITTED_FOR_DUPLICATE, farthestArtifactNode.getArtifact() );
+ nearestArtifactNode.setOriginalScope( "test" );
+ childArtifactNode.addChild( nearestArtifactNode );
assertDependencyTree( expectedRootNode, project );
}