1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugins.ear.util;
20
21 import java.util.HashSet;
22 import java.util.Set;
23
24 import org.apache.maven.artifact.Artifact;
25 import org.apache.maven.plugins.ear.AbstractEarTestBase;
26 import org.junit.Test;
27
28 import static org.junit.Assert.assertNotNull;
29 import static org.junit.Assert.assertNull;
30
31
32
33
34 public class ArtifactRepositoryTest extends AbstractEarTestBase {
35
36 private static final String MAIN_ARTIFACT_ID = "none";
37
38 private ArtifactTypeMappingService artifactTypeMappingService = new ArtifactTypeMappingService();
39
40 @Test
41 public void testEmptyRepository() {
42 Set<Artifact> artifacts = new HashSet<>();
43 ArtifactRepository repo = new ArtifactRepository(artifacts, MAIN_ARTIFACT_ID, artifactTypeMappingService);
44 assertNull(repo.getUniqueArtifact("ear", "ar", "jar"));
45 assertNull(repo.getUniqueArtifact("ear", "ar", "jar", null));
46 assertNull(repo.getUniqueArtifact("ear", "ar", "jar", "class"));
47 }
48
49 @Test
50 public void testRepositoryWithOneUnclassifiedArtifact() {
51 ArtifactRepository repo = new ArtifactRepository(
52 createArtifacts(new String[] {"myartifact"}), MAIN_ARTIFACT_ID, artifactTypeMappingService);
53 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar"));
54 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", null));
55 }
56
57 @Test
58 public void testRepositoryWithOneClassifiedArtifact() {
59 ArtifactRepository repo = new ArtifactRepository(
60 createArtifacts(new String[] {"myartifact"}, new String[] {"classified"}),
61 MAIN_ARTIFACT_ID,
62 artifactTypeMappingService);
63 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar"));
64 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "classified"));
65 assertNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "wrong"));
66 }
67
68 @Test
69 public void testRepositoryWithMultipleClassifiedArtifacts() {
70 ArtifactRepository repo = new ArtifactRepository(
71 createArtifacts(
72 new String[] {"myartifact", "myartifact", "myartifact"},
73 new String[] {"class1", "class2", "class3"}),
74 MAIN_ARTIFACT_ID,
75 artifactTypeMappingService);
76
77 assertNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar"));
78 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "class1"));
79 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "class2"));
80 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "class3"));
81 assertNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "wrong"));
82 }
83
84 @Test
85 public void testRepositoryWithMultipleClassifiedArtifactsAndMainArtifact() {
86 ArtifactRepository repo = new ArtifactRepository(
87 createArtifacts(
88 new String[] {"myartifact", "myartifact", "myartifact"},
89 new String[] {"class1", "class2", null}),
90 MAIN_ARTIFACT_ID,
91 artifactTypeMappingService);
92
93 assertNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar"));
94 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "class1"));
95 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "class2"));
96 assertNotNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", MAIN_ARTIFACT_ID));
97 assertNull(repo.getUniqueArtifact(DEFAULT_GROUPID, "myartifact", "jar", "wrong"));
98 }
99 }