diff --git a/archiva-web/archiva-webapp-test/pom.xml b/archiva-web/archiva-webapp-test/pom.xml
index 11997e407..51431094c 100644
--- a/archiva-web/archiva-webapp-test/pom.xml
+++ b/archiva-web/archiva-webapp-test/pom.xml
@@ -30,6 +30,11 @@
pom
Archiva Web :: Application Tests
+
+ org.codehaus.plexus
+ plexus-command-line
+ 1.0-alpha-2
+
org.apache.maven.archiva
archiva-webapp
@@ -42,6 +47,23 @@
1.0-SNAPSHOT
test
+
+ org.codehaus.plexus
+ plexus-utils
+ 1.4
+
+
+
+
+ jdom
+ jdom
+ 1.0
+
+
+ jaxen
+ jaxen
+ 1.1
+
@@ -120,6 +142,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/archiva-web/archiva-webapp-test/src/test/it/org/apache/maven/archiva/web/test/MavenConnectionTest.java b/archiva-web/archiva-webapp-test/src/test/it/org/apache/maven/archiva/web/test/MavenConnectionTest.java
new file mode 100644
index 000000000..a0eb5aebf
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/it/org/apache/maven/archiva/web/test/MavenConnectionTest.java
@@ -0,0 +1,397 @@
+package org.apache.maven.archiva.web.test;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.codehaus.plexus.util.cli.CommandLineUtils;
+import org.codehaus.plexus.util.cli.Commandline;
+import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.codehaus.plexus.util.cli.WriterStreamConsumer;
+import org.codehaus.plexus.commandline.ExecutableResolver;
+import org.codehaus.plexus.commandline.DefaultExecutableResolver;
+import org.jdom.input.SAXBuilder;
+import org.jdom.Document;
+import org.jdom.Element;
+import org.jdom.output.XMLOutputter;
+import org.jdom.xpath.XPath;
+
+import java.io.File;
+import java.io.Writer;
+import java.io.FileWriter;
+import java.io.FileReader;
+import java.io.BufferedReader;
+import java.util.List;
+import java.util.Collections;
+
+
+/**
+ * Test maven connection to archiva
+ *
+ * @author Maria Odea Ching
+ */
+public class MavenConnectionTest
+ extends AbstractArchivaTestCase
+{
+ public static final String PATH_TO_ARCHIVA_XML = "/target/appserver-base/conf/archiva.xml";
+
+ public static final String PATH_TO_SETTINGS_XML = "/target/local-repo/settings.xml";
+
+ public static final String NEW_LOCAL_REPO_VALUE = "/target/local-repo";
+
+ /**
+ * @throws Exception
+ */
+ public void setUp()
+ throws Exception
+ {
+ super.setUp();
+
+ String newValue = getBasedir() + NEW_LOCAL_REPO_VALUE;
+ updateXml( new File( getBasedir(), PATH_TO_ARCHIVA_XML ), newValue );
+ updateXml( new File( getBasedir(), PATH_TO_SETTINGS_XML ), newValue );
+ }
+
+ /**
+ * Update localRepository element value
+ *
+ * @param f
+ * @param newValue
+ * @throws Exception
+ */
+ private void updateXml( File f, String newValue )
+ throws Exception
+ {
+ SAXBuilder builder = new SAXBuilder();
+ FileReader reader = new FileReader( f );
+ Document document = builder.build( reader );
+
+ Element localRepository =
+ (Element) XPath.newInstance( "./" + "localRepository" ).selectSingleNode( document.getRootElement() );
+ localRepository.setText( newValue );
+
+ // re-write xml file
+ FileWriter writer = new FileWriter( f );
+ XMLOutputter output = new XMLOutputter();
+ output.output( document, writer );
+ }
+
+ private void clickManagedRepositories()
+ {
+ goToLoginPage();
+ submitLoginPage( adminUsername, adminPassword );
+
+ clickLinkWithText( "Managed Repositories" );
+ assertPage( "Administration" );
+ assertTextPresent( "Administration" );
+ }
+
+ private void removeManagedRepository( String id )
+ {
+ clickManagedRepositories();
+
+ clickLinkWithLocator( "//a[contains(@href, '/admin/deleteRepository!input.action?repoId=" + id + "')]" );
+ clickLinkWithLocator( "deleteRepository_operationdelete-contents", false );
+ clickButtonWithValue( "Go" );
+
+ assertPage( "Administration" );
+ }
+
+ /**
+ * Click Settings from the navigation menu
+ */
+ private void clickProxiedRepositories()
+ {
+ goToLoginPage();
+ submitLoginPage( adminUsername, adminPassword );
+
+ clickLinkWithText( "Proxied Repositories" );
+ assertPage( "Administration" );
+ assertTextPresent( "Proxied Repositories" );
+ }
+
+ /**
+ * Remove the created test repo
+ */
+ protected void removeProxiedRepository()
+ {
+ if ( !isLinkPresent( "Login" ) )
+ {
+ logout();
+ }
+
+ clickProxiedRepositories();
+
+ if ( isTextPresent( "Delete Repository " ) )
+ {
+ clickLinkWithText( "Delete Repository" );
+ assertPage( "Configuration" );
+ clickLinkWithLocator( "deleteProxiedRepository_operationdelete-entry", false );
+ clickButtonWithValue( "Go" );
+
+ assertPage( "Administration" );
+ assertTextNotPresent( "Test Proxied Repository" );
+ }
+
+ logout();
+ }
+
+ /**
+ * Execute 'mvn' from commandline
+ *
+ * @param workingDir
+ * @param outputFile
+ * @return
+ * @throws Exception
+ */
+ private int executeMaven( String workingDir, File outputFile )
+ throws Exception
+ {
+
+ ExecutableResolver executableResolver = new DefaultExecutableResolver();
+
+ String actualExecutable = "mvn";
+ File workingDirectory = new File( workingDir );
+
+ List path = executableResolver.getDefaultPath();
+
+ if ( path == null )
+ {
+ path = Collections.EMPTY_LIST;
+ }
+
+ File e = executableResolver.findExecutable( "mvn", path );
+
+ if ( e != null )
+ {
+ actualExecutable = e.getAbsolutePath();
+ }
+
+ File actualExecutableFile = new File( actualExecutable );
+
+ if ( !actualExecutableFile.exists() )
+ {
+ actualExecutable = "mvn";
+ }
+
+ // Set command line
+ Commandline cmd = new Commandline();
+
+ cmd.addSystemEnvironment();
+
+ cmd.addEnvironment( "MAVEN_TERMINATE_CMD", "on" );
+
+ cmd.setExecutable( actualExecutable );
+
+ cmd.setWorkingDirectory( workingDirectory.getAbsolutePath() );
+
+ cmd.createArgument().setValue( "clean" );
+
+ cmd.createArgument().setValue( "install" );
+
+ cmd.createArgument().setValue( "-s" );
+
+ cmd.createArgument().setValue( getBasedir() + "/target/local-repo/settings.xml" );
+
+ // Excute command
+
+ Writer writer = new FileWriter( outputFile );
+
+ StreamConsumer consumer = new WriterStreamConsumer( writer );
+
+ int exitCode = CommandLineUtils.executeCommandLine( cmd, consumer, consumer );
+
+ writer.flush();
+
+ writer.close();
+
+ return exitCode;
+ }
+
+ public void testBadDependency()
+ throws Exception
+ {
+ File outputFile = new File( getBasedir(), "/target/projects/bad-dependency/bad-dependency.log" );
+ int exitCode = executeMaven( getBasedir() + "/target/projects/bad-dependency", outputFile );
+
+ assertEquals( 1, exitCode );
+
+ File f = new File( getBasedir(),
+ "/target/local-repo/org/apache/mavem/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar" );
+ assertTrue( !f.exists() );
+
+ BufferedReader reader = new BufferedReader( new FileReader( outputFile ) );
+ String str;
+ boolean foundSnapshot = false, foundBadDep = false;
+
+ while ( ( str = reader.readLine() ) != null )
+ {
+ //System.out.println( str );
+ if ( str.indexOf(
+ "mvn install:install-file -DgroupId=org.apache.maven.archiva.web.test -DartifactId=foo-bar" ) != -1 )
+ {
+ foundSnapshot = true;
+ }
+ else if ( str.indexOf(
+ "mvn install:install-file -DgroupId=org.apache.maven.archiva.web.test -DartifactId=bad-dependency" ) !=
+ -1 )
+ {
+ foundBadDep = true;
+ }
+ }
+
+ reader.close();
+
+ assertTrue( foundSnapshot );
+ assertTrue( foundBadDep );
+ }
+
+ /*
+ @todo: commented out since tests are currently failing due to MRM-323
+
+ public void testDownloadArtifactFromManagedRepo()
+ throws Exception
+ {
+ clickManagedRepositories();
+
+ clickLinkWithText( "Add Repository" );
+ assertTextPresent( "Configuration" );
+
+ setFieldValue( "addRepository_id", "snapshots" );
+ setFieldValue( "urlName", "snapshots" );
+ setFieldValue( "addRepository_name", "snapshots-repository" );
+ setFieldValue( "addRepository_directory", getBasedir() + "/target/snapshots" );
+
+ clickButtonWithValue( "Add Repository" );
+ assertPage( "Administration" );
+
+ clickLinkWithText( "User Management" );
+ clickLinkWithLocator( "//a[contains(@href, '/security/useredit.action?username=admin')]" );
+ clickLinkWithText( "Edit Roles" );
+ checkField( "addRolesToUser_addSelectedRolesRepository Observer - snapshots" );
+ checkField( "addRolesToUser_addSelectedRolesRepository Manager - snapshots" );
+
+ clickButtonWithValue( "Add Selected Roles" );
+ assertPage( "[Admin] User List" );
+
+ logout();
+
+ File outputFile = new File( getBasedir(), "/target/projects/bad-dependency/bad-dependency2.log" );
+ int exitCode = executeMaven( getBasedir() + "/target/projects/bad-dependency",
+ outputFile );
+
+ assertEquals( 0, exitCode );
+
+ File f = new File( getBasedir(),
+ "/target/local-repo/org/apache/maven/archiva/web/test/foo-bar-1.0-SNAPSHOT.jar" );
+ assertTrue( f.exists() );
+
+ BufferedReader reader = new BufferedReader( new FileReader( outputFile ) );
+ String str;
+
+ while( ( str = reader.readLine() ) != null)
+ {
+ System.out.println( str );
+ }
+ reader.close();
+
+ removeManagedRepository( "snapshots" );
+ }
+
+
+ public void testDownloadArtifactFromProxiedRepo()
+ throws Exception
+ {
+ //add managed repository
+ clickManagedRepositories();
+
+ clickLinkWithText( "Add Repository" );
+ assertTextPresent( "Configuration" );
+
+ setFieldValue( "addRepository_id", "repository" );
+ setFieldValue( "urlName", "repository" );
+ setFieldValue( "addRepository_name", "repository" );
+ setFieldValue( "addRepository_directory", getBasedir() + "/target/repository" );
+
+ clickButtonWithValue( "Add Repository" );
+ waitPage();
+ assertPage( "Administration" );
+
+ clickLinkWithText( "User Management" );
+ clickLinkWithLocator( "//a[contains(@href, '/security/useredit.action?username=admin')]" );
+ clickLinkWithText( "Edit Roles" );
+ checkField( "addRolesToUser_addSelectedRolesRepository Observer - repository" );
+ checkField( "addRolesToUser_addSelectedRolesRepository Manager - repository" );
+
+ clickButtonWithValue( "Add Selected Roles" );
+ assertPage( "[Admin] User List" );
+ logout();
+
+ //add proxied repository
+ clickProxiedRepositories();
+ clickLinkWithText( "Add Repository" );
+ assertPage( "Configuration" );
+ setFieldValue( "id", "central" );
+ setFieldValue( "name", "Central Repository" );
+ setFieldValue( "url", "http://mirrors.ibiblio.org/pub/mirrors/maven2" );
+ clickButtonWithValue( "Add Repository" );
+ waitPage();
+
+ assertPage( "Administration" );
+ assertTextPresent( "Central Repository" );
+ assertLinkPresent( "Edit Repository" );
+
+ logout();
+
+ File outputFile = new File( getBasedir(), "/target/projects/dependency-in-proxied/dependency-in-proxied.log" );
+ int exitCode = executeMaven( getBasedir() + "/target/projects/dependency-in-proxied",
+ outputFile );
+
+ assertEquals( 0, exitCode );
+
+ File f = new File( getBasedir(),"/target/repository/com/lowagie/itext/1.3/itext-1.3.jar" );
+ assertTrue( f.exists() );
+
+ f = new File( getBasedir(), "/target/local-repo/com/lowagie/itext/1.3/itext-1.3.jar" );
+ assertTrue( f.exists() );
+
+
+ BufferedReader reader = new BufferedReader( new FileReader( outputFile ) );
+ String str;
+
+ while( ( str = reader.readLine() ) != null)
+ {
+ System.out.println( str );
+ }
+ reader.close();
+
+ removeProxiedRepository();
+ removeManagedRepository( "repository" );
+ }
+
+ */
+
+ /**
+ * @throws Exception
+ */
+ public void tearDown()
+ throws Exception
+ {
+ super.tearDown();
+ }
+}
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/appserver-base/conf/archiva.xml b/archiva-web/archiva-webapp-test/src/test/resources/appserver-base/conf/archiva.xml
index 9afb83352..4208167ec 100644
--- a/archiva-web/archiva-webapp-test/src/test/resources/appserver-base/conf/archiva.xml
+++ b/archiva-web/archiva-webapp-test/src/test/resources/appserver-base/conf/archiva.xml
@@ -1 +1,3 @@
-
+
+
+
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/local-repo/settings.xml b/archiva-web/archiva-webapp-test/src/test/resources/local-repo/settings.xml
new file mode 100644
index 000000000..23b66a9db
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/local-repo/settings.xml
@@ -0,0 +1,44 @@
+
+
+
+
+ snapshots
+ admin
+ admin1
+
+
+
+
+ repositories
+
+
+ snapshots
+ snapshots-repository
+ http://localhost:9696/archiva/repository/snapshots/
+
+ false
+
+
+ true
+
+
+
+
+
+ snapshots
+ snapshots-repository
+ http://localhost:9696/archiva/repository/snapshot/
+
+ false
+
+
+ true
+
+
+
+
+
+
+ repositories
+
+
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/projects/bad-dependency/bad-dependency.log b/archiva-web/archiva-webapp-test/src/test/resources/projects/bad-dependency/bad-dependency.log
new file mode 100644
index 000000000..e69de29bb
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/projects/bad-dependency/bad-dependency2.log b/archiva-web/archiva-webapp-test/src/test/resources/projects/bad-dependency/bad-dependency2.log
new file mode 100644
index 000000000..e69de29bb
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/projects/bad-dependency/pom.xml b/archiva-web/archiva-webapp-test/src/test/resources/projects/bad-dependency/pom.xml
new file mode 100644
index 000000000..921fe5710
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/projects/bad-dependency/pom.xml
@@ -0,0 +1,41 @@
+
+
+
+
+ 4.0.0
+ org.apache.maven.archiva
+ bad-dependency
+ 1.0
+ jar
+ Bad Dependency
+
+
+ org.apache.maven.archiva.web.test
+ bad-dependency
+ 1.0
+
+
+ org.apache.maven.archiva.web.test
+ foo-bar
+ 1.0-SNAPSHOT
+
+
+
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/projects/dependency-in-proxied/dependency-in-proxied.log b/archiva-web/archiva-webapp-test/src/test/resources/projects/dependency-in-proxied/dependency-in-proxied.log
new file mode 100644
index 000000000..e69de29bb
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/projects/dependency-in-proxied/pom.xml b/archiva-web/archiva-webapp-test/src/test/resources/projects/dependency-in-proxied/pom.xml
new file mode 100644
index 000000000..132a9d229
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/projects/dependency-in-proxied/pom.xml
@@ -0,0 +1,41 @@
+
+
+
+
+ 4.0.0
+ org.apache.maven.archiva
+ dependency-in-proxied
+ 1.0
+ jar
+ Dependency In Proxied
+
+
+
+ com.lowagie
+ itext
+ 1.3
+
+
+
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/.datarefresh b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/.datarefresh
new file mode 100644
index 000000000..c53a40aad
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/.datarefresh
@@ -0,0 +1,7 @@
+#Last Scan Information, managed by Archiva. DO NOT EDIT
+#Thu Apr 19 17:04:36 PHT 2007
+scan.included.files=12
+scan.skipped.files=0
+scan.finished.timestamp=1176973476967
+scan.consumed.files=20
+scan.started.timestamp=1176973467414
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar
new file mode 100644
index 000000000..033956d43
Binary files /dev/null and b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar differ
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar.md5 b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar.md5
new file mode 100644
index 000000000..0a3eeb690
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar.md5
@@ -0,0 +1 @@
+306d556e6e5e4d604dc854d09ddcdefd
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar.sha1 b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar.sha1
new file mode 100644
index 000000000..39c5c3061
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar.sha1
@@ -0,0 +1 @@
+afb6586f5eb4c63dd5735a0bed11c99c7fac6755
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom
new file mode 100644
index 000000000..d580176ff
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom
@@ -0,0 +1,9 @@
+
+ 4.0.0
+ org.apache.maven.archiva.web.test
+ foo-bar
+ 1.0-SNAPSHOT
+
+ deployed
+
+
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom.md5 b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom.md5
new file mode 100644
index 000000000..6caf8be40
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom.md5
@@ -0,0 +1 @@
+8e896baea663a45d7bd2737f8e464481
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom.sha1 b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom.sha1
new file mode 100644
index 000000000..a3bbc7ea1
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.pom.sha1
@@ -0,0 +1 @@
+e37897c617d78dedd978766a2db318d301e80105
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml
new file mode 100644
index 000000000..ab1eb426d
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml
@@ -0,0 +1,11 @@
+
+ org.apache.maven.archiva.web.test
+ foo-bar
+ 1.0-SNAPSHOT
+
+
+ 1
+
+ 20070425105840
+
+
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml.md5 b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml.md5
new file mode 100644
index 000000000..76ef1e4b3
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml.md5
@@ -0,0 +1 @@
+add4f71a005137e9a296c5b192e900c2
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml.sha1 b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml.sha1
new file mode 100644
index 000000000..ebe7cf339
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/maven-metadata.xml.sha1
@@ -0,0 +1 @@
+b505e302169e04fc821bf571da7435b1e42ef8d7
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml
new file mode 100644
index 000000000..8f00ecefa
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml
@@ -0,0 +1,11 @@
+
+ org.apache.maven.archiva.web.test
+ foo-bar
+ 1.0-SNAPSHOT
+
+
+ 1.0-SNAPSHOT
+
+ 20070425105840
+
+
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml.md5 b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml.md5
new file mode 100644
index 000000000..f6270d9c8
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml.md5
@@ -0,0 +1 @@
+f3b657fb48d2e82fee5fada169756938
\ No newline at end of file
diff --git a/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml.sha1 b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml.sha1
new file mode 100644
index 000000000..7f4812f9f
--- /dev/null
+++ b/archiva-web/archiva-webapp-test/src/test/resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/maven-metadata.xml.sha1
@@ -0,0 +1 @@
+f4629e609deb95cefdcdddc6dd8c2942d1c3e47f
\ No newline at end of file