1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.shared.artifact.filter.collection;
20
21 import java.util.Set;
22
23 import org.apache.maven.artifact.Artifact;
24 import org.apache.maven.plugin.testing.ArtifactStubFactory;
25 import org.junit.Before;
26 import org.junit.Test;
27
28 import static org.junit.Assert.*;
29
30
31
32
33 public class TestProjectTransitivityFilter {
34 Set<Artifact> artifacts;
35
36 Set<Artifact> directArtifacts;
37
38 Set<Artifact> classifiedArtifacts;
39
40 @Before
41 public void setUp() throws Exception {
42 ArtifactStubFactory fact = new ArtifactStubFactory(null, false);
43 artifacts = fact.getScopedArtifacts();
44 directArtifacts = fact.getReleaseAndSnapshotArtifacts();
45 classifiedArtifacts = fact.getClassifiedArtifacts();
46 artifacts.addAll(directArtifacts);
47 artifacts.addAll(classifiedArtifacts);
48 }
49
50 @Test
51 public void testAll() {
52 ProjectTransitivityFilter filter = new ProjectTransitivityFilter(directArtifacts, false);
53 Set<Artifact> result = filter.filter(artifacts);
54 assertEquals(11, result.size());
55 }
56
57 @Test
58 public void testExclude() {
59 ProjectTransitivityFilter filter = new ProjectTransitivityFilter(directArtifacts, false);
60 assertFalse(filter.isExcludeTransitive());
61 filter.setExcludeTransitive(true);
62 assertTrue(filter.isExcludeTransitive());
63 Set<Artifact> result = filter.filter(artifacts);
64
65 assertEquals(2, result.size());
66
67 for (Artifact artifact : result) {
68 assertTrue(artifact.getArtifactId().equals("release")
69 || artifact.getArtifactId().equals("snapshot"));
70 }
71 }
72
73 @Test
74 public void testClassified() {
75 ProjectTransitivityFilter filter = new ProjectTransitivityFilter(classifiedArtifacts, true);
76 Set<Artifact> result = filter.filter(artifacts);
77 assertEquals(4, result.size());
78 }
79 }