You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2006/07/27 03:00:04 UTC
svn commit: r425924 -
/maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssemblerTest.java
Author: jdcasey
Date: Wed Jul 26 18:00:03 2006
New Revision: 425924
URL: http://svn.apache.org/viewvc?rev=425924&view=rev
Log:
[MNG-2314] Added unit tests to verify that this issue cannot be reproduced.
Modified:
maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssemblerTest.java
Modified: maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssemblerTest.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssemblerTest.java?rev=425924&r1=425923&r2=425924&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssemblerTest.java (original)
+++ maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssemblerTest.java Wed Jul 26 18:00:03 2006
@@ -18,6 +18,8 @@
import junit.framework.TestCase;
import org.apache.maven.model.Build;
+import org.apache.maven.model.Dependency;
+import org.apache.maven.model.DependencyManagement;
import org.apache.maven.model.DeploymentRepository;
import org.apache.maven.model.DistributionManagement;
import org.apache.maven.model.Model;
@@ -47,6 +49,85 @@
extends TestCase
{
private ModelInheritanceAssembler assembler = new DefaultModelInheritanceAssembler();
+
+ public void testShouldMergeSuccessiveDependencyManagementSectionsOverThreeLevels()
+ {
+ Model top = makeBaseModel( "top" );
+
+ DependencyManagement topMgmt = new DependencyManagement();
+
+ topMgmt.addDependency( makeDep( "top-dep" ) );
+
+ top.setDependencyManagement( topMgmt );
+
+ Model mid = makeBaseModel( "mid" );
+
+ DependencyManagement midMgmt = new DependencyManagement();
+
+ midMgmt.addDependency( makeDep( "mid-dep" ) );
+
+ mid.setDependencyManagement( midMgmt );
+
+ Model bottom = makeBaseModel( "bottom" );
+
+ DependencyManagement bottomMgmt = new DependencyManagement();
+
+ bottomMgmt.addDependency( makeDep( "bottom-dep" ) );
+
+ bottom.setDependencyManagement( bottomMgmt );
+
+ assembler.assembleModelInheritance( mid, top );
+
+ assembler.assembleModelInheritance( bottom, mid );
+
+ DependencyManagement result = bottom.getDependencyManagement();
+
+ List resultDeps = result.getDependencies();
+
+ assertEquals( 3, resultDeps.size() );
+ }
+
+ public void testShouldMergeDependencyManagementSectionsFromTopTwoLevelsToBottomLevel()
+ {
+ Model top = makeBaseModel( "top" );
+
+ DependencyManagement topMgmt = new DependencyManagement();
+
+ topMgmt.addDependency( makeDep( "top-dep" ) );
+
+ top.setDependencyManagement( topMgmt );
+
+ Model mid = makeBaseModel( "mid" );
+
+ DependencyManagement midMgmt = new DependencyManagement();
+
+ midMgmt.addDependency( makeDep( "mid-dep" ) );
+
+ mid.setDependencyManagement( midMgmt );
+
+ Model bottom = makeBaseModel( "bottom" );
+
+ assembler.assembleModelInheritance( mid, top );
+
+ assembler.assembleModelInheritance( bottom, mid );
+
+ DependencyManagement result = bottom.getDependencyManagement();
+
+ List resultDeps = result.getDependencies();
+
+ assertEquals( 2, resultDeps.size() );
+ }
+
+ private Dependency makeDep( String artifactId )
+ {
+ Dependency dep = new Dependency();
+
+ dep.setGroupId( "maven" );
+ dep.setArtifactId( artifactId );
+ dep.setVersion( "1.0" );
+
+ return dep;
+ }
public void testShouldAppendChildPathAdjustmentWithNoChildPartAndNoParentPart()
{