Browse Source

Package refactoring

pull/62/head
Martin Stockhammer 2 years ago
parent
commit
d3fd08be17
23 changed files with 379 additions and 65 deletions
  1. 1
    0
      archiva-modules/archiva-maven/archiva-maven-repository/src/main/java/org/apache/archiva/maven/repository/content/ManagedDefaultRepositoryContent.java
  2. 1
    0
      archiva-modules/archiva-web/archiva-web-common/src/main/java/org/apache/archiva/web/api/DefaultFileUploadService.java
  3. 313
    0
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/AbstractRestServicesTest.java
  4. 2
    5
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/RuntimeInfoServiceTest.java
  5. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/TestRepositorySessionFactoryBean.java
  6. 6
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/mock/security/UserRepositoriesStub.java
  7. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/AbstractDownloadTest.java
  8. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadArtifactFromQueryTest.java
  9. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadArtifactsTest.java
  10. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadMergedIndexNonDefaultPathTest.java
  11. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadMergedIndexTest.java
  12. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadSnapshotTest.java
  13. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/RemoteRepositoryConnectivityCheckTest.java
  14. 23
    14
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/upload/UploadArtifactsTest.java
  15. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/webtest/memory/TestMetadataRepository.java
  16. 2
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/webtest/memory/TestMetadataResolver.java
  17. 1
    2
      archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/webtest/memory/TestRepositorySessionFactory.java
  18. 2
    1
      archiva-modules/archiva-web/archiva-web-common/src/test/resources/log4j2-test.xml
  19. 2
    2
      archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-artifacts-download.xml
  20. 2
    2
      archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-merge-index-download.xml
  21. 3
    3
      archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-rss-servlet.xml
  22. 2
    2
      archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-test-upload.xml
  23. 1
    1
      archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-with-jcr.xml

+ 1
- 0
archiva-modules/archiva-maven/archiva-maven-repository/src/main/java/org/apache/archiva/maven/repository/content/ManagedDefaultRepositoryContent.java View File



private StorageAsset getAssetByPath( String assetPath ) private StorageAsset getAssetByPath( String assetPath )
{ {
log.debug( "Get asset {}", assetPath );
return getStorage( ).getAsset( assetPath ); return getStorage( ).getAsset( assetPath );
} }



+ 1
- 0
archiva-modules/archiva-web/archiva-web-common/src/main/java/org/apache/archiva/web/api/DefaultFileUploadService.java View File



org.apache.archiva.repository.ManagedRepository repository = repositoryRegistry.getManagedRepository(repositoryId); org.apache.archiva.repository.ManagedRepository repository = repositoryRegistry.getManagedRepository(repositoryId);


log.debug( "Finding artifact path for {}, {}, {}, {}", groupId, artifactId, version, packaging );
ItemSelector selector = ArchivaItemSelector.builder( ) ItemSelector selector = ArchivaItemSelector.builder( )
.withNamespace( groupId ) .withNamespace( groupId )
.withProjectId( artifactId ) .withProjectId( artifactId )

+ 313
- 0
archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/AbstractRestServicesTest.java View File

package org.apache.archiva.web;/*
* 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 com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
import junit.framework.TestCase;
import org.apache.archiva.redback.integration.security.role.RedbackRoleConstants;
import org.apache.archiva.redback.rest.api.model.User;
import org.apache.archiva.redback.rest.api.services.LdapGroupMappingService;
import org.apache.archiva.redback.rest.api.services.LoginService;
import org.apache.archiva.redback.rest.api.services.RoleManagementService;
import org.apache.archiva.redback.rest.api.services.UserService;
import org.apache.archiva.redback.rest.api.services.v2.AuthenticationService;
import org.apache.archiva.redback.rest.services.BaseSetup;
import org.apache.archiva.redback.rest.services.FakeCreateAdminService;
import org.apache.commons.lang3.SystemUtils;
import org.apache.cxf.common.util.Base64Utility;
import org.apache.cxf.jaxrs.client.JAXRSClientFactory;
import org.apache.cxf.jaxrs.client.WebClient;
import org.apache.cxf.transport.servlet.CXFServlet;
import org.eclipse.jetty.server.HttpConnectionFactory;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.ServerConnector;
import org.eclipse.jetty.server.session.SessionHandler;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;
import org.junit.After;
import org.junit.Before;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.context.ContextLoaderListener;

import javax.ws.rs.core.MediaType;
import java.util.Collections;
import java.util.concurrent.atomic.AtomicReference;

/**
* @author Olivier Lamy
*/
@RunWith(JUnit4.class)
public abstract class AbstractRestServicesTest
extends TestCase
{
protected Logger log = LoggerFactory.getLogger( getClass() );

private static AtomicReference<Server> server = new AtomicReference<>();
private static AtomicReference<ServerConnector> serverConnector = new AtomicReference<>();

public String authorizationHeader = getAdminAuthzHeader();

/**
* Returns the server that was started, or null if not initialized before.
* @return
*/
public Server getServer() {
return this.server.get();
}

public int getServerPort() {
ServerConnector connector = serverConnector.get();
if (connector!=null) {
return connector.getLocalPort();
} else {
return 0;
}
}

JacksonJaxbJsonProvider getJsonProvider() {
JacksonJaxbJsonProvider provider = new JacksonJaxbJsonProvider( );
ObjectMapper mapper = new ObjectMapper( );
mapper.registerModule( new JavaTimeModule( ) );
provider.setMapper( mapper );
return provider;
}

/**
* Returns true, if the server does exist and is running.
* @return true, if server does exist and is running.
*/
public boolean isServerRunning() {
return this.server.get() != null && this.server.get().isRunning();
}

/**
* Returns the timeout in ms for rest requests. The timeout can be set by
* the system property <code>rest.test.timeout</code>.
* @return The timeout value in ms.
*/
public long getTimeout()
{
return Long.getLong( "rest.test.timeout", 1000000 );
}

public static String encode( String uid, String password )
{
return "Basic " + Base64Utility.encode( ( uid + ":" + password ).getBytes() );
}

public static String getAdminAuthzHeader()
{
return encode( RedbackRoleConstants.ADMINISTRATOR_ACCOUNT_NAME, BaseSetup.getAdminPwd() );
}

protected String getSpringConfigLocation()
{
return "classpath*:spring-context.xml,classpath*:META-INF/spring-context.xml";
}


protected String getRestServicesPath()
{
return "restServices";
}

@Before
public void startServer()
throws Exception
{
log.info("Starting server");
log.info( "User config {}", System.getProperty( "archiva.user.configFileName" ) );
log.info( "Appserver base {}", System.getProperty( "appserver.base" ) );
Server myServer = new Server();
this.server.set(myServer);
this.serverConnector.set(new ServerConnector( myServer, new HttpConnectionFactory()));
myServer.addConnector(serverConnector.get());

ServletHolder servletHolder = new ServletHolder( new CXFServlet() );
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setResourceBase( SystemUtils.JAVA_IO_TMPDIR );
context.setSessionHandler( new SessionHandler( ) );
context.addServlet( servletHolder, "/" + getRestServicesPath() + "/*" );
context.setInitParameter( "contextConfigLocation", getSpringConfigLocation() );
context.addEventListener(new ContextLoaderListener());

getServer().setHandler( context );
getServer().start();

if (log.isDebugEnabled())
{
log.debug( "Jetty dump: {}", getServer().dump() );
}

log.info( "Started server on port {}", getServerPort() );

UserService userService = getUserService();

User adminUser = new User();
adminUser.setUsername( RedbackRoleConstants.ADMINISTRATOR_ACCOUNT_NAME );
adminUser.setPassword( BaseSetup.getAdminPwd() );
adminUser.setFullName( "the admin user" );
adminUser.setEmail( "toto@toto.fr" );
if( !userService.createAdminUser( adminUser ) ) {
log.info( "Could not create admin user." );
}

FakeCreateAdminService fakeCreateAdminService = getFakeCreateAdminService();
//assertTrue( res.booleanValue() );

}

protected FakeCreateAdminService getFakeCreateAdminService()
{
return JAXRSClientFactory.create(
"http://localhost:" + getServerPort()+ "/" + getRestServicesPath() + "/fakeCreateAdminService/",
FakeCreateAdminService.class, Collections.singletonList( getJsonProvider() ) );
}

@After
public void stopServer()
throws Exception
{
if ( getServer() != null )
{
log.info("Stopping server");
getServer().stop();
}
}

protected UserService getUserService()
{

return getUserService( null );
}

// START SNIPPET: get-user-service
protected UserService getUserService( String authzHeader )
{
UserService service =
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/redbackServices/",
UserService.class, Collections.singletonList( new JacksonJaxbJsonProvider() ) );

// time out for debuging purpose
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );

if ( authzHeader != null )
{
WebClient.client( service ).header( "Authorization", authzHeader );
}
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());
WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );

return service;
}
// END SNIPPET: get-user-service

protected RoleManagementService getRoleManagementService( String authzHeader )
{
RoleManagementService service =
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/redbackServices/",
RoleManagementService.class,
Collections.singletonList( new JacksonJaxbJsonProvider() ) );

// for debuging purpose
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );

if ( authzHeader != null )
{
WebClient.client( service ).header( "Authorization", authzHeader );
}
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());

WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );

return service;
}

protected LoginService getLoginService( String authzHeader )
{
LoginService service =
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/redbackServices/",
LoginService.class, Collections.singletonList( getJsonProvider() ) );

// for debuging purpose
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );

if ( authzHeader != null )
{
WebClient.client( service ).header( "Authorization", authzHeader );
}
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());

WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );

return service;
}

protected AuthenticationService getLoginServiceV2( String authzHeader )
{
AuthenticationService service =
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/v2/redback/",
AuthenticationService.class, Collections.singletonList( getJsonProvider() ) );

// for debuging purpose
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );

if ( authzHeader != null )
{
WebClient.client( service ).header( "Authorization", authzHeader );
}
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());

WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );

return service;
}


protected LdapGroupMappingService getLdapGroupMappingService( String authzHeader )
{
LdapGroupMappingService service =
JAXRSClientFactory.create( "http://localhost:" + getServerPort() + "/" + getRestServicesPath() + "/redbackServices/",
LdapGroupMappingService.class,
Collections.singletonList( getJsonProvider() ) );

// for debuging purpose
WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( getTimeout() );

if ( authzHeader != null )
{
WebClient.client( service ).header( "Authorization", authzHeader );
}
WebClient.client(service).header("Referer","http://localhost:"+getServerPort());

WebClient.client( service ).accept( MediaType.APPLICATION_JSON_TYPE );
WebClient.client( service ).type( MediaType.APPLICATION_JSON_TYPE );

return service;
}


}

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/RuntimeInfoServiceTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/RuntimeInfoServiceTest.java View File

package org.apache.archiva;
package org.apache.archiva.web;
/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY


import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider; import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
import org.apache.archiva.redback.rest.services.AbstractRestServicesTest; import org.apache.archiva.redback.rest.services.AbstractRestServicesTest;
import org.apache.archiva.remotedownload.DownloadArtifactsTest;
import org.apache.archiva.test.utils.ArchivaBlockJUnit4ClassRunner; import org.apache.archiva.test.utils.ArchivaBlockJUnit4ClassRunner;
import org.apache.archiva.web.api.RuntimeInfoService; import org.apache.archiva.web.api.RuntimeInfoService;
import org.apache.archiva.web.model.ApplicationRuntimeInfo; import org.apache.archiva.web.model.ApplicationRuntimeInfo;
import java.io.IOException; import java.io.IOException;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Collections; import java.util.Collections;


/** /**

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/TestRepositorySessionFactoryBean.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/TestRepositorySessionFactoryBean.java View File

package org.apache.archiva;
package org.apache.archiva.web;


/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/security/UserRepositoriesStub.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/mock/security/UserRepositoriesStub.java View File

package org.apache.archiva.security;
package org.apache.archiva.web.mock.security;


/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
*/ */


import org.apache.archiva.admin.model.beans.ManagedRepository; import org.apache.archiva.admin.model.beans.ManagedRepository;
import org.apache.archiva.security.AccessDeniedException;
import org.apache.archiva.security.ArchivaSecurityException;
import org.apache.archiva.security.PrincipalNotFoundException;
import org.apache.archiva.security.UserRepositories;


import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/remotedownload/AbstractDownloadTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/AbstractDownloadTest.java View File

package org.apache.archiva.remotedownload;
package org.apache.archiva.web.remotedownload;
/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/remotedownload/DownloadArtifactFromQueryTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadArtifactFromQueryTest.java View File

package org.apache.archiva.remotedownload;
package org.apache.archiva.web.remotedownload;
/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/remotedownload/DownloadArtifactsTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadArtifactsTest.java View File

package org.apache.archiva.remotedownload;
package org.apache.archiva.web.remotedownload;
/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/remotedownload/DownloadMergedIndexNonDefaultPathTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadMergedIndexNonDefaultPathTest.java View File

package org.apache.archiva.remotedownload;
package org.apache.archiva.web.remotedownload;
/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/remotedownload/DownloadMergedIndexTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadMergedIndexTest.java View File

package org.apache.archiva.remotedownload;
package org.apache.archiva.web.remotedownload;
/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/remotedownload/DownloadSnapshotTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/DownloadSnapshotTest.java View File

package org.apache.archiva.remotedownload;
package org.apache.archiva.web.remotedownload;


/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/remotedownload/RemoteRepositoryConnectivityCheckTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/remotedownload/RemoteRepositoryConnectivityCheckTest.java View File

package org.apache.archiva.remotedownload;
package org.apache.archiva.web.remotedownload;


/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/upload/UploadArtifactsTest.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/upload/UploadArtifactsTest.java View File

package org.apache.archiva.upload;
package org.apache.archiva.web.upload;
/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY


import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider; import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
import org.apache.archiva.configuration.ArchivaConfiguration; import org.apache.archiva.configuration.ArchivaConfiguration;
import org.apache.archiva.redback.rest.services.AbstractRestServicesTest;
import org.apache.archiva.redback.rest.services.FakeCreateAdminService;
import org.apache.archiva.rest.api.services.ArchivaRestServiceException; import org.apache.archiva.rest.api.services.ArchivaRestServiceException;
import org.apache.archiva.test.utils.ArchivaBlockJUnit4ClassRunner; import org.apache.archiva.test.utils.ArchivaBlockJUnit4ClassRunner;
import org.apache.archiva.web.AbstractRestServicesTest;
import org.apache.archiva.web.api.FileUploadService; import org.apache.archiva.web.api.FileUploadService;
import org.apache.archiva.web.model.FileMetadata; import org.apache.archiva.web.model.FileMetadata;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
*/ */
@RunWith(ArchivaBlockJUnit4ClassRunner.class) @RunWith(ArchivaBlockJUnit4ClassRunner.class)
public class UploadArtifactsTest public class UploadArtifactsTest
extends AbstractRestServicesTest {
extends AbstractRestServicesTest
{


private static String PREVIOUS_ARCHIVA_PATH; private static String PREVIOUS_ARCHIVA_PATH;
private AtomicReference<Path> projectDir = new AtomicReference<>( ); private AtomicReference<Path> projectDir = new AtomicReference<>( );
throws Exception throws Exception
{ {
PREVIOUS_ARCHIVA_PATH = System.getProperty(ArchivaConfiguration.USER_CONFIG_PROPERTY); PREVIOUS_ARCHIVA_PATH = System.getProperty(ArchivaConfiguration.USER_CONFIG_PROPERTY);
System.setProperty( ArchivaConfiguration.USER_CONFIG_PROPERTY,
if (System.getProperties().containsKey( "test.resources.path" ))
{
System.setProperty( ArchivaConfiguration.USER_CONFIG_PROPERTY,
System.getProperty( "test.resources.path" ) + "/archiva.xml" ); System.getProperty( "test.resources.path" ) + "/archiva.xml" );
} else {
Path path = Paths.get( "src/test/resources/archiva.xml" ).toAbsolutePath();
System.setProperty( ArchivaConfiguration.USER_CONFIG_PROPERTY,
path.toString() );

}
System.err.println( "USER_CONFIG_DIR " + System.getProperty( ArchivaConfiguration.USER_CONFIG_PROPERTY ) );
} }




} }
projectDir.compareAndSet(null, newVal); projectDir.compareAndSet(null, newVal);
} }
System.err.println( "project dir: " + projectDir.get( ).toString( ) );
return projectDir.get(); return projectDir.get();
} }


try { try {
FileUploadService service = getUploadService(); FileUploadService service = getUploadService();
Path file = getProjectDirectory().resolve("src/test/repositories/snapshot-repo/org/apache/archiva/archiva-model/1.4-M4-SNAPSHOT/archiva-model-1.4-M4-20130425.081822-1.jar"); Path file = getProjectDirectory().resolve("src/test/repositories/snapshot-repo/org/apache/archiva/archiva-model/1.4-M4-SNAPSHOT/archiva-model-1.4-M4-20130425.081822-1.jar");
Path targetDir = Paths.get("target/testDelete").toAbsolutePath();
Path targetDir = getProjectDirectory().resolve("target/testDelete").toAbsolutePath();
if (!Files.exists(targetDir)) Files.createDirectories(targetDir); if (!Files.exists(targetDir)) Files.createDirectories(targetDir);
Path tempDir = SystemUtils.getJavaIoTmpDir().toPath(); Path tempDir = SystemUtils.getJavaIoTmpDir().toPath();
testFile = Files.createTempFile(targetDir, "TestFile", ".txt"); testFile = Files.createTempFile(targetDir, "TestFile", ".txt");


@Test @Test
public void failSaveFileWithBadParams() throws IOException, ArchivaRestServiceException { public void failSaveFileWithBadParams() throws IOException, ArchivaRestServiceException {
Path path = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.jar");
Path path = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.jar");
Files.deleteIfExists(path); Files.deleteIfExists(path);
FileUploadService service = getUploadService(); FileUploadService service = getUploadService();
Path file = getProjectDirectory().resolve("src/test/repositories/snapshot-repo/org/apache/archiva/archiva-model/1.4-M4-SNAPSHOT/archiva-model-1.4-M4-20130425.081822-1.jar"); Path file = getProjectDirectory().resolve("src/test/repositories/snapshot-repo/org/apache/archiva/archiva-model/1.4-M4-SNAPSHOT/archiva-model-1.4-M4-20130425.081822-1.jar");
} catch (ClientErrorException e) { } catch (ClientErrorException e) {
assertEquals(422, e.getResponse().getStatus()); assertEquals(422, e.getResponse().getStatus());
} }
assertFalse(Files.exists(Paths.get("target/test-testSave.4")));
assertFalse(Files.exists(getProjectDirectory().resolve("target/test-testSave.4")));
} }


@Test @Test
public void saveFile() throws IOException, ArchivaRestServiceException { public void saveFile() throws IOException, ArchivaRestServiceException {
log.debug("Starting saveFile()"); log.debug("Starting saveFile()");


Path path = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.jar");
Path path = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.jar");
log.debug("Jar exists: {}",Files.exists(path)); log.debug("Jar exists: {}",Files.exists(path));
Files.deleteIfExists(path); Files.deleteIfExists(path);
path = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.pom");
path = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.pom");
Files.deleteIfExists(path); Files.deleteIfExists(path);
FileUploadService service = getUploadService(); FileUploadService service = getUploadService();
service.clearUploadedFiles(); service.clearUploadedFiles();
public void saveFileWithOtherExtension() throws IOException, ArchivaRestServiceException { public void saveFileWithOtherExtension() throws IOException, ArchivaRestServiceException {
log.debug("Starting saveFileWithOtherExtension()"); log.debug("Starting saveFileWithOtherExtension()");


Path path = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.bin");
Path path = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.bin");
log.debug("Jar exists: {}",Files.exists(path)); log.debug("Jar exists: {}",Files.exists(path));
Files.deleteIfExists(path); Files.deleteIfExists(path);
Path pomPath = Paths.get("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.pom");
Path pomPath = getProjectDirectory().resolve("target/appserver-base/repositories/internal/org/apache/archiva/archiva-model/1.2/archiva-model-1.2.pom");
Files.deleteIfExists(pomPath); Files.deleteIfExists(pomPath);
FileUploadService service = getUploadService(); FileUploadService service = getUploadService();
service.clearUploadedFiles(); service.clearUploadedFiles();

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/webtest/memory/TestMetadataRepository.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/webtest/memory/TestMetadataRepository.java View File

package org.apache.archiva.webtest.memory;
package org.apache.archiva.web.webtest.memory;


/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/webtest/memory/TestMetadataResolver.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/webtest/memory/TestMetadataResolver.java View File

package org.apache.archiva.webtest.memory;
package org.apache.archiva.web.webtest.memory;


/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* "License"); you may not use this file except in compliance * "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/webtest/memory/TestRepositorySessionFactory.java → archiva-modules/archiva-web/archiva-web-common/src/test/java/org/apache/archiva/web/webtest/memory/TestRepositorySessionFactory.java View File

package org.apache.archiva.webtest.memory;
package org.apache.archiva.web.webtest.memory;


/* /*
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* with the License. You may obtain a copy of the License at * with the License. You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, * Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an * software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

+ 2
- 1
archiva-modules/archiva-web/archiva-web-common/src/test/resources/log4j2-test.xml View File



<logger name="org.springframework" level="error"/> <logger name="org.springframework" level="error"/>
<logger name="org.apache.archiva" level="error"/> <logger name="org.apache.archiva" level="error"/>
<logger name="org.apache.archiva.web" level="info"/>
<logger name="org.apache.archiva.web" level="debug"/>
<logger name="org.apache.archiva.repository" level="debug"/>
<logger name="org.apache.commons.configuration" level="error"/> <logger name="org.apache.commons.configuration" level="error"/>
<logger name="org.apache.archiva.scheduler.indexing" level="info"/> <logger name="org.apache.archiva.scheduler.indexing" level="info"/>
<logger name="org.apache.archiva.remotedownload" level="info"/> <logger name="org.apache.archiva.remotedownload" level="info"/>

+ 2
- 2
archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-artifacts-download.xml View File

</property> </property>
</bean> </bean>


<bean name="repositorySessionFactory" class="org.apache.archiva.webtest.memory.TestRepositorySessionFactory"/>
<bean name="repositorySessionFactory" class="org.apache.archiva.web.webtest.memory.TestRepositorySessionFactory"/>


<alias name="userManager#configurable" alias="userManager#default"/> <alias name="userManager#configurable" alias="userManager#default"/>


<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
<constructor-arg> <constructor-arg>
<value>jcr</value> <value>jcr</value>
</constructor-arg> </constructor-arg>

+ 2
- 2
archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-merge-index-download.xml View File

</property> </property>
</bean> </bean>


<bean name="repositorySessionFactory" class="org.apache.archiva.webtest.memory.TestRepositorySessionFactory"/>
<bean name="repositorySessionFactory" class="org.apache.archiva.web.webtest.memory.TestRepositorySessionFactory"/>
<alias name="userConfiguration#archiva" alias="userConfiguration#default"/> <alias name="userConfiguration#archiva" alias="userConfiguration#default"/>
<alias name="authorizer#rbac" alias="authorizer#default"/> <alias name="authorizer#rbac" alias="authorizer#default"/>
<alias name="userManager#configurable" alias="userManager#default"/> <alias name="userManager#configurable" alias="userManager#default"/>


<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
<constructor-arg> <constructor-arg>
<value>jcr</value> <value>jcr</value>
</constructor-arg> </constructor-arg>

+ 3
- 3
archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-rss-servlet.xml View File

<context:property-placeholder system-properties-mode="OVERRIDE"/> <context:property-placeholder system-properties-mode="OVERRIDE"/>


<context:annotation-config/> <context:annotation-config/>
<context:component-scan base-package="org.apache.archiva.webtest.memory"/>
<context:component-scan base-package="org.apache.archiva.web.webtest.memory"/>


<alias name="repositorySessionFactory#test" alias="repositorySessionFactory"/> <alias name="repositorySessionFactory#test" alias="repositorySessionFactory"/>


<bean name="userRepositories#test" class="org.apache.archiva.security.UserRepositoriesStub"/>
<bean name="userRepositories#test" class="org.apache.archiva.web.mock.security.UserRepositoriesStub"/>


<alias name="userRepositories#test" alias="userRepositories"/> <alias name="userRepositories#test" alias="userRepositories"/>




<alias name="archivaConfiguration#default" alias="archivaConfiguration"/> <alias name="archivaConfiguration#default" alias="archivaConfiguration"/>


<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
<constructor-arg> <constructor-arg>
<value>jcr</value> <value>jcr</value>
</constructor-arg> </constructor-arg>

+ 2
- 2
archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-test-upload.xml View File



<context:annotation-config/> <context:annotation-config/>
<context:component-scan <context:component-scan
base-package="org.apache.archiva.repository.content.maven2,org.apache.archiva.redback.keys,org.apache.archiva.rest.services.utils"/>
base-package="org.apache.archiva.maven.repository.content,org.apache.archiva.redback.keys,org.apache.archiva.rest.services.utils"/>


<bean name="scheduler" class="org.apache.archiva.components.scheduler.DefaultScheduler"> <bean name="scheduler" class="org.apache.archiva.components.scheduler.DefaultScheduler">
<property name="properties"> <property name="properties">
</bean> </bean>




<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
<constructor-arg> <constructor-arg>
<value>jcr</value> <value>jcr</value>
</constructor-arg> </constructor-arg>

+ 1
- 1
archiva-modules/archiva-web/archiva-web-common/src/test/resources/spring-context-with-jcr.xml View File



<alias name="repositorySessionFactory#jcr" alias="repositorySessionFactory"/> <alias name="repositorySessionFactory#jcr" alias="repositorySessionFactory"/>


<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.TestRepositorySessionFactoryBean">
<bean name="TestRepositorySessionFactoryBean" class="org.apache.archiva.web.TestRepositorySessionFactoryBean">
<constructor-arg> <constructor-arg>
<value>jcr</value> <value>jcr</value>
</constructor-arg> </constructor-arg>

Loading…
Cancel
Save