Author: sisbell Date: Mon Jul 23 01:01:27 2007 New Revision: 558643 URL: http://svn.apache.org/viewvc?view=rev&rev=558643 Log: Fixed bug in retrieving dependencies. Added unit test.
Modified: incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/main/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImpl.java incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/test/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImplTest.java Modified: incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/main/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImpl.java URL: http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/main/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImpl.java?view=diff&rev=558643&r1=558642&r2=558643 ============================================================================== --- incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/main/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImpl.java (original) +++ incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/main/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImpl.java Mon Jul 23 01:01:27 2007 @@ -510,9 +510,12 @@ { ProjectDependency projectDependency = new ProjectDependency(); BindingSet bs = dependencyResult.next(); - projectDependency.setGroupId( bs.getBinding( ProjectUri.GROUP_ID.getObjectBinding() ).toString() ); - projectDependency.setArtifactId( bs.getBinding( ProjectUri.ARTIFACT_ID.getObjectBinding() ).toString() ); - projectDependency.setVersion( bs.getBinding( ProjectUri.VERSION.getObjectBinding() ).toString() ); + projectDependency.setGroupId( + bs.getBinding( ProjectUri.GROUP_ID.getObjectBinding() ).getValue().toString() ); + projectDependency.setArtifactId( + bs.getBinding( ProjectUri.ARTIFACT_ID.getObjectBinding() ).getValue().toString() ); + projectDependency.setVersion( + bs.getBinding( ProjectUri.VERSION.getObjectBinding() ).getValue().toString() ); projectDependencies.add( projectDependency ); if ( bs.hasBinding( ProjectUri.DEPENDENCY.getObjectBinding() ) ) Modified: incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/test/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImplTest.java URL: http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/test/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImplTest.java?view=diff&rev=558643&r1=558642&r2=558643 ============================================================================== --- incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/test/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImplTest.java (original) +++ incubator/nmaven/branches/SI_GAC/components/dotnet-dao/project/src/test/java/org/apache/maven/dotnet/dao/impl/ProjectDaoImplTest.java Mon Jul 23 01:01:27 2007 @@ -3,6 +3,7 @@ import junit.framework.TestCase; import java.io.File; +import java.io.IOException; import java.util.Set; import java.util.HashSet; import java.util.ArrayList; @@ -91,6 +92,61 @@ return false; } + private boolean hasDependency( String groupId, String artifactId, String version, + Set<ProjectDependency> projectDependencies ) + { + for ( ProjectDependency projectDependency : projectDependencies ) + { + if ( projectDependency.getGroupId().equals( groupId ) && + projectDependency.getArtifactId().equals( artifactId ) && + projectDependency.getVersion().equals( version ) ) + { + return true; + } + } + return false; + } + + public void testStoreDependency() + { + ProjectDao dao = this.createProjectDao(); + + Project project1 = new Project(); + project1.setGroupId( "NMaven" ); + project1.setArtifactId( "NMaven.Plugin" ); + project1.setVersion( "0.14.0.0" ); + + project1.addProjectDependency( this.createProjectDependency( "NMaven", "NMaven.Test", "1.0.0" ) ); + + try + { + dao.storeProjectAndResolveDependencies( project1, new ArrayList<ArtifactRepository>() ); + } + catch ( java.io.IOException e ) + { + e.printStackTrace(); + fail( "Could not store the project: " + e.getMessage() ); + } + + Project testProject = null; + try + { + testProject = dao.getProjectFor( "NMaven", "NMaven.Plugin", "0.14.0.0", null, null ); + } + catch ( IOException e ) + { + e.printStackTrace(); + fail( "Could not retrieve the project: " + e.getMessage() ); + } + + Set<ProjectDependency> projectDependencies = testProject.getProjectDependencies(); + assertEquals( "Incorrect number of dependencies", 1, projectDependencies.size() ); + ProjectDependency projectDependency = (ProjectDependency) projectDependencies.toArray()[0]; + assertTrue( "Could not find required dependency. Found Dependency: GroupId = " + + projectDependency.getGroupId() + ", Artifact Id = " + projectDependency.getArtifactId(), + this.hasDependency( "NMaven", "NMaven.Test", "1.0.0", projectDependencies ) ); + } + public void testSingleStore() { ProjectDao dao = this.createProjectDao(); @@ -252,7 +308,6 @@ File dataDir = new File( basedir, ( "/target/rdf-repos/rdf-repo-" + System.currentTimeMillis() ) ); org.openrdf.repository.Repository rdfRepository = new SailRepository( new MemoryStoreRDFSInferencer( new MemoryStore( dataDir ) ) ); - // new SailRepository( new MemoryStoreRDFSInferencer( new MemoryStore( dataDir ) ) ); try { rdfRepository.initialize();