diff options
author | Maria Odea B. Ching <oching@apache.org> | 2008-07-10 14:50:18 +0000 |
---|---|---|
committer | Maria Odea B. Ching <oching@apache.org> | 2008-07-10 14:50:18 +0000 |
commit | 6f322f77cea289961aa1891266faf136dd482026 (patch) | |
tree | b0ce897436c814c2f03f1e411d4b064bb4e4eef2 | |
parent | f8cfdfa4475c1b22f2734511a4f446a48c55f506 (diff) | |
download | archiva-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
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 ) { |