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() ); } }
