Modified: 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
URL: 
http://svn.apache.org/viewvc/maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java?view=diff&rev=527649&r1=527648&r2=527649
==============================================================================
--- 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
 (original)
+++ 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/EffectiveProjectModelFilterTest.java
 Wed Apr 11 13:26:34 2007
@@ -22,18 +22,21 @@
 import org.apache.maven.archiva.model.ArchivaProjectModel;
 import org.apache.maven.archiva.model.ArchivaRepository;
 import org.apache.maven.archiva.model.Dependency;
+import org.apache.maven.archiva.model.DependencyTree;
+import org.apache.maven.archiva.model.Individual;
 import org.apache.maven.archiva.repository.project.ProjectModelException;
 import org.apache.maven.archiva.repository.project.ProjectModelFilter;
 import org.apache.maven.archiva.repository.project.ProjectModelReader;
 import org.apache.maven.archiva.repository.project.ProjectModelResolver;
-import 
org.apache.maven.archiva.repository.project.filters.EffectiveProjectModelFilter;
 import 
org.apache.maven.archiva.repository.project.readers.ProjectModel400Reader;
 import 
org.apache.maven.archiva.repository.project.resolvers.RepositoryProjectResolver;
 import org.codehaus.plexus.PlexusTestCase;
 
 import java.io.File;
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
+import java.util.Map;
 
 /**
  * EffectiveProjectModelFilterTest 
@@ -45,8 +48,9 @@
     extends PlexusTestCase
 {
     private static final String DEFAULT_REPOSITORY = 
"src/test/repositories/default-repository";
-    
-    private EffectiveProjectModelFilter lookupEffective() throws Exception
+
+    private EffectiveProjectModelFilter lookupEffective()
+        throws Exception
     {
         return (EffectiveProjectModelFilter) lookup( ProjectModelFilter.class, 
"effective" );
     }
@@ -77,7 +81,7 @@
         throws Exception
     {
         EffectiveProjectModelFilter filter = lookupEffective();
-        
+
         filter.addProjectModelResolver( createDefaultRepositoryResolver() );
 
         ArchivaProjectModel startModel = createArchivaProjectModel( 
DEFAULT_REPOSITORY
@@ -95,33 +99,42 @@
     {
         assertEquals( "Equivalent Models", expectedModel, effectiveModel );
 
-        assertContainsSame( "Individuals", expectedModel.getIndividuals(), 
effectiveModel.getIndividuals() );
-        dumpDependencyList( "Expected", expectedModel.getDependencies() );
-        dumpDependencyList( "Effective", effectiveModel.getDependencies() );
-        assertContainsSame( "Dependencies", expectedModel.getDependencies(), 
effectiveModel.getDependencies() );
-        assertContainsSame( "DependencyManagement", 
expectedModel.getDependencyManagement(), effectiveModel
+        assertContainsSameIndividuals( "Individuals", 
expectedModel.getIndividuals(), effectiveModel.getIndividuals() );
+        dumpDependencyList( "Expected", expectedModel.getDependencyTree() );
+        dumpDependencyList( "Effective", effectiveModel.getDependencyTree() );
+        assertContainsSameDependencies( "Dependencies", 
expectedModel.getDependencyTree().getDependencyNodes(),
+                                        
effectiveModel.getDependencyTree().getDependencyNodes() );
+        assertContainsSameDependencies( "DependencyManagement", 
expectedModel.getDependencyManagement(), effectiveModel
             .getDependencyManagement() );
     }
-    
-    private void dumpDependencyList( String type, List deps )
+
+    private void dumpDependencyList( String type, DependencyTree tree )
     {
+        if ( tree == null )
+        {
+            System.out.println( " Tree [" + type + "] is null." );
+            return;
+        }
+
+        if ( tree.getDependencyNodes() == null )
+        {
+            System.out.println( " Tree [" + type + "] dependency list (nodes) 
is null." );
+            return;
+        }
+
+        List deps = tree.getDependencyNodes();
+
         System.out.println( ".\\ [" + type + "] Dependency List (size:" + 
deps.size() + ") \\.________________" );
         Iterator it = deps.iterator();
         while ( it.hasNext() )
         {
             Dependency dep = (Dependency) it.next();
-            System.out.println( "  " + toDependencyKey( dep ) );
+            System.out.println( "  " + Dependency.toKey( dep ) );
         }
         System.out.println( "" );
     }
-    
-    private String toDependencyKey( Dependency dep )
-    {
-        return "[" + dep.getGroupId() + ":" + dep.getArtifactId() + ":" + 
dep.getVersion() + ":" + dep.getClassifier()
-            + ":" + dep.getType() + "]";
-    }
 
-    private void assertContainsSame( String listId, List expectedList, List 
effectiveList )
+    private void assertEquivalentLists( String listId, List expectedList, List 
effectiveList )
     {
         if ( ( expectedList == null ) && ( effectiveList == null ) )
         {
@@ -139,12 +152,69 @@
         }
 
         assertEquals( "[" + listId + "] List Size", expectedList.size(), 
expectedList.size() );
+    }
+
+    private void assertContainsSameIndividuals( String listId, List 
expectedList, List effectiveList )
+    {
+        assertEquivalentLists( listId, expectedList, effectiveList );
+
+        Map expectedMap = getIndividualsMap( expectedList );
+        Map effectiveMap = getIndividualsMap( effectiveList );
+
+        Iterator it = expectedMap.keySet().iterator();
+        while ( it.hasNext() )
+        {
+            String key = (String) it.next();
 
-        Iterator it = expectedList.iterator();
+            assertTrue( "Should exist in Effective [" + listId + "] list: " + 
key, effectiveMap.containsKey( key ) );
+        }
+    }
+
+    private void assertContainsSameDependencies( String listId, List 
expectedList, List effectiveList )
+    {
+        assertEquivalentLists( listId, expectedList, effectiveList );
+
+        Map expectedMap = getDependencyMap( expectedList );
+        Map effectiveMap = getDependencyMap( effectiveList );
+
+        Iterator it = expectedMap.keySet().iterator();
+        while ( it.hasNext() )
+        {
+            String key = (String) it.next();
+
+            assertTrue( "Should exist in Effective [" + listId + "] list: " + 
key, effectiveMap.containsKey( key ) );
+        }
+    }
+
+    private Map getIndividualsMap( List deps )
+    {
+        Map map = new HashMap();
+        Iterator it = deps.iterator();
+        while ( it.hasNext() )
+        {
+            Object o = it.next();
+            assertTrue( "List contains Individual entries. (found " + 
o.getClass().getName() + " instead)",
+                        o instanceof Individual );
+            Individual individual = (Individual) o;
+            String key = individual.getEmail();
+            map.put( key, individual );
+        }
+        return map;
+    }
+
+    private Map getDependencyMap( List deps )
+    {
+        Map map = new HashMap();
+        Iterator it = deps.iterator();
         while ( it.hasNext() )
         {
             Object o = it.next();
-            assertTrue( "Should exist in Effective [" + listId + "] list: " + 
o, effectiveList.contains( o ) );
+            assertTrue( "List contains Dependency entries. (found " + 
o.getClass().getName() + " instead)",
+                        o instanceof Dependency );
+            Dependency dep = (Dependency) o;
+            String key = Dependency.toVersionlessKey( dep );
+            map.put( key, dep );
         }
+        return map;
     }
 }

Modified: 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionExpanderTest.java
URL: 
http://svn.apache.org/viewvc/maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionExpanderTest.java?view=diff&rev=527649&r1=527648&r2=527649
==============================================================================
--- 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionExpanderTest.java
 (original)
+++ 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/filters/ProjectModelExpressionExpanderTest.java
 Wed Apr 11 13:26:34 2007
@@ -21,6 +21,7 @@
 
 import org.apache.maven.archiva.model.ArchivaProjectModel;
 import org.apache.maven.archiva.model.Dependency;
+import org.apache.maven.archiva.model.DependencyTree;
 import org.apache.maven.archiva.repository.project.ProjectModelFilter;
 import org.codehaus.plexus.PlexusTestCase;
 
@@ -48,10 +49,14 @@
         model.setArtifactId( "archiva-test-project" );
         model.setVersion( "1.0-SNAPSHOT" );
 
-        model.addDependency( createDependency( "org.apache.maven.archiva", 
"archiva-model", "${archiva.version}" ) );
-        model.addDependency( createDependency( "org.apache.maven.archiva", 
"archiva-common", "${archiva.version}" ) );
-        model.addDependency( createDependency( "org.apache.maven.archiva", 
"archiva-indexer", "${archiva.version}" ) );
+        DependencyTree depTree = new DependencyTree();
+        
+        depTree.addDependencyEdge( model.asDependency(), createDependency( 
"org.apache.maven.archiva", "archiva-model", "${archiva.version}" ) );
+        depTree.addDependencyEdge( model.asDependency(), createDependency( 
"org.apache.maven.archiva", "archiva-common", "${archiva.version}" ) );
+        depTree.addDependencyEdge( model.asDependency(), createDependency( 
"org.apache.maven.archiva", "archiva-indexer", "${archiva.version}" ) );
 
+        model.setDependencyTree( depTree );
+        
         model.addProperty( "archiva.version", "1.0-SNAPSHOT" );
 
         ProjectModelExpressionFilter filter = lookupExpression();
@@ -62,10 +67,11 @@
         assertEquals( "Group ID", "org.apache.maven.archiva", 
model.getGroupId() );
         assertEquals( "Artifact ID", "archiva-test-project", 
model.getArtifactId() );
         assertEquals( "Version", "1.0-SNAPSHOT", model.getVersion() );
-        assertNotNull( "Dependencies", model.getDependencies() );
-        assertEquals( "Dependencies Size", 3, model.getDependencies().size() );
+        assertNotNull( "DependencyTree", model.getDependencyTree() );
+        assertNotNull( "DependencyTree.dependencies", 
model.getDependencyTree().getDependencyNodes() );
+        assertEquals( "Dependencies Size", 4, 
model.getDependencyTree().getDependencyNodes().size() );
 
-        Iterator it = model.getDependencies().iterator();
+        Iterator it = 
model.getDependencyTree().getDependencyNodes().iterator();
         while ( it.hasNext() )
         {
             Dependency dep = (Dependency) it.next();
@@ -82,6 +88,7 @@
         dep.setGroupId( groupId );
         dep.setArtifactId( artifactId );
         dep.setVersion( version );
+        dep.setTransitive( false );
 
         return dep;
     }

Modified: 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java
URL: 
http://svn.apache.org/viewvc/maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java?view=diff&rev=527649&r1=527648&r2=527649
==============================================================================
--- 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java
 (original)
+++ 
maven/archiva/branches/archiva-jpox-database-refactor/archiva-base/archiva-repository-layer/src/test/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400ReaderTest.java
 Wed Apr 11 13:26:34 2007
@@ -63,8 +63,9 @@
         assertEquals( "Parent Artifact ID", "maven-shared-components", 
parentRef.getArtifactId() );
         assertEquals( "Parent Version", "4", parentRef.getVersion() );
 
-        assertNotNull( "Dependencies", project.getDependencies() );
-        assertEquals( "Dependencies.size", 3, project.getDependencies().size() 
);
+        assertNotNull( "DependencyTree", project.getDependencyTree() );
+        assertNotNull( "DependencyTree.dependencies", 
project.getDependencyTree().getDependencyNodes() );
+        assertEquals( "Dependencies.size", 3, 
project.getDependencyTree().getDependencyNodes().size() );
     }
 
     public void testLoadWithNamespace()
@@ -92,7 +93,8 @@
         assertEquals( "Parent Artifact ID", "archiva-base", 
parentRef.getArtifactId() );
         assertEquals( "Parent Version", "1.0-SNAPSHOT", parentRef.getVersion() 
);
         
-        assertNotNull( "Dependencies", project.getDependencies() );
-        assertEquals( "Dependencies.size", 6, project.getDependencies().size() 
);
+        assertNotNull( "DependencyTree", project.getDependencyTree() );
+        assertNotNull( "DependencyTree.dependencies", 
project.getDependencyTree().getDependencyNodes() );
+        assertEquals( "Dependencies.size", 6, 
project.getDependencyTree().getDependencyNodes().size() );
     }
 }


Reply via email to