001 package org.apache.maven.repository.metadata;
002
003 import org.apache.maven.repository.metadata.GraphConflictResolutionPolicy;
004 import org.apache.maven.repository.metadata.MetadataGraphEdge;
005 import org.codehaus.plexus.PlexusTestCase;
006
007 /**
008 *
009 * @author <a href="mailto:oleg@codehaus.org">Oleg Gusakov</a>
010 *
011 */
012
013 public class DefaultGraphConflictResolutionPolicyTest
014 extends PlexusTestCase
015 {
016 GraphConflictResolutionPolicy policy;
017 MetadataGraphEdge e1;
018 MetadataGraphEdge e2;
019 MetadataGraphEdge e3;
020 //------------------------------------------------------------------------------------------
021 @Override
022 protected void setUp() throws Exception
023 {
024 super.setUp();
025 policy = (GraphConflictResolutionPolicy) lookup( GraphConflictResolutionPolicy.ROLE, "default" );
026 e1 = new MetadataGraphEdge( "1.1", true, null, null, 2, 1 );
027 e2 = new MetadataGraphEdge( "1.2", true, null, null, 3, 2 );
028 e3 = new MetadataGraphEdge( "1.2", true, null, null, 2, 3 );
029 }
030 //------------------------------------------------------------------------------------------
031 public void testDefaultPolicy()
032 throws Exception
033 {
034 MetadataGraphEdge res;
035
036 res = policy.apply( e1, e2 );
037 assertEquals( "Wrong depth edge selected", "1.1", res.getVersion() );
038
039 res = policy.apply( e1, e3 );
040 assertEquals( "Wrong version edge selected", "1.2", res.getVersion() );
041 }
042 //------------------------------------------------------------------------------------------
043 //------------------------------------------------------------------------------------------
044 }