mirror of
https://github.com/apache/archiva.git
synced 2025-03-03 06:59:16 +00:00
[MRM-1282] fix problem with getArtifactVersions when there are multiple artifacts
git-svn-id: https://svn.apache.org/repos/asf/archiva/branches/MRM-1025@889062 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
a3a67162c5
commit
33401e9819
@ -30,6 +30,7 @@
|
|||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.LinkedHashSet;
|
import java.util.LinkedHashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@ -691,7 +692,7 @@ public Collection<String> getArtifactVersions( String repoId, String namespace,
|
|||||||
|
|
||||||
Properties properties = readOrCreateProperties( directory, PROJECT_VERSION_METADATA_KEY );
|
Properties properties = readOrCreateProperties( directory, PROJECT_VERSION_METADATA_KEY );
|
||||||
|
|
||||||
List<String> versions = new ArrayList<String>();
|
Set<String> versions = new HashSet<String>();
|
||||||
for ( Map.Entry entry : properties.entrySet() )
|
for ( Map.Entry entry : properties.entrySet() )
|
||||||
{
|
{
|
||||||
String name = (String) entry.getKey();
|
String name = (String) entry.getKey();
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@ -220,7 +221,21 @@ public void testGetArtifactVersions()
|
|||||||
repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION, artifact1 );
|
repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION, artifact1 );
|
||||||
repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION, artifact2 );
|
repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION, artifact2 );
|
||||||
|
|
||||||
assertEquals( Arrays.asList( version2, version1 ),
|
assertEquals( new HashSet<String>( Arrays.asList( version2, version1 ) ),
|
||||||
|
repository.getArtifactVersions( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,
|
||||||
|
TEST_PROJECT_VERSION ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testGetArtifactVersionsMultipleArtifactsSingleVersion()
|
||||||
|
{
|
||||||
|
ArtifactMetadata artifact1 = createArtifact();
|
||||||
|
artifact1.setId( TEST_PROJECT + "-" + TEST_PROJECT_VERSION + ".jar" );
|
||||||
|
ArtifactMetadata artifact2 = createArtifact();
|
||||||
|
artifact2.setId( TEST_PROJECT + "-" + TEST_PROJECT_VERSION + "-sources.jar" );
|
||||||
|
repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION, artifact1 );
|
||||||
|
repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION, artifact2 );
|
||||||
|
|
||||||
|
assertEquals( Collections.singleton( TEST_PROJECT_VERSION ),
|
||||||
repository.getArtifactVersions( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,
|
repository.getArtifactVersions( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,
|
||||||
TEST_PROJECT_VERSION ) );
|
TEST_PROJECT_VERSION ) );
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user