|
|
@@ -26,33 +26,33 @@ import com.opensymphony.xwork2.inject.Container; |
|
|
|
import com.opensymphony.xwork2.util.ValueStack; |
|
|
|
import com.opensymphony.xwork2.util.ValueStackFactory; |
|
|
|
import junit.framework.TestCase; |
|
|
|
import org.apache.archiva.common.ArchivaException; |
|
|
|
import org.apache.archiva.common.plexusbridge.PlexusSisuBridge; |
|
|
|
import org.apache.archiva.configuration.ArchivaConfiguration; |
|
|
|
import org.apache.archiva.configuration.Configuration; |
|
|
|
import org.apache.archiva.configuration.ManagedRepositoryConfiguration; |
|
|
|
import org.apache.archiva.metadata.model.ProjectVersionMetadata; |
|
|
|
import org.apache.archiva.metadata.repository.RepositorySession; |
|
|
|
import org.apache.archiva.test.utils.ArchivaSpringJUnit4ClassRunner; |
|
|
|
import org.apache.archiva.webtest.memory.TestMetadataResolver; |
|
|
|
import org.apache.archiva.webtest.memory.TestRepositorySessionFactory; |
|
|
|
import org.apache.archiva.common.ArchivaException; |
|
|
|
import org.apache.archiva.configuration.ArchivaConfiguration; |
|
|
|
import org.apache.archiva.configuration.Configuration; |
|
|
|
import org.apache.archiva.configuration.ManagedRepositoryConfiguration; |
|
|
|
import org.apache.maven.artifact.Artifact; |
|
|
|
import org.apache.maven.artifact.factory.ArtifactFactory; |
|
|
|
import org.junit.Before; |
|
|
|
import org.junit.Test; |
|
|
|
import org.junit.runner.RunWith; |
|
|
|
import org.sonatype.aether.artifact.Artifact; |
|
|
|
import org.sonatype.aether.util.artifact.DefaultArtifact; |
|
|
|
import org.springframework.context.ApplicationContext; |
|
|
|
import org.springframework.test.context.ContextConfiguration; |
|
|
|
|
|
|
|
import java.util.List; |
|
|
|
import javax.inject.Inject; |
|
|
|
import org.apache.archiva.test.utils.ArchivaSpringJUnit4ClassRunner; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
import static org.mockito.Mockito.mock; |
|
|
|
import static org.mockito.Mockito.when; |
|
|
|
|
|
|
|
@RunWith( ArchivaSpringJUnit4ClassRunner.class ) |
|
|
|
@ContextConfiguration( locations = {"classpath*:/META-INF/spring-context.xml", "classpath:/spring-context.xml", |
|
|
|
"classpath:/spring-context-DependencyTreeTest.xml"} ) |
|
|
|
@ContextConfiguration( locations = { "classpath*:/META-INF/spring-context.xml", "classpath:/spring-context.xml", |
|
|
|
"classpath:/spring-context-DependencyTreeTest.xml" } ) |
|
|
|
public class DependencyTreeTest |
|
|
|
extends TestCase |
|
|
|
{ |
|
|
@@ -65,7 +65,6 @@ public class DependencyTreeTest |
|
|
|
@Inject |
|
|
|
private ApplicationContext applicationContext; |
|
|
|
|
|
|
|
private ArtifactFactory artifactFactory; |
|
|
|
|
|
|
|
private static final String TEST_VERSION = "version"; |
|
|
|
|
|
|
@@ -103,8 +102,6 @@ public class DependencyTreeTest |
|
|
|
ArchivaConfiguration archivaConfiguration = applicationContext.getBean( ArchivaConfiguration.class ); |
|
|
|
archivaConfiguration.save( configuration ); |
|
|
|
|
|
|
|
artifactFactory = plexusSisuBridge.lookup( ArtifactFactory.class ); |
|
|
|
|
|
|
|
TestMetadataResolver metadataResolver = applicationContext.getBean( TestMetadataResolver.class ); |
|
|
|
ProjectVersionMetadata metadata = new ProjectVersionMetadata(); |
|
|
|
metadata.setId( TEST_VERSION ); |
|
|
@@ -126,52 +123,67 @@ public class DependencyTreeTest |
|
|
|
|
|
|
|
DependencyTree.TreeEntry artifactId = entries.get( 0 ); |
|
|
|
assertEquals( "<ul><li>", artifactId.getPre() ); |
|
|
|
assertEquals( createPomArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ), artifactId.getArtifact() ); |
|
|
|
// olamy tree with aether always create jar so createPomArtifact failed but it's not used |
|
|
|
assertTrue( assertArtifactsEquals( createArtifact( TEST_GROUP_ID, TEST_ARTIFACT_ID, TEST_VERSION ), |
|
|
|
artifactId.getArtifact() ) ); |
|
|
|
assertEquals( "</li>", artifactId.getPost() ); |
|
|
|
|
|
|
|
DependencyTree.TreeEntry child1 = entries.get( 1 ); |
|
|
|
assertEquals( "<ul><li>", child1.getPre() ); |
|
|
|
assertEquals( createArtifact( TEST_GROUP_ID, "child1", "1.0" ), child1.getArtifact() ); |
|
|
|
assertTrue( assertArtifactsEquals( createArtifact( TEST_GROUP_ID, "child1", "1.0" ), child1.getArtifact() ) ); |
|
|
|
assertEquals( "</li>", child1.getPost() ); |
|
|
|
|
|
|
|
DependencyTree.TreeEntry grandchild = entries.get( 2 ); |
|
|
|
assertEquals( "<ul><li>", grandchild.getPre() ); |
|
|
|
assertEquals( createArtifact( TEST_GROUP_ID, "grandchild1", "2.0" ), grandchild.getArtifact() ); |
|
|
|
assertTrue( |
|
|
|
assertArtifactsEquals( createArtifact( TEST_GROUP_ID, "grandchild1", "2.0" ), grandchild.getArtifact() ) ); |
|
|
|
assertEquals( "</li>", grandchild.getPost() ); |
|
|
|
|
|
|
|
DependencyTree.TreeEntry greatGrandchild = entries.get( 3 ); |
|
|
|
assertEquals( "<ul><li>", greatGrandchild.getPre() ); |
|
|
|
assertEquals( createArtifact( TEST_GROUP_ID, "great-grandchild", "3.0" ), greatGrandchild.getArtifact() ); |
|
|
|
assertTrue( assertArtifactsEquals( createArtifact( TEST_GROUP_ID, "great-grandchild", "3.0" ), |
|
|
|
greatGrandchild.getArtifact() ) ); |
|
|
|
assertEquals( "</li></ul></ul>", greatGrandchild.getPost() ); |
|
|
|
|
|
|
|
DependencyTree.TreeEntry child2 = entries.get( 4 ); |
|
|
|
assertEquals( "<li>", child2.getPre() ); |
|
|
|
assertEquals( createArtifact( TEST_GROUP_ID, "child2", "1.0" ), child2.getArtifact() ); |
|
|
|
assertTrue( assertArtifactsEquals( createArtifact( TEST_GROUP_ID, "child2", "1.0" ), child2.getArtifact() ) ); |
|
|
|
assertEquals( "</li>", child2.getPost() ); |
|
|
|
|
|
|
|
DependencyTree.TreeEntry grandchild2 = entries.get( 5 ); |
|
|
|
assertEquals( "<ul><li>", grandchild2.getPre() ); |
|
|
|
assertEquals( createArtifact( TEST_GROUP_ID, "grandchild2", "2.0" ), grandchild2.getArtifact() ); |
|
|
|
assertTrue( |
|
|
|
assertArtifactsEquals( createArtifact( TEST_GROUP_ID, "grandchild2", "2.0" ), grandchild2.getArtifact() ) ); |
|
|
|
assertEquals( "</li>", grandchild2.getPost() ); |
|
|
|
|
|
|
|
DependencyTree.TreeEntry grandchild3 = entries.get( 6 ); |
|
|
|
assertEquals( "<li>", grandchild3.getPre() ); |
|
|
|
assertEquals( createArtifact( TEST_GROUP_ID, "grandchild3", "2.0" ), grandchild3.getArtifact() ); |
|
|
|
assertTrue( |
|
|
|
assertArtifactsEquals( createArtifact( TEST_GROUP_ID, "grandchild3", "2.0" ), grandchild3.getArtifact() ) ); |
|
|
|
assertEquals( "</li></ul>", grandchild3.getPost() ); |
|
|
|
|
|
|
|
DependencyTree.TreeEntry child3 = entries.get( 7 ); |
|
|
|
assertEquals( "<li>", child3.getPre() ); |
|
|
|
assertEquals( createArtifact( TEST_GROUP_ID, "child3", "1.0" ), child3.getArtifact() ); |
|
|
|
assertTrue( assertArtifactsEquals( createArtifact( TEST_GROUP_ID, "child3", "1.0" ), child3.getArtifact() ) ); |
|
|
|
assertEquals( "</li></ul></ul>", child3.getPost() ); |
|
|
|
} |
|
|
|
|
|
|
|
private Artifact createPomArtifact( String groupId, String artifactId, String version ) |
|
|
|
{ |
|
|
|
return artifactFactory.createProjectArtifact( groupId, artifactId, version ); |
|
|
|
return new DefaultArtifact( groupId + ":" + artifactId + ":" + version ); |
|
|
|
} |
|
|
|
|
|
|
|
private Artifact createArtifact( String groupId, String artifactId, String version ) |
|
|
|
{ |
|
|
|
return artifactFactory.createBuildArtifact( groupId, artifactId, version, "jar" ); |
|
|
|
return new DefaultArtifact( groupId, artifactId, "jar", version ); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public boolean assertArtifactsEquals( Artifact a, Artifact b ) |
|
|
|
{ |
|
|
|
return a.getArtifactId().equals( b.getArtifactId() ) && a.getGroupId().equals( b.getGroupId() ) |
|
|
|
&& a.getVersion().equals( b.getVersion() ) && a.getExtension().equals( b.getExtension() ) |
|
|
|
&& a.getClassifier().equals( b.getClassifier() ); |
|
|
|
} |
|
|
|
|
|
|
|
} |