mirror of https://github.com/apache/archiva.git
Merging changes from old (archiva-0.9) trunk into branch.
svn merge revision 518676 to 534045. git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/branches/archiva-jpox-database-refactor@534082 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
e52e0793df
commit
4c9789b228
|
@ -66,12 +66,10 @@
|
|||
<dependency>
|
||||
<groupId>org.codehaus.plexus.registry</groupId>
|
||||
<artifactId>plexus-registry-api</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.registry</groupId>
|
||||
<artifactId>plexus-registry-commons</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<!-- Test Deps -->
|
||||
|
@ -92,7 +90,7 @@
|
|||
<plugin>
|
||||
<groupId>org.codehaus.modello</groupId>
|
||||
<artifactId>modello-maven-plugin</artifactId>
|
||||
<version>1.0-alpha-15-SNAPSHOT</version>
|
||||
<version>1.0-alpha-15</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
|
|
|
@ -52,6 +52,12 @@
|
|||
<dependency>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
<artifactId>plexus-digest</artifactId>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
<artifactId>plexus-container-default</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
|
|
|
@ -70,13 +70,11 @@
|
|||
<dependency>
|
||||
<groupId>org.codehaus.plexus.cache</groupId>
|
||||
<artifactId>plexus-cache-api</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.cache</groupId>
|
||||
<artifactId>plexus-cache-ehcache</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
|
|
|
@ -42,7 +42,7 @@ To build
|
|||
|
||||
* Download the 1.0.1B jta zip from: {{http://java.sun.com/products/jta/}}
|
||||
|
||||
* Install it: mvn install:install-file -DgroupId=javax.transaction -DartifactId=jta Dversion=1.0.1B -Dpackaging=jar -Dfile=jta-1_0_1B-classes.zip
|
||||
* Install it: mvn install:install-file -DgroupId=javax.transaction -DartifactId=jta -Dversion=1.0.1B -Dpackaging=jar -Dfile=jta-1_0_1B-classes.zip
|
||||
|
||||
Otherwise:
|
||||
|
||||
|
@ -92,7 +92,7 @@ To deploy Archiva to Tomcat 5.5
|
|||
instead, or see {{{http://issues.apache.org/bugzilla/show_bug.cgi?id=40668}
|
||||
Bug 40668}} for a workaround.
|
||||
|
||||
* Copy archiva/archiva-webapp/target/archiva-webapp-1.0-SNAPSHOT/WEB-INF/lib/derby-10.1.3.1.jar into the tomcat common/lib
|
||||
* Copy $HOME/.m2/org/apache/derby/derby/10.1.3.1/derby-10.1.3.1.jar (or from the remote repository) into the tomcat common/lib
|
||||
|
||||
* To deal with a current bug, you'll also need to add the following to your ${catalina.home}/conf/web.xml in the relevant section (search for jspx):
|
||||
|
||||
|
|
|
@ -141,7 +141,7 @@
|
|||
</executions>
|
||||
<configuration>
|
||||
<descriptor>src/main/assembly/bin.xml</descriptor>
|
||||
<finalName>archiva</finalName>
|
||||
<finalName>archiva-${version}</finalName>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
|
|
|
@ -42,6 +42,23 @@
|
|||
<version>1.0-SNAPSHOT</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- Dependencies below are provided by the appserver -->
|
||||
<dependency>
|
||||
<groupId>org.apache.derby</groupId>
|
||||
<artifactId>derby</artifactId>
|
||||
<version>10.1.3.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.mail</groupId>
|
||||
<artifactId>mail</artifactId>
|
||||
<version>1.4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.activation</groupId>
|
||||
<artifactId>activation</artifactId>
|
||||
<version>1.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
@ -69,11 +86,43 @@
|
|||
<outputDirectory>${project.build.directory}/${container.name}conf/webapps/archiva</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>prepare-provided-dependencies</id>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>copy-dependencies</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<overWriteReleases>false</overWriteReleases>
|
||||
<overWriteSnapshots>true</overWriteSnapshots>
|
||||
<excludeTransitive>false</excludeTransitive>
|
||||
<outputDirectory>${project.build.directory}/providedDependencies</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<tasks>
|
||||
<copy todir="${project.build.directory}/appserver-base">
|
||||
<fileset dir="src/test/resources/appserver-base" />
|
||||
</copy>
|
||||
<copy todir="${project.build.directory}/repository">
|
||||
<fileset dir="src/test/resources/repository" />
|
||||
</copy>
|
||||
<copy todir="${project.build.directory}/index">
|
||||
<fileset dir="src/test/resources/index" />
|
||||
</copy>
|
||||
</tasks>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>copy-container-conf</id>
|
||||
<phase>package</phase>
|
||||
|
@ -84,8 +133,8 @@
|
|||
</copy>
|
||||
<copy
|
||||
todir="${project.build.directory}/installs/${container.name}/apache-tomcat-5.5.20/apache-tomcat-5.5.20/common/lib">
|
||||
<fileset dir="${project.build.directory}/${container.name}conf/webapps/archiva/WEB-INF/lib">
|
||||
<include name="**/derby-*.jar"/>
|
||||
<fileset dir="${project.build.directory}/providedDependencies">
|
||||
<include name="**/*.jar"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
</tasks>
|
||||
|
@ -168,7 +217,7 @@
|
|||
<output>${project.build.directory}/logs/${container.name}.out</output>
|
||||
<timeout>600000</timeout>
|
||||
<systemProperties>
|
||||
<appserver.base>${project.build.directory}</appserver.base>
|
||||
<appserver.base>${project.build.directory}/appserver-base</appserver.base>
|
||||
</systemProperties>
|
||||
</container>
|
||||
<configuration>
|
||||
|
|
|
@ -44,15 +44,15 @@ public abstract class AbstractArchivaTestCase
|
|||
if ( getTitle().equals( getTitlePrefix() + "Configuration" ) )
|
||||
{
|
||||
//Add Managed Repository
|
||||
setFieldValue( "id", "web-ui" );
|
||||
setFieldValue( "urlName", "web-ui" );
|
||||
setFieldValue( "id", "test-repository" );
|
||||
setFieldValue( "urlName", "test-repository" );
|
||||
setFieldValue( "name", "Web UI Test Managed Repository" );
|
||||
setFieldValue( "directory", getBasedir() + "target/web-ui-dir" );
|
||||
setFieldValue( "directory", getBasedir() + "/target/repository" );
|
||||
clickButtonWithValue( "Add Repository" );
|
||||
|
||||
//Set Index location
|
||||
assertPage( "Configuration" );
|
||||
setFieldValue( "indexPath", getBasedir() + "target/web-ui-index" );
|
||||
setFieldValue( "indexPath", getBasedir() + "/target/index" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
assertPage( "Administration" );
|
||||
}
|
||||
|
@ -60,16 +60,17 @@ public abstract class AbstractArchivaTestCase
|
|||
|
||||
public void assertHeader()
|
||||
{
|
||||
assertTrue( "banner is missing" , getSelenium().isElementPresent( "xpath=//div[@id='banner']" ) );
|
||||
assertTrue( "bannerLeft is missing" , getSelenium().isElementPresent( "xpath=//div[@id='banner']" +
|
||||
"/span[@id='bannerLeft']" ) );
|
||||
assertTrue( "bannerLeft link is missing" , getSelenium().isElementPresent( "xpath=//div[@id='banner']" +
|
||||
"/span[@id='bannerLeft']/a[@href='http://maven.apache.org/archiva/']" ) );
|
||||
assertTrue( "bannerLeft img is missing" , getSelenium().isElementPresent( "xpath=//div[@id='banner']" +
|
||||
"/span[@id='bannerLeft']/a[@href='http://maven.apache.org/archiva/']" +
|
||||
"/img[@src='" + getWebContext() + "/images/archiva.png']" ) );
|
||||
assertTrue( "banner is missing", getSelenium().isElementPresent( "xpath=//div[@id='banner']" ) );
|
||||
assertTrue( "bannerLeft is missing",
|
||||
getSelenium().isElementPresent( "xpath=//div[@id='banner']" + "/span[@id='bannerLeft']" ) );
|
||||
assertTrue( "bannerLeft link is missing", getSelenium().isElementPresent(
|
||||
"xpath=//div[@id='banner']" + "/span[@id='bannerLeft']/a[@href='http://maven.apache.org/archiva/']" ) );
|
||||
assertTrue( "bannerLeft img is missing", getSelenium().isElementPresent( "xpath=//div[@id='banner']" +
|
||||
"/span[@id='bannerLeft']/a[@href='http://maven.apache.org/archiva/']" + "/img[@src='" + getWebContext() +
|
||||
"/images/archiva.png']" ) );
|
||||
|
||||
assertTrue( "bannerRight is missing", getSelenium().isElementPresent( "xpath=//div[@id='banner']/span[@id='bannerRight']" ) );
|
||||
assertTrue( "bannerRight is missing",
|
||||
getSelenium().isElementPresent( "xpath=//div[@id='banner']/span[@id='bannerRight']" ) );
|
||||
}
|
||||
|
||||
protected String getTitlePrefix()
|
||||
|
|
|
@ -0,0 +1,194 @@
|
|||
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.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Archiva's webapp UI test for browsing the indexed repository.
|
||||
*
|
||||
* @author <a href="mailto:nramirez@exist.com">Napoleon Esmundo C. Ramirez</a>
|
||||
*/
|
||||
public class BrowseRepositoryTest
|
||||
extends AbstractArchivaTestCase
|
||||
{
|
||||
private void browseArtifact()
|
||||
{
|
||||
clickLinkWithText( "Browse" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "Browse Repository" );
|
||||
assertLinkPresent( "org.apache.maven.archiva.web.test/" );
|
||||
|
||||
clickLinkWithText( "org.apache.maven.archiva.web.test/" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "Browse Repository" );
|
||||
assertTextPresent( "Artifacts" );
|
||||
assertLinkPresent( "artifact-a/" );
|
||||
|
||||
clickLinkWithText( "artifact-a/" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "Browse Repository" );
|
||||
assertTextPresent( "Versions" );
|
||||
assertLinkPresent( "1.0/" );
|
||||
|
||||
clickLinkWithText( "1.0/" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "artifact-a" );
|
||||
assertLinkPresent( "Main" );
|
||||
}
|
||||
|
||||
public void testBrowseArtifactInfo()
|
||||
{
|
||||
browseArtifact();
|
||||
|
||||
assertTextPresent( "Info" );
|
||||
assertLinkPresent( "Dependencies" );
|
||||
assertLinkPresent( "Dependency Tree" );
|
||||
assertLinkPresent( "Used By" );
|
||||
assertLinkPresent( "Mailing Lists" );
|
||||
|
||||
assertEquals("Group ID", getSelenium().getTable("//table[1].0.0"));
|
||||
assertEquals("org.apache.maven.archiva.web.test", getSelenium().getTable("//table[1].0.1"));
|
||||
assertEquals("Artifact ID", getSelenium().getTable("//table[1].1.0"));
|
||||
assertEquals("artifact-a", getSelenium().getTable("//table[1].1.1"));
|
||||
assertEquals("Version", getSelenium().getTable("//table[1].2.0"));
|
||||
assertEquals("1.0", getSelenium().getTable("//table[1].2.1"));
|
||||
assertEquals("Packaging", getSelenium().getTable("//table[1].3.0"));
|
||||
assertEquals("jar", getSelenium().getTable("//table[1].3.1"));
|
||||
}
|
||||
|
||||
public void testBrowseArtifactDependencies()
|
||||
{
|
||||
browseArtifact();
|
||||
|
||||
clickLinkWithText( "Dependencies" );
|
||||
assertLinkPresent( "Info" );
|
||||
assertTextPresent( "Dependencies" );
|
||||
assertLinkPresent( "Dependency Tree" );
|
||||
assertLinkPresent( "Used By" );
|
||||
assertLinkPresent( "Mailing Lists" );
|
||||
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "artifact-a" );
|
||||
assertLinkPresent( "artifact-b" );
|
||||
}
|
||||
|
||||
public void testBrowseArtifactDependencyTree()
|
||||
{
|
||||
browseArtifact();
|
||||
|
||||
clickLinkWithText( "Dependency Tree" );
|
||||
assertLinkPresent( "Info" );
|
||||
assertLinkPresent( "Dependencies" );
|
||||
assertTextPresent( "Dependency Tree" );
|
||||
assertLinkPresent( "Used By" );
|
||||
assertLinkPresent( "Mailing Lists" );
|
||||
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "artifact-a" );
|
||||
assertLinkPresent( "artifact-b" );
|
||||
assertLinkPresent( "artifact-c" );
|
||||
}
|
||||
|
||||
public void testBrowseArtifactUsedBy()
|
||||
{
|
||||
browseArtifact();
|
||||
|
||||
clickLinkWithText( "Used By" );
|
||||
assertLinkPresent( "Info" );
|
||||
assertLinkPresent( "Dependencies" );
|
||||
assertLinkPresent( "Dependency Tree" );
|
||||
assertTextPresent( "Used By" );
|
||||
assertLinkPresent( "Mailing Lists" );
|
||||
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "artifact-a" );
|
||||
assertLinkPresent( "artifact-s" );
|
||||
}
|
||||
|
||||
public void testBrowseArtifactMailingLists()
|
||||
{
|
||||
browseArtifact();
|
||||
|
||||
clickLinkWithText( "Mailing Lists" );
|
||||
assertLinkPresent( "Info" );
|
||||
assertLinkPresent( "Dependencies" );
|
||||
assertLinkPresent( "Dependency Tree" );
|
||||
assertLinkPresent( "Used By" );
|
||||
assertTextPresent( "Mailing Lists" );
|
||||
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "artifact-a" );
|
||||
assertTextPresent( "No mailing lists" );
|
||||
}
|
||||
|
||||
public void testBrowseUpRepositoryDirectory()
|
||||
{
|
||||
browseArtifact();
|
||||
|
||||
assertLinkPresent( "artifact-a" );
|
||||
|
||||
clickLinkWithText( "artifact-a" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "Browse Repository" );
|
||||
assertTextPresent( "artifact-a" );
|
||||
assertTextPresent( "Versions" );
|
||||
assertLinkPresent( "1.0/" );
|
||||
assertLinkPresent( "test" );
|
||||
|
||||
clickLinkWithText( "test" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "Browse Repository" );
|
||||
assertTextPresent( "Artifacts" );
|
||||
assertLinkPresent( "artifact-a/" );
|
||||
assertLinkPresent( "web" );
|
||||
|
||||
clickLinkWithText( "web" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "Browse Repository" );
|
||||
assertTextPresent( "Groups" );
|
||||
assertLinkPresent( "org.apache.maven.archiva.web.test/" );
|
||||
assertLinkPresent( "[top]" );
|
||||
|
||||
clickLinkWithText( "[top]" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "Browse Repository" );
|
||||
assertTextPresent( "Groups" );
|
||||
assertLinkPresent( "org.apache.maven.archiva.web.test/" );
|
||||
}
|
||||
|
||||
public void testBrowseDependencyArtifact()
|
||||
{
|
||||
browseArtifact();
|
||||
|
||||
clickLinkWithText( "Dependencies" );
|
||||
assertPage( "Browse Repository" );
|
||||
assertTextPresent( "artifact-a" );
|
||||
assertLinkPresent( "artifact-b" );
|
||||
|
||||
clickLinkWithText( "artifact-b" );
|
||||
assertEquals("Group ID", getSelenium().getTable("//table[1].0.0"));
|
||||
assertEquals("org.apache.maven.archiva.web.test", getSelenium().getTable("//table[1].0.1"));
|
||||
assertEquals("Artifact ID", getSelenium().getTable("//table[1].1.0"));
|
||||
assertEquals("artifact-b", getSelenium().getTable("//table[1].1.1"));
|
||||
assertEquals("Version", getSelenium().getTable("//table[1].2.0"));
|
||||
assertEquals("2.0", getSelenium().getTable("//table[1].2.1"));
|
||||
assertEquals("Packaging", getSelenium().getTable("//table[1].3.0"));
|
||||
assertEquals("jar", getSelenium().getTable("//table[1].3.1"));
|
||||
}
|
||||
}
|
|
@ -59,11 +59,11 @@ public class LoginTest
|
|||
submitLoginPage( adminUsername, adminPassword );
|
||||
|
||||
clickLinkWithText( "User Management" );
|
||||
assertPage( "[Admin] User List" );
|
||||
assertLinkNotPresent( username );
|
||||
//assertPage( "[Admin] User List" );
|
||||
//assertLinkNotPresent( username );
|
||||
clickButtonWithValue( "Create New User" );
|
||||
|
||||
assertPage( "[Admin] User Create" );
|
||||
//assertPage( "[Admin] User Create" );
|
||||
setFieldValue( "user.username", username );
|
||||
setFieldValue( "user.fullName", username + " FullName" );
|
||||
setFieldValue( "user.email", username + "@localhost.com" );
|
||||
|
@ -71,8 +71,8 @@ public class LoginTest
|
|||
setFieldValue( "user.confirmPassword", password );
|
||||
clickButtonWithValue( "Create User" );
|
||||
waitPage();
|
||||
assertPage( "[Admin] User List" );
|
||||
assertLinkPresent( username );
|
||||
//assertPage( "[Admin] User List" );
|
||||
//assertLinkPresent( username );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
|
|
@ -0,0 +1,201 @@
|
|||
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.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Archiva's webapp UI test for adding/editing/deleting managed repositories.
|
||||
*
|
||||
* @author <a href="mailto:nramirez@exist.com">Napoleon Esmundo C. Ramirez</a>
|
||||
*/
|
||||
public class ManagedRepositoryTest
|
||||
extends AbstractArchivaTestCase
|
||||
{
|
||||
private static final String TEST_REPOSITORY_ID = "test-repository-id";
|
||||
|
||||
private static final String TEST_REPOSITORY_URL = "test-repository-url";
|
||||
|
||||
private static final String TEST_REPOSITORY_NAME = "test-repository-name";
|
||||
|
||||
private static final String TEST_REPOSITORY_DIRECTORY = "test-repository-directory";
|
||||
|
||||
|
||||
private void clickManagedRepositories()
|
||||
{
|
||||
goToLoginPage();
|
||||
submitLoginPage( adminUsername, adminPassword );
|
||||
|
||||
clickLinkWithText( "Managed Repositories" );
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( "Administration" );
|
||||
}
|
||||
|
||||
private void createManagedRepository( String id, String url, String name, String directory )
|
||||
{
|
||||
clickManagedRepositories();
|
||||
|
||||
clickLinkWithText( "Add Repository" );
|
||||
assertTextPresent( "Configuration" );
|
||||
|
||||
setFieldValue( "addRepository_id", id );
|
||||
setFieldValue( "urlName", url );
|
||||
setFieldValue( "addRepository_name", name );
|
||||
setFieldValue( "addRepository_directory", directory );
|
||||
|
||||
clickButtonWithValue( "Add Repository", false );
|
||||
}
|
||||
|
||||
private void removeManagedRepository( String id )
|
||||
{
|
||||
logout();
|
||||
|
||||
clickManagedRepositories();
|
||||
|
||||
clickLinkWithLocator( "//a[contains(@href, '/admin/deleteRepository!input.action?repoId=" + id + "')]" );
|
||||
clickLinkWithLocator( "deleteRepository_operationdelete-contents", false );
|
||||
clickButtonWithValue( "Go" );
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextNotPresent( TEST_REPOSITORY_ID );
|
||||
}
|
||||
|
||||
public void testAddRepositoryWithValidValues()
|
||||
{
|
||||
createManagedRepository( TEST_REPOSITORY_ID, TEST_REPOSITORY_URL, TEST_REPOSITORY_NAME, TEST_REPOSITORY_DIRECTORY );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( TEST_REPOSITORY_ID );
|
||||
|
||||
removeManagedRepository( TEST_REPOSITORY_ID );
|
||||
}
|
||||
|
||||
public void testAddRepositoryWithInvalidValues()
|
||||
{
|
||||
createManagedRepository( "", "", "", "" );
|
||||
|
||||
assertTextPresent( "You must enter the repository identifier." );
|
||||
assertTextPresent( "You must enter the url name." );
|
||||
assertTextPresent( "You must enter the repository name." );
|
||||
assertTextPresent( "You must enter the repository directory." );
|
||||
}
|
||||
|
||||
public void testEditRepositoryWithValidValues()
|
||||
{
|
||||
createManagedRepository( TEST_REPOSITORY_ID, TEST_REPOSITORY_URL, TEST_REPOSITORY_NAME, TEST_REPOSITORY_DIRECTORY );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( TEST_REPOSITORY_NAME );
|
||||
|
||||
clickLinkWithLocator( "//a[contains(@href, '/admin/editRepository!input.action?repoId=" + TEST_REPOSITORY_ID + "')]" );
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "Configuration" );
|
||||
|
||||
assertTextPresent( "Edit Managed Repository" );
|
||||
assertEquals( TEST_REPOSITORY_URL, getFieldValue( "urlName" ) );
|
||||
assertEquals( TEST_REPOSITORY_NAME, getFieldValue( "editRepository_name" ) );
|
||||
assertTrue( getFieldValue( "editRepository_directory" ).endsWith( TEST_REPOSITORY_DIRECTORY ) );
|
||||
|
||||
setFieldValue( "urlName", "edited-" + TEST_REPOSITORY_URL );
|
||||
setFieldValue( "editRepository_name", "edited-" + TEST_REPOSITORY_NAME );
|
||||
setFieldValue( "editRepository_directory", "edited-" + TEST_REPOSITORY_DIRECTORY );
|
||||
|
||||
clickButtonWithValue( "Update Repository" );
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( TEST_REPOSITORY_ID );
|
||||
assertTextPresent( "edited-" + TEST_REPOSITORY_NAME );
|
||||
|
||||
removeManagedRepository( TEST_REPOSITORY_ID );
|
||||
}
|
||||
|
||||
public void testEditRepositoryWithInvalidValues()
|
||||
{
|
||||
createManagedRepository( TEST_REPOSITORY_ID, TEST_REPOSITORY_URL, TEST_REPOSITORY_NAME, TEST_REPOSITORY_DIRECTORY );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( TEST_REPOSITORY_NAME );
|
||||
|
||||
clickLinkWithLocator( "//a[contains(@href, '/admin/editRepository!input.action?repoId=" + TEST_REPOSITORY_ID + "')]" );
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "Configuration" );
|
||||
|
||||
assertTextPresent( "Edit Managed Repository" );
|
||||
assertEquals( TEST_REPOSITORY_URL, getFieldValue( "urlName" ) );
|
||||
assertEquals( TEST_REPOSITORY_NAME, getFieldValue( "editRepository_name" ) );
|
||||
assertTrue( getFieldValue( "editRepository_directory" ).endsWith( TEST_REPOSITORY_DIRECTORY ) );
|
||||
|
||||
setFieldValue( "urlName", "" );
|
||||
setFieldValue( "editRepository_name", "" );
|
||||
setFieldValue( "editRepository_directory", "" );
|
||||
|
||||
clickButtonWithValue( "Update Repository", false );
|
||||
assertTextPresent( "You must enter the url name." );
|
||||
assertTextPresent( "You must enter the repository name." );
|
||||
assertTextPresent( "You must enter the repository directory." );
|
||||
|
||||
removeManagedRepository( TEST_REPOSITORY_ID );
|
||||
}
|
||||
|
||||
public void testDeleteRepositoryButLeaveUnmodified()
|
||||
{
|
||||
createManagedRepository( TEST_REPOSITORY_ID, TEST_REPOSITORY_URL, TEST_REPOSITORY_NAME, TEST_REPOSITORY_DIRECTORY );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( TEST_REPOSITORY_ID );
|
||||
|
||||
clickLinkWithLocator( "//a[contains(@href, '/admin/deleteRepository!input.action?repoId=" + TEST_REPOSITORY_ID + "')]" );
|
||||
clickLinkWithLocator( "deleteRepository_operationunmodified", false );
|
||||
clickButtonWithValue( "Go" );
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( TEST_REPOSITORY_ID );
|
||||
|
||||
removeManagedRepository( TEST_REPOSITORY_ID );
|
||||
}
|
||||
|
||||
public void testDeleteRepositoryAndContents()
|
||||
{
|
||||
createManagedRepository( TEST_REPOSITORY_ID, TEST_REPOSITORY_URL, TEST_REPOSITORY_NAME, TEST_REPOSITORY_DIRECTORY );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( TEST_REPOSITORY_ID );
|
||||
|
||||
removeManagedRepository( TEST_REPOSITORY_ID );
|
||||
}
|
||||
|
||||
public void testDeleteRepositoryButLeaveContentsUnmodified()
|
||||
{
|
||||
createManagedRepository( TEST_REPOSITORY_ID, TEST_REPOSITORY_URL, TEST_REPOSITORY_NAME, TEST_REPOSITORY_DIRECTORY );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( TEST_REPOSITORY_ID );
|
||||
|
||||
clickLinkWithLocator( "//a[contains(@href, '/admin/deleteRepository!input.action?repoId=" + TEST_REPOSITORY_ID + "')]" );
|
||||
clickLinkWithLocator( "deleteRepository_operationdelete-entry", false );
|
||||
clickButtonWithValue( "Go" );
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextNotPresent( TEST_REPOSITORY_ID );
|
||||
}
|
||||
}
|
|
@ -0,0 +1,233 @@
|
|||
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.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Test archiva proxied repositories configuration
|
||||
*
|
||||
* @author <a href="mailto:oching@apache.org">Maria Odea Ching</a>
|
||||
*/
|
||||
public class ProxiedRepositoryTest
|
||||
extends AbstractArchivaTestCase
|
||||
{
|
||||
/**
|
||||
*
|
||||
*/
|
||||
protected void initialize()
|
||||
{
|
||||
super.initialize();
|
||||
|
||||
createTestRepo();
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a proxied repo which will be used for testing
|
||||
*/
|
||||
private void createTestRepo()
|
||||
{
|
||||
clickProxiedRepositories();
|
||||
|
||||
if ( isTextPresent( "There are no proxied repositories configured yet." ) )
|
||||
{
|
||||
clickLinkWithText( "Add Repository" );
|
||||
assertPage( "Configuration" );
|
||||
setFieldValue( "id", "test-proxied" );
|
||||
setFieldValue( "name", "Test Proxied Repository" );
|
||||
setFieldValue( "url", "http://test.com/test-proxied" );
|
||||
clickButtonWithValue( "Add Repository" );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( "Test Proxied Repository" );
|
||||
assertLinkPresent( "Edit Repository" );
|
||||
}
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test add proxied repo with invalid data
|
||||
*/
|
||||
public void testInvalidAddProxiedRepoConfiguration()
|
||||
{
|
||||
clickProxiedRepositories();
|
||||
|
||||
clickLinkWithText( "Add Repository" );
|
||||
assertPage( "Configuration" );
|
||||
|
||||
clickButtonWithValue( "Add Repository", false );
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "You must enter the repository identifier." );
|
||||
assertTextPresent( "You must enter the repository name." );
|
||||
assertTextPresent( "You must enter the repository URL." );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test edit proxied repo with valid data
|
||||
*/
|
||||
public void testValidEditProxiedRepoConfiguration()
|
||||
{
|
||||
clickProxiedRepositories();
|
||||
clickLinkWithText( "Edit Repository" );
|
||||
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "Edit Proxied Repository" );
|
||||
setFieldValue( "name", "Test Valid" );
|
||||
setFieldValue( "url", "http://valid.org/test-valid" );
|
||||
clickButtonWithValue( "Update Repository" );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( "Test Valid" );
|
||||
assertLinkPresent( "Edit Repository" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test edit proxied repo with invalid data
|
||||
*/
|
||||
public void testInvalidEditProxiedRepoConfiguration()
|
||||
{
|
||||
clickProxiedRepositories();
|
||||
clickLinkWithText( "Edit Repository" );
|
||||
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "Edit Proxied Repository" );
|
||||
setFieldValue( "name", "" );
|
||||
setFieldValue( "url", "" );
|
||||
clickButtonWithValue( "Update Repository", false );
|
||||
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "You must enter the repository name." );
|
||||
assertTextPresent( "You must enter the repository URL." );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test delete repository, unmodified entry and contents
|
||||
*/
|
||||
public void testDeleteRepoUnmodified()
|
||||
{
|
||||
clickProxiedRepositories();
|
||||
clickLinkWithText( "Delete Repository" );
|
||||
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "Delete Proxied Repository" );
|
||||
clickButtonWithValue( "Go" );
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( "Test Proxied Repository" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test delete repository including contents
|
||||
*/
|
||||
public void testDeleteRepoRemoveFromDisk()
|
||||
{
|
||||
clickProxiedRepositories();
|
||||
clickLinkWithText( "Delete Repository" );
|
||||
|
||||
assertPage( "Configuration" );
|
||||
clickLinkWithLocator( "deleteProxiedRepository_operationdelete-contents", false );
|
||||
clickButtonWithValue( "Go" );
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextNotPresent( "Test Proxied Repository" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
/**
|
||||
* Test delete repository, unmodified contents/entry deleted
|
||||
*/
|
||||
public void testDeleteRepoUnmodifiedContents()
|
||||
{
|
||||
clickProxiedRepositories();
|
||||
clickLinkWithText( "Delete Repository" );
|
||||
|
||||
assertPage( "Configuration" );
|
||||
clickLinkWithLocator( "deleteProxiedRepository_operationdelete-entry", false );
|
||||
clickButtonWithValue( "Go" );
|
||||
|
||||
assertPage( "Administration" );
|
||||
assertTextNotPresent( "Test Proxied Repository" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
/**
|
||||
* 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 removeTestRepo()
|
||||
{
|
||||
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();
|
||||
}
|
||||
|
||||
/**
|
||||
* Revert to original value
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void tearDown()
|
||||
throws Exception
|
||||
{
|
||||
removeTestRepo();
|
||||
|
||||
super.tearDown();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,129 @@
|
|||
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.
|
||||
*/
|
||||
|
||||
public class SearchTest
|
||||
extends AbstractArchivaTestCase
|
||||
{
|
||||
private static int PAGE_LOAD_WAIT = 1500;
|
||||
|
||||
public void testSearchNonExistingArtifact()
|
||||
{
|
||||
searchForArtifact( "asdf" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
assertTextPresent( "No results found" );
|
||||
}
|
||||
|
||||
public void testSearchExistingArtifact()
|
||||
{
|
||||
searchForArtifact( "artifact-a" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
assertPage( "Search Results" );
|
||||
|
||||
assertTextPresent( "artifact-a" );
|
||||
}
|
||||
|
||||
public void testViewSearchedArtifact()
|
||||
{
|
||||
// test viewing artifact (header link) listed in search results
|
||||
|
||||
searchForArtifact( "artifact-a" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
getSelenium().click( "link=artifact-a" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
assertPage( "Browse Repository" );
|
||||
|
||||
assertTextPresent( "artifact-a" );
|
||||
|
||||
//test viewing artifact listed in search results
|
||||
|
||||
searchForArtifact( "artifact-a" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
clickLinkWithText( "1.0" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
assertPage( "Browse Repository" );
|
||||
|
||||
assertTextPresent( "Artifact ID" );
|
||||
|
||||
assertTextPresent( "artifact-a" );
|
||||
|
||||
assertTextPresent( "Version" );
|
||||
|
||||
assertTextPresent( "1.0" );
|
||||
}
|
||||
|
||||
public void testBrowseSearchedArtifact()
|
||||
{
|
||||
// test viewing artifact listed in search results
|
||||
|
||||
searchForArtifact( "artifact-a" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
getSelenium().click("//p[1]/span/a[1]");
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
assertPage( "Browse Repository" );
|
||||
|
||||
assertTextPresent( "artifact-a" );
|
||||
}
|
||||
|
||||
public void testBrowseRepoFromSearchResults()
|
||||
{
|
||||
searchForArtifact( "artifact-a" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
clickLinkWithText( "[top]" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
assertPage( "Browse Repository" );
|
||||
}
|
||||
|
||||
private void searchForArtifact( String artifactId )
|
||||
{
|
||||
if ( !"Maven Archiva :: Quick Search".equals( getSelenium().getTitle() ) )
|
||||
{
|
||||
clickLinkWithText( "Search" );
|
||||
|
||||
waitPage( PAGE_LOAD_WAIT );
|
||||
|
||||
assertPage( "Quick Search" );
|
||||
}
|
||||
|
||||
setFieldValue( "quickSearch_q", artifactId );
|
||||
|
||||
clickButtonWithValue( "Submit" );
|
||||
}
|
||||
}
|
|
@ -0,0 +1,184 @@
|
|||
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.
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* Test archiva 'Settings'
|
||||
*
|
||||
* @author <a href="mailto:oching@apache.org">Maria Odea Ching</a>
|
||||
*/
|
||||
public class SettingsTest
|
||||
extends AbstractArchivaTestCase
|
||||
{
|
||||
/*
|
||||
public void testRunIndexer()
|
||||
{
|
||||
clickSettings();
|
||||
|
||||
clickLinkWithText( "Run Now" );
|
||||
waitPage();
|
||||
|
||||
assertPage( "Administration" );
|
||||
|
||||
logout();
|
||||
} */
|
||||
|
||||
public void testEditIndexDirectory()
|
||||
{
|
||||
clickEditConfiguration();
|
||||
|
||||
setFieldValue( "indexPath", getBasedir() + "/target/web-ui-index" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Administration" );
|
||||
assertTextPresent( getBasedir() + "/target/web-ui-index" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
public void testValidIndexSchedule()
|
||||
{
|
||||
clickEditConfiguration();
|
||||
|
||||
setFieldValue( "second", "*" );
|
||||
setFieldValue( "minute", "*" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Administration" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
public void testInvalidIndexSchedule()
|
||||
{
|
||||
clickEditConfiguration();
|
||||
setFieldValue( "second", "asdf" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "Invalid Cron Expression" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
public void testEditProxyHost()
|
||||
{
|
||||
clickEditConfiguration();
|
||||
|
||||
setFieldValue( "proxy.host", "asdf" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Administration" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
public void testValidProxyPort()
|
||||
{
|
||||
clickEditConfiguration();
|
||||
|
||||
setFieldValue( "proxy.port", "32143" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Administration" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
public void testInvalidProxyPort()
|
||||
{
|
||||
clickEditConfiguration();
|
||||
setFieldValue( "proxy.port", "asdf" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Configuration" );
|
||||
assertTextPresent( "Port" );
|
||||
assertTextPresent( "Invalid field value for field \"proxy.port\"" );
|
||||
|
||||
setFieldValue( "proxy.port", "-1" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Administration" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
public void testEditProxyCredentials()
|
||||
{
|
||||
clickEditConfiguration();
|
||||
|
||||
setFieldValue( "proxy.username", "asdf" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Administration" );
|
||||
|
||||
logout();
|
||||
}
|
||||
|
||||
/**
|
||||
* Click Edit Configuration link
|
||||
*/
|
||||
private void clickEditConfiguration()
|
||||
{
|
||||
clickSettings();
|
||||
|
||||
clickLinkWithText( "Edit Configuration" );
|
||||
assertPage( "Configuration" );
|
||||
}
|
||||
|
||||
/**
|
||||
* Click Settings from the navigation menu
|
||||
*/
|
||||
private void clickSettings()
|
||||
{
|
||||
goToLoginPage();
|
||||
submitLoginPage( adminUsername, adminPassword );
|
||||
|
||||
clickLinkWithText( "Settings" );
|
||||
assertPage( "Administration" );
|
||||
}
|
||||
|
||||
public void tearDown()
|
||||
throws Exception
|
||||
{
|
||||
clickEditConfiguration();
|
||||
setFieldValue( "indexPath", getBasedir() + "/target/web-ui-index" );
|
||||
setFieldValue( "second", "0" );
|
||||
setFieldValue( "minute", "0,30" );
|
||||
setFieldValue( "hour", "*" );
|
||||
setFieldValue( "dayOfMonth", "*" );
|
||||
setFieldValue( "month", "*" );
|
||||
setFieldValue( "dayOfWeek", "?" );
|
||||
setFieldValue( "year", "" );
|
||||
setFieldValue( "proxy.port", "8080" );
|
||||
setFieldValue( "proxy.host", "" );
|
||||
setFieldValue( "proxy.username", "" );
|
||||
setFieldValue( "proxy.password", "" );
|
||||
clickButtonWithValue( "Save Configuration" );
|
||||
waitPage();
|
||||
assertPage( "Administration" );
|
||||
|
||||
logout();
|
||||
|
||||
super.tearDown();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
<configuration />
|
|
@ -0,0 +1 @@
|
|||
<configuration />
|
|
@ -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
|
|
@ -0,0 +1 @@
|
|||
0360f14347d5502114ba7afe4ea2e07f
|
|
@ -0,0 +1 @@
|
|||
4a667b9923fb936409b96c8242bebc2f96f374f5
|
|
@ -0,0 +1,25 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-a</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<version>1.0</version>
|
||||
<name>artifact-a</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-b</artifactId>
|
||||
<version>2.0</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<extensions>
|
||||
<extension>
|
||||
<groupId>org.apache.maven.wagon</groupId>
|
||||
<artifactId>wagon-webdav</artifactId>
|
||||
</extension>
|
||||
</extensions>
|
||||
</build>
|
||||
</project>
|
|
@ -0,0 +1 @@
|
|||
cdf69ffbcb888aacea6cfeaf479fefd1
|
|
@ -0,0 +1 @@
|
|||
f6a384b1ab62ed45ae7dee1a059815e94bbc7fa6
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><metadata>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-a</artifactId>
|
||||
<version>1.0</version>
|
||||
<versioning>
|
||||
<versions>
|
||||
<version>1.0</version>
|
||||
</versions>
|
||||
<lastUpdated>20070417090928</lastUpdated>
|
||||
</versioning>
|
||||
</metadata>
|
|
@ -0,0 +1 @@
|
|||
bc87573a595a2c387b5baa4ad7d06743
|
|
@ -0,0 +1 @@
|
|||
e9ecaaa14a3c09b07206980c15749a631dbc986a
|
|
@ -0,0 +1 @@
|
|||
16a308257949f23afa5d1f1dec41aa44
|
|
@ -0,0 +1 @@
|
|||
36a3a9cc35b8ca0d73998d7b39d290b489800a22
|
|
@ -0,0 +1,25 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-b</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<version>2.0</version>
|
||||
<name>artifact-b</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-c</artifactId>
|
||||
<version>3.0</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<extensions>
|
||||
<extension>
|
||||
<groupId>org.apache.maven.wagon</groupId>
|
||||
<artifactId>wagon-webdav</artifactId>
|
||||
</extension>
|
||||
</extensions>
|
||||
</build>
|
||||
</project>
|
|
@ -0,0 +1 @@
|
|||
be5b8f8539a62b5935793ebeb87215fd
|
|
@ -0,0 +1 @@
|
|||
012a658d4a4f70aa3e8dd4b2db67020817b7dfcc
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><metadata>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-b</artifactId>
|
||||
<version>2.0</version>
|
||||
<versioning>
|
||||
<versions>
|
||||
<version>2.0</version>
|
||||
</versions>
|
||||
<lastUpdated>20070417090908</lastUpdated>
|
||||
</versioning>
|
||||
</metadata>
|
|
@ -0,0 +1 @@
|
|||
bedfccc27fc7dc262d5c99a7aa8b83d8
|
|
@ -0,0 +1 @@
|
|||
4902ea6b16838ff26f9136460c4394b0ad7cc7f5
|
|
@ -0,0 +1 @@
|
|||
853a10a201f8a296e37e856615c5349c
|
|
@ -0,0 +1 @@
|
|||
5155da8820ed77c43e983c1244d94a3b27bf08f7
|
|
@ -0,0 +1,26 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-c</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<version>3.0</version>
|
||||
<name>artifact-c</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>3.8.1</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<extensions>
|
||||
<extension>
|
||||
<groupId>org.apache.maven.wagon</groupId>
|
||||
<artifactId>wagon-webdav</artifactId>
|
||||
</extension>
|
||||
</extensions>
|
||||
</build>
|
||||
</project>
|
|
@ -0,0 +1 @@
|
|||
4df0417579b1492f37da14316adb85af
|
|
@ -0,0 +1 @@
|
|||
c3b007acd9c17b80753b39a4121255965e7e2e65
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><metadata>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-c</artifactId>
|
||||
<version>3.0</version>
|
||||
<versioning>
|
||||
<versions>
|
||||
<version>3.0</version>
|
||||
</versions>
|
||||
<lastUpdated>20070417090835</lastUpdated>
|
||||
</versioning>
|
||||
</metadata>
|
|
@ -0,0 +1 @@
|
|||
74d58d97e78d5e51cc02c489c5edba0d
|
|
@ -0,0 +1 @@
|
|||
5c7571eb35248be0f65758783b036e8f7899c146
|
|
@ -0,0 +1 @@
|
|||
55f498a518e1151ce2e54daa674691de
|
|
@ -0,0 +1 @@
|
|||
730551bde461564d3f8a7e0178ef9bc54a86d2dd
|
|
@ -0,0 +1,25 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-s</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<version>0.1</version>
|
||||
<name>artifact-s</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-a</artifactId>
|
||||
<version>1.0</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<extensions>
|
||||
<extension>
|
||||
<groupId>org.apache.maven.wagon</groupId>
|
||||
<artifactId>wagon-webdav</artifactId>
|
||||
</extension>
|
||||
</extensions>
|
||||
</build>
|
||||
</project>
|
|
@ -0,0 +1 @@
|
|||
746ba2848229dbc1c9683ece0e7f02c8
|
|
@ -0,0 +1 @@
|
|||
0d068f63069a86d982075a1dca7fe74fd95a29df
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><metadata>
|
||||
<groupId>org.apache.maven.archiva.web.test</groupId>
|
||||
<artifactId>artifact-s</artifactId>
|
||||
<version>0.1</version>
|
||||
<versioning>
|
||||
<versions>
|
||||
<version>0.1</version>
|
||||
</versions>
|
||||
<lastUpdated>20070417090721</lastUpdated>
|
||||
</versioning>
|
||||
</metadata>
|
|
@ -0,0 +1 @@
|
|||
baa0ad0afaba9cee66ec262b38f796b6
|
|
@ -0,0 +1 @@
|
|||
dea84d579f673d2d87c7bd47e4318cdf8e59e4d0
|
|
@ -27,4 +27,10 @@
|
|||
driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
|
||||
url="jdbc:derby:target/database/users;create=true"
|
||||
/>
|
||||
|
||||
<Resource name="jdbc/archiva" auth="Container" type="javax.sql.DataSource"
|
||||
username="sa"
|
||||
password=""
|
||||
driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
|
||||
url="jdbc:derby:database/archiva;create=true" />
|
||||
</Context>
|
||||
|
|
|
@ -141,12 +141,20 @@
|
|||
<dependency>
|
||||
<groupId>org.codehaus.plexus.registry</groupId>
|
||||
<artifactId>plexus-registry-api</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.registry</groupId>
|
||||
<artifactId>plexus-registry-commons</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.cache</groupId>
|
||||
<artifactId>plexus-cache-api</artifactId>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.cache</groupId>
|
||||
<artifactId>plexus-cache-ehcache</artifactId>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
|
|
|
@ -31,12 +31,10 @@
|
|||
<decorator:title default="Maven Archiva"/>
|
||||
</title>
|
||||
|
||||
<style type="text/css" media="all">
|
||||
@import url( "<c:url value="/css/maven-base.css" />" );
|
||||
@import url( "<c:url value="/css/maven-theme.css" />" );
|
||||
@import url( "<c:url value="/css/pss/table.css" />" );
|
||||
@import url( "<c:url value="/css/site.css" />" );
|
||||
</style>
|
||||
<link rel="stylesheet" href="<c:url value="/css/maven-base.css"/>" type="text/css" media="all"/>
|
||||
<link rel="stylesheet" href="<c:url value="/css/maven-theme.css"/>" type="text/css" media="all"/>
|
||||
<link rel="stylesheet" href="<c:url value="/css/pss/table.css"/>" type="text/css" media="all"/>
|
||||
<link rel="stylesheet" href="<c:url value="/css/site.css"/>" type="text/css" media="all"/>
|
||||
<link rel="stylesheet" href="<c:url value="/css/print.css"/>" type="text/css" media="print"/>
|
||||
<link rel="shortcut icon" href="<c:url value="/favicon.ico" />" />
|
||||
<script type="text/javascript" src="<c:url value="/js/scriptaculous/prototype.js"/>"></script>
|
||||
|
|
|
@ -15,8 +15,7 @@
|
|||
~ limitations under the License.
|
||||
-->
|
||||
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<parent>
|
||||
<groupId>org.apache.maven.archiva</groupId>
|
||||
<artifactId>archiva-parent</artifactId>
|
||||
|
|
|
@ -105,6 +105,16 @@ sha1sum $CL/maven-metadata.xml > $CL/maven-metadata.xml.sha1
|
|||
retval=$?; if [ $retval != 0 ]; then exit $retval; fi
|
||||
retval=$?; if [ $retval != 0 ]; then exit $retval; fi
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# Cica.es synchronization: sync the central repository to Cica.es
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
[ "$MODE" = "batch" ] && echo && echo "Press any key to run the sync to Cica, or hit ^C to quit." && echo
|
||||
|
||||
./synchronize-central-to-cica.sh $syncProperties
|
||||
retval=$?; if [ $retval != 0 ]; then exit $retval; fi
|
||||
retval=$?; if [ $retval != 0 ]; then exit $retval; fi
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# Copy the mod_rewrite rules to the Maven 1.x repository
|
||||
# ------------------------------------------------------------------------
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
#!/bin/sh
|
||||
|
||||
CONTACTS="Daniel brolund <daniel.brolund@agical.com>"
|
||||
MODE=rsync_ssh
|
||||
|
||||
FROM=mavensync@shell.sourceforge.net:/home/groups/r/rm/rmock/htdocs/repository
|
||||
GROUP_DIR=com/agical/rmock
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/sh
|
||||
|
||||
CONTACT="Vlad Skarzhevskyy <skarzhevskyy@gmail.com>"
|
||||
MODE=rsync
|
||||
|
||||
FROM=mavensync@pyx4me.com::maven2-release
|
||||
GROUP_DIR=com/pyx4me/
|
||||
|
||||
NO_SSH=true
|
|
@ -0,0 +1,7 @@
|
|||
#!/bin/sh
|
||||
|
||||
CONTACTS="Leonid Vysochyn <leonid.vysochyn@gmail.com>"
|
||||
MODE=rsync_ssh
|
||||
|
||||
FROM=mavensync@shell.sourceforge.net:/home/groups/j/jx/jxls/htdocs/repository/releases
|
||||
GROUP_DIR=net/sf/jxls
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/sh
|
||||
|
||||
CONTACTS="Christian Schulte <cs@jdtaus.org>, jDTAUS Support <support@jdtaus.org>"
|
||||
MODE=rsync
|
||||
|
||||
FROM=rsync://repository.jdtaus.org/repository
|
||||
GROUP_DIR=org/jdtaus/
|
||||
|
||||
NO_SSH=true
|
31
pom.xml
31
pom.xml
|
@ -21,7 +21,7 @@
|
|||
<parent>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-parent</artifactId>
|
||||
<version>4</version>
|
||||
<version>5</version>
|
||||
<relativePath>../pom/maven/pom.xml</relativePath>
|
||||
</parent>
|
||||
<groupId>org.apache.maven.archiva</groupId>
|
||||
|
@ -86,6 +86,10 @@
|
|||
<url>http://svn.apache.org/viewcvs.cgi/maven/archiva/trunk</url>
|
||||
</scm>
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>apache.releases</id>
|
||||
<url>scpexe://people.apache.org/www/people.apache.org/builds/maven/archiva/${version}/m2-staging-repository</url>
|
||||
</repository>
|
||||
<site>
|
||||
<id>apache.website</id>
|
||||
<url>
|
||||
|
@ -136,6 +140,11 @@
|
|||
</tagBase>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.modello</groupId>
|
||||
<artifactId>modello-maven-plugin</artifactId>
|
||||
<version>1.0-alpha-15</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
</build>
|
||||
|
@ -183,6 +192,26 @@
|
|||
<artifactId>plexus-utils</artifactId>
|
||||
<version>1.4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.registry</groupId>
|
||||
<artifactId>plexus-registry-api</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.registry</groupId>
|
||||
<artifactId>plexus-registry-commons</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.cache</groupId>
|
||||
<artifactId>plexus-cache-api</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus.cache</groupId>
|
||||
<artifactId>plexus-cache-ehcache</artifactId>
|
||||
<version>1.0-alpha-2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
|
|
Loading…
Reference in New Issue