View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.eclipse.aether.util.artifact;
20  
21  import org.eclipse.aether.artifact.Artifact;
22  import org.eclipse.aether.artifact.DefaultArtifact;
23  import org.junit.Test;
24  
25  import static org.junit.Assert.*;
26  
27  /**
28   */
29  public class ArtifactIdUtilsTest {
30  
31      @Test
32      public void testToIdArtifact() {
33          Artifact artifact = null;
34          assertSame(null, ArtifactIdUtils.toId(artifact));
35  
36          artifact = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-23");
37          assertEquals("gid:aid:ext:1.0-20110205.132618-23", ArtifactIdUtils.toId(artifact));
38  
39          artifact = new DefaultArtifact("gid", "aid", "cls", "ext", "1.0-20110205.132618-23");
40          assertEquals("gid:aid:ext:cls:1.0-20110205.132618-23", ArtifactIdUtils.toId(artifact));
41      }
42  
43      @Test
44      public void testToIdStrings() {
45          assertEquals(":::", ArtifactIdUtils.toId(null, null, null, null, null));
46  
47          assertEquals("gid:aid:ext:1", ArtifactIdUtils.toId("gid", "aid", "ext", "", "1"));
48  
49          assertEquals("gid:aid:ext:cls:1", ArtifactIdUtils.toId("gid", "aid", "ext", "cls", "1"));
50      }
51  
52      @Test
53      public void testToBaseIdArtifact() {
54          Artifact artifact = null;
55          assertSame(null, ArtifactIdUtils.toBaseId(artifact));
56  
57          artifact = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-23");
58          assertEquals("gid:aid:ext:1.0-SNAPSHOT", ArtifactIdUtils.toBaseId(artifact));
59  
60          artifact = new DefaultArtifact("gid", "aid", "cls", "ext", "1.0-20110205.132618-23");
61          assertEquals("gid:aid:ext:cls:1.0-SNAPSHOT", ArtifactIdUtils.toBaseId(artifact));
62      }
63  
64      @Test
65      public void testToVersionlessIdArtifact() {
66          Artifact artifact = null;
67          assertSame(null, ArtifactIdUtils.toId(artifact));
68  
69          artifact = new DefaultArtifact("gid", "aid", "ext", "1");
70          assertEquals("gid:aid:ext", ArtifactIdUtils.toVersionlessId(artifact));
71  
72          artifact = new DefaultArtifact("gid", "aid", "cls", "ext", "1");
73          assertEquals("gid:aid:ext:cls", ArtifactIdUtils.toVersionlessId(artifact));
74      }
75  
76      @Test
77      public void testToVersionlessIdStrings() {
78          assertEquals("::", ArtifactIdUtils.toVersionlessId(null, null, null, null));
79  
80          assertEquals("gid:aid:ext", ArtifactIdUtils.toVersionlessId("gid", "aid", "ext", ""));
81  
82          assertEquals("gid:aid:ext:cls", ArtifactIdUtils.toVersionlessId("gid", "aid", "ext", "cls"));
83      }
84  
85      @Test
86      public void testEqualsId() {
87          Artifact artifact1 = null;
88          Artifact artifact2 = null;
89          assertFalse(ArtifactIdUtils.equalsId(artifact1, artifact2));
90          assertFalse(ArtifactIdUtils.equalsId(artifact2, artifact1));
91  
92          artifact1 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-23");
93          assertFalse(ArtifactIdUtils.equalsId(artifact1, artifact2));
94          assertFalse(ArtifactIdUtils.equalsId(artifact2, artifact1));
95  
96          artifact2 = new DefaultArtifact("gidX", "aid", "ext", "1.0-20110205.132618-23");
97          assertFalse(ArtifactIdUtils.equalsId(artifact1, artifact2));
98          assertFalse(ArtifactIdUtils.equalsId(artifact2, artifact1));
99  
100         artifact2 = new DefaultArtifact("gid", "aidX", "ext", "1.0-20110205.132618-23");
101         assertFalse(ArtifactIdUtils.equalsId(artifact1, artifact2));
102         assertFalse(ArtifactIdUtils.equalsId(artifact2, artifact1));
103 
104         artifact2 = new DefaultArtifact("gid", "aid", "extX", "1.0-20110205.132618-23");
105         assertFalse(ArtifactIdUtils.equalsId(artifact1, artifact2));
106         assertFalse(ArtifactIdUtils.equalsId(artifact2, artifact1));
107 
108         artifact2 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-24");
109         assertFalse(ArtifactIdUtils.equalsId(artifact1, artifact2));
110         assertFalse(ArtifactIdUtils.equalsId(artifact2, artifact1));
111 
112         artifact2 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-23");
113         assertTrue(ArtifactIdUtils.equalsId(artifact1, artifact2));
114         assertTrue(ArtifactIdUtils.equalsId(artifact2, artifact1));
115 
116         assertTrue(ArtifactIdUtils.equalsId(artifact1, artifact1));
117     }
118 
119     @Test
120     public void testEqualsBaseId() {
121         Artifact artifact1 = null;
122         Artifact artifact2 = null;
123         assertFalse(ArtifactIdUtils.equalsBaseId(artifact1, artifact2));
124         assertFalse(ArtifactIdUtils.equalsBaseId(artifact2, artifact1));
125 
126         artifact1 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-23");
127         assertFalse(ArtifactIdUtils.equalsBaseId(artifact1, artifact2));
128         assertFalse(ArtifactIdUtils.equalsBaseId(artifact2, artifact1));
129 
130         artifact2 = new DefaultArtifact("gidX", "aid", "ext", "1.0-20110205.132618-23");
131         assertFalse(ArtifactIdUtils.equalsBaseId(artifact1, artifact2));
132         assertFalse(ArtifactIdUtils.equalsBaseId(artifact2, artifact1));
133 
134         artifact2 = new DefaultArtifact("gid", "aidX", "ext", "1.0-20110205.132618-23");
135         assertFalse(ArtifactIdUtils.equalsBaseId(artifact1, artifact2));
136         assertFalse(ArtifactIdUtils.equalsBaseId(artifact2, artifact1));
137 
138         artifact2 = new DefaultArtifact("gid", "aid", "extX", "1.0-20110205.132618-23");
139         assertFalse(ArtifactIdUtils.equalsBaseId(artifact1, artifact2));
140         assertFalse(ArtifactIdUtils.equalsBaseId(artifact2, artifact1));
141 
142         artifact2 = new DefaultArtifact("gid", "aid", "ext", "X.0-20110205.132618-23");
143         assertFalse(ArtifactIdUtils.equalsBaseId(artifact1, artifact2));
144         assertFalse(ArtifactIdUtils.equalsBaseId(artifact2, artifact1));
145 
146         artifact2 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-24");
147         assertTrue(ArtifactIdUtils.equalsBaseId(artifact1, artifact2));
148         assertTrue(ArtifactIdUtils.equalsBaseId(artifact2, artifact1));
149 
150         artifact2 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-23");
151         assertTrue(ArtifactIdUtils.equalsBaseId(artifact1, artifact2));
152         assertTrue(ArtifactIdUtils.equalsBaseId(artifact2, artifact1));
153 
154         assertTrue(ArtifactIdUtils.equalsBaseId(artifact1, artifact1));
155     }
156 
157     @Test
158     public void testEqualsVersionlessId() {
159         Artifact artifact1 = null;
160         Artifact artifact2 = null;
161         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact1, artifact2));
162         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact2, artifact1));
163 
164         artifact1 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-23");
165         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact1, artifact2));
166         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact2, artifact1));
167 
168         artifact2 = new DefaultArtifact("gidX", "aid", "ext", "1.0-20110205.132618-23");
169         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact1, artifact2));
170         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact2, artifact1));
171 
172         artifact2 = new DefaultArtifact("gid", "aidX", "ext", "1.0-20110205.132618-23");
173         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact1, artifact2));
174         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact2, artifact1));
175 
176         artifact2 = new DefaultArtifact("gid", "aid", "extX", "1.0-20110205.132618-23");
177         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact1, artifact2));
178         assertFalse(ArtifactIdUtils.equalsVersionlessId(artifact2, artifact1));
179 
180         artifact2 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-24");
181         assertTrue(ArtifactIdUtils.equalsVersionlessId(artifact1, artifact2));
182         assertTrue(ArtifactIdUtils.equalsVersionlessId(artifact2, artifact1));
183 
184         artifact2 = new DefaultArtifact("gid", "aid", "ext", "1.0-20110205.132618-23");
185         assertTrue(ArtifactIdUtils.equalsVersionlessId(artifact1, artifact2));
186         assertTrue(ArtifactIdUtils.equalsVersionlessId(artifact2, artifact1));
187 
188         assertTrue(ArtifactIdUtils.equalsVersionlessId(artifact1, artifact1));
189     }
190 }