aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaria Odea B. Ching <oching@apache.org>2008-07-10 14:50:18 +0000
committerMaria Odea B. Ching <oching@apache.org>2008-07-10 14:50:18 +0000
commit6f322f77cea289961aa1891266faf136dd482026 (patch)
treeb0ce897436c814c2f03f1e411d4b064bb4e4eef2
parentf8cfdfa4475c1b22f2734511a4f446a48c55f506 (diff)
downloadarchiva-6f322f77cea289961aa1891266faf136dd482026.tar.gz
archiva-6f322f77cea289961aa1891266faf136dd482026.zip
[MRM-872]
-added test case for repo group merged metadata request git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@675602 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java3
-rw-r--r--archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java39
2 files changed, 42 insertions, 0 deletions
diff --git a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java
index 0d52a68a0..544f62b3c 100644
--- a/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java
+++ b/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java
@@ -261,6 +261,9 @@ public class ArchivaDavResourceFactory
if ( request.getRequestURI().endsWith( "metadata.xml" ) )
{
// TODO MRM-872 : must merge all available metadatas
+ // use RepositoryMetadataMerge for the merging of the versions
+ //
+ // Deng: I'll continue this tomorrow, everything is getting blurry now
}
DavResource resource = availableResources.get( 0 );
diff --git a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java
index 57453ea81..f06c73cd1 100644
--- a/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java
+++ b/archiva-modules/archiva-web/archiva-webdav/src/test/java/org/apache/maven/archiva/webdav/RepositoryServletRepositoryGroupTest.java
@@ -217,6 +217,45 @@ public class RepositoryServletRepositoryGroupTest
assertNotNull( "Should have received a response", response );
assertEquals( "Should have been an 401 response code.", HttpServletResponse.SC_UNAUTHORIZED, response.getResponseCode() );
}
+
+ // MRM-872
+ public void testGetMergedMetadata()
+ throws Exception
+ {
+ // first metadata file
+ String resourceName = "dummy/dummy-merged-metadata-resource/maven-metadata.xml";
+
+ File dummyInternalResourceFile = new File( repoRootFirst, resourceName );
+ dummyInternalResourceFile.getParentFile().mkdirs();
+ FileUtils.writeStringToFile( dummyInternalResourceFile, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
+ "<metadata><groupId>dummy</groupId><artifactId>dummy-merged-metadata-resource</artifactId>" +
+ "<versioning><latest>1.0</latest><release>1.0</release><versions><version>1.0</version>" +
+ "<version>2.5</version><lastUpdated>20080708095554</lastUpdated></versioning></metadata>", null );
+
+ //second metadata file
+ resourceName = "dummy/dummy-merged-metadata-resource/maven-metadata.xml";
+ dummyInternalResourceFile = new File( repoRootLast, resourceName );
+ dummyInternalResourceFile.getParentFile().mkdirs();
+ FileUtils.writeStringToFile( dummyInternalResourceFile, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
+ "<metadata><groupId>dummy</groupId><artifactId>dummy-merged-metadata-resource</artifactId>" +
+ "<versioning><latest>2.0</latest><release>2.0</release><versions><version>1.0</version>" +
+ "<version>1.5</version><version>2.0</version><lastUpdated>20080709095554</lastUpdated>" +
+ "</versioning></metadata>", null );
+
+ WebRequest request =
+ new GetMethodWebRequest( "http://machine.com/repository/" + REPO_GROUP_WITH_VALID_REPOS + "/dummy/" +
+ "dummy-merged-metadata-resource/maven-metadata.xml" );
+ WebResponse response = sc.getResource( request );
+
+ String expectedString = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
+ "<metadata><groupId>dummy</groupId><artifactId>dummy-merged-metadata-resource</artifactId>" +
+ "<versioning><latest>2.5</latest><versions><version>1.0</version>" +
+ "<version>1.5</version><version>2.0</version><version>2.5</version><lastUpdated>20080709095554</lastUpdated>" +
+ "</versioning></metadata>";
+
+ //assertResponseOK( response );
+ //assertEquals( "Expected file contents", expectedString, response.getText() );
+ }
protected void assertResponseMethodNotAllowed( WebResponse response )
{