From 60d0a2d36caf5373915fa028b4d7e49b224e68d2 Mon Sep 17 00:00:00 2001 From: skygo Date: Mon, 27 May 2013 22:04:25 +0000 Subject: [PATCH] rewrite try some tests git-svn-id: https://svn.apache.org/repos/asf/archiva/branches/archiva-MRM-1756@1486718 13f79535-47bb-0310-9956-ffa450edef68 --- .../rest/services/DefaultPluginsServices.java | 28 +++++++++--- .../services/AbstractArchivaRestTest.java | 9 ++++ .../rest/services/PluginServiceTest.java | 45 +++++++++++++++++++ 3 files changed, 75 insertions(+), 7 deletions(-) create mode 100644 archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/PluginServiceTest.java diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultPluginsServices.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultPluginsServices.java index 492066953..1896f4597 100644 --- a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultPluginsServices.java +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultPluginsServices.java @@ -39,20 +39,23 @@ public class DefaultPluginsServices private List repositoryType = new ArrayList(); private List adminFeatures = new ArrayList(); + private ApplicationContext appCont; @Inject public DefaultPluginsServices( ApplicationContext applicationContext ) { - feed( repositoryType, "repository", applicationContext ); - feed( adminFeatures, "features", applicationContext ); + System.err.println( "appCont" ); + this.appCont = applicationContext; } - private void feed( List repository, String key, ApplicationContext applicationContext ) + private void feed( List repository, String key ) throws ArchivaRestServiceException { + System.err.println( "feeed" ); + repository.clear(); Resource[] xmlResources; try { - xmlResources = applicationContext.getResources( "/**/" + key + "/**/main.js" ); + xmlResources = appCont.getResources( "/**/" + key + "/**/main.js" ); for ( Resource rc : xmlResources ) { String tmp = rc.getURL().toString(); @@ -60,8 +63,10 @@ public class DefaultPluginsServices repository.add( "archiva/admin/" + key + "/" + tmp + "/main" ); } } - catch ( IOException ex ) + catch ( IOException e ) { + + throw new ArchivaRestServiceException( e.getMessage(), e ); } } @@ -70,6 +75,8 @@ public class DefaultPluginsServices throws ArchivaRestServiceException { // rebuild + feed( repositoryType, "repository" ); + feed( adminFeatures, "features" ); StringBuilder sb = new StringBuilder(); for ( String repoType : repositoryType ) { @@ -79,8 +86,15 @@ public class DefaultPluginsServices { sb.append( repoType ).append( "|" ); } - - return sb.substring( 0, sb.length() - 1 ); + System.err.println( "sb" + sb.toString() ); + if ( sb.length() > 1 ) + { + return sb.substring( 0, sb.length() - 1 ); + } + else + { + return sb.toString(); + } } } diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/AbstractArchivaRestTest.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/AbstractArchivaRestTest.java index 1fb4fbd5a..6655bbfe8 100644 --- a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/AbstractArchivaRestTest.java +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/AbstractArchivaRestTest.java @@ -53,6 +53,7 @@ import javax.ws.rs.core.MediaType; import java.io.File; import java.util.Collections; import java.util.Date; +import org.apache.archiva.rest.api.services.PluginsService; /** * @author Olivier Lamy @@ -165,6 +166,14 @@ public abstract class AbstractArchivaRestTest { return getService( PingService.class, null ); } + + protected PluginsService getPluginsService() + { + PluginsService service = getService( PluginsService.class, null ); + WebClient.client( service ).accept( MediaType.TEXT_PLAIN ); + WebClient.client( service ).type( MediaType.TEXT_PLAIN ); + return service; + } protected RemoteRepositoriesService getRemoteRepositoriesService() { diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/PluginServiceTest.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/PluginServiceTest.java new file mode 100644 index 000000000..76dc89bbd --- /dev/null +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/PluginServiceTest.java @@ -0,0 +1,45 @@ +package org.apache.archiva.rest.services; + +/* + * 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 static junit.framework.TestCase.assertEquals; +import org.apache.archiva.rest.api.services.PluginsService; +import org.junit.Test; + +/** + * @author Olivier Lamy + * @since 1.4-M1 + */ +public class PluginServiceTest + extends AbstractArchivaRestTest +{ + + @Test + public void testGetPluginAdmin() + throws Exception + { + // 1000000L + + PluginsService res = getPluginsService(); + String value = res.getAdminPlugins(); + assertEquals( "", value ); + } + + +} -- 2.39.5