1 package org.eclipse.aether.util.graph.traverser;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import static org.junit.Assert.*;
23
24 import java.util.Collections;
25 import java.util.Map;
26
27 import org.eclipse.aether.RepositorySystemSession;
28 import org.eclipse.aether.artifact.ArtifactProperties;
29 import org.eclipse.aether.artifact.DefaultArtifact;
30 import org.eclipse.aether.collection.DependencyCollectionContext;
31 import org.eclipse.aether.collection.DependencyTraverser;
32 import org.eclipse.aether.graph.Dependency;
33 import org.eclipse.aether.internal.test.util.TestFileUtils;
34 import org.eclipse.aether.internal.test.util.TestUtils;
35 import org.junit.After;
36 import org.junit.Before;
37 import org.junit.Test;
38
39 public class FatArtifactTraverserTest
40 {
41
42 private RepositorySystemSession session;
43 private DependencyCollectionContext context;
44
45 @Before
46 public void setup()
47 {
48 session = TestUtils.newSession();
49 context = TestUtils.newCollectionContext( session, null, Collections.emptyList() );
50 }
51
52 @After
53 public void teardown() throws Exception
54 {
55 if ( session.getLocalRepository() != null )
56 {
57 TestFileUtils.deleteFile( session.getLocalRepository().getBasedir() );
58 }
59 session = null;
60 context = null;
61 }
62
63 @Test
64 public void testTraverseDependency()
65 {
66 DependencyTraverser traverser = new FatArtifactTraverser();
67 Map<String, String> props = null;
68 assertTrue( traverser.traverseDependency( new Dependency( new DefaultArtifact( "g:a:v:1", props ), "test" ) ) );
69 props = Collections.singletonMap( ArtifactProperties.INCLUDES_DEPENDENCIES, "false" );
70 assertTrue( traverser.traverseDependency( new Dependency( new DefaultArtifact( "g:a:v:1", props ), "test" ) ) );
71 props = Collections.singletonMap( ArtifactProperties.INCLUDES_DEPENDENCIES, "unrecognized" );
72 assertTrue( traverser.traverseDependency( new Dependency( new DefaultArtifact( "g:a:v:1", props ), "test" ) ) );
73 props = Collections.singletonMap( ArtifactProperties.INCLUDES_DEPENDENCIES, "true" );
74 assertFalse( traverser.traverseDependency( new Dependency( new DefaultArtifact( "g:a:v:1", props ), "test" ) ) );
75 }
76
77 @Test
78 public void testDeriveChildTraverser()
79 {
80 DependencyTraverser traverser = new FatArtifactTraverser();
81 assertSame( traverser, traverser.deriveChildTraverser( context ) );
82 }
83
84 @Test
85 public void testEquals()
86 {
87 DependencyTraverser traverser1 = new FatArtifactTraverser();
88 DependencyTraverser traverser2 = new FatArtifactTraverser();
89 assertEquals( traverser1, traverser1 );
90 assertEquals( traverser1, traverser2 );
91 assertNotEquals( traverser1, this );
92 assertNotEquals( traverser1, null );
93 }
94
95 @Test
96 public void testHashCode()
97 {
98 DependencyTraverser traverser1 = new FatArtifactTraverser();
99 DependencyTraverser traverser2 = new FatArtifactTraverser();
100 assertEquals( traverser1.hashCode(), traverser2.hashCode() );
101 }
102
103 }