]> source.dussan.org Git - archiva.git/blob
fce64f4e275cd1d2d6c78e018781cf01d7fb0828
[archiva.git] /
1 package org.apache.archiva;
2 /*
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  */
20
21 import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
22 import org.apache.archiva.web.api.RuntimeInfoService;
23 import org.apache.archiva.web.model.ApplicationRuntimeInfo;
24 import org.apache.commons.io.FileUtils;
25 import org.apache.commons.lang.StringUtils;
26 import org.apache.cxf.jaxrs.client.JAXRSClientFactory;
27 import org.apache.archiva.redback.rest.services.AbstractRestServicesTest;
28 import org.junit.Before;
29 import org.junit.Test;
30
31 import java.io.File;
32 import java.util.Collections;
33 import org.apache.archiva.test.utils.ArchivaBlockJUnit4ClassRunner;
34 import org.junit.runner.RunWith;
35
36 /**
37  * @author Olivier Lamy
38  */
39 @RunWith( ArchivaBlockJUnit4ClassRunner.class )
40 public class RuntimeInfoServiceTest
41     extends AbstractRestServicesTest
42 {
43     @Override
44     @Before
45     public void startServer()
46         throws Exception
47     {
48         File appServerBase = new File( System.getProperty( "appserver.base" ) );
49
50         File jcrDirectory = new File( appServerBase, "jcr" );
51
52         if ( jcrDirectory.exists() )
53         {
54             FileUtils.deleteDirectory( jcrDirectory );
55         }
56
57         super.startServer();
58     }
59
60     @Override
61     protected String getSpringConfigLocation()
62     {
63         return "classpath*:META-INF/spring-context.xml,classpath:/spring-context-with-jcr.xml";
64     }
65
66     @Override
67     protected String getRestServicesPath()
68     {
69         return "restServices";
70     }
71
72     protected String getBaseUrl()
73     {
74         String baseUrlSysProps = System.getProperty( "archiva.baseRestUrl" );
75         return StringUtils.isBlank( baseUrlSysProps ) ? "http://localhost:" + port : baseUrlSysProps;
76     }
77
78     @Test
79     public void runtimeInfoService()
80         throws Exception
81     {
82         RuntimeInfoService service =
83             JAXRSClientFactory.create( getBaseUrl() + "/" + getRestServicesPath() + "/archivaUiServices/",
84                                        RuntimeInfoService.class,
85                                        Collections.singletonList( new JacksonJaxbJsonProvider() ) );
86
87         ApplicationRuntimeInfo applicationRuntimeInfo = service.getApplicationRuntimeInfo( "en" );
88
89         assertEquals( System.getProperty( "expectedVersion" ), applicationRuntimeInfo.getVersion() );
90         assertFalse( applicationRuntimeInfo.isJavascriptLog() );
91         assertTrue( applicationRuntimeInfo.isLogMissingI18n() );
92
93     }
94 }