]> source.dussan.org Git - archiva.git/blob
f5acc4140bc56f52571a3933a590da9b3f1ccf5c
[archiva.git] /
1 package org.apache.archiva.rest.services;
2
3 /*
4  * Licensed to the Apache Software Foundation (ASF) under one
5  * or more contributor license agreements.  See the NOTICE file
6  * distributed with this work for additional information
7  * regarding copyright ownership.  The ASF licenses this file
8  * to you under the Apache License, Version 2.0 (the
9  * "License"); you may not use this file except in compliance
10  * with the License.  You may obtain a copy of the License at
11  *
12  *   http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing,
15  * software distributed under the License is distributed on an
16  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17  * KIND, either express or implied.  See the License for the
18  * specific language governing permissions and limitations
19  * under the License.
20  */
21
22 import org.apache.archiva.rest.api.model.ManagedRepository;
23 import org.apache.archiva.rest.api.services.ManagedRepositoriesService;
24 import org.apache.cxf.jaxrs.client.WebClient;
25 import org.apache.maven.archiva.common.utils.FileUtil;
26 import org.junit.Test;
27
28 import java.io.File;
29
30 /**
31  * @author Olivier Lamy
32  */
33 public class ManagedRepositoriesServiceTest
34     extends AbstractArchivaRestTest
35 {
36
37
38     @Test
39     public void addManagedRepo()
40         throws Exception
41     {
42         ManagedRepositoriesService service = getManagedRepositoriesService();
43         WebClient.client( service ).header( "Authorization", authorizationHeader );
44         WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( 300000 );
45         ManagedRepository repo = getTestManagedRepository();
46         if ( service.getManagedRepository( repo.getId() ) != null )
47         {
48             service.deleteManagedRepository( repo.getId(), true );
49             assertNull( service.getManagedRepository( repo.getId() ) );
50         }
51         service.addManagedRepository( repo );
52         assertNotNull( service.getManagedRepository( repo.getId() ) );
53
54         service.deleteManagedRepository( repo.getId(), true );
55         assertNull( service.getManagedRepository( repo.getId() ) );
56     }
57
58     @Test
59     public void updateManagedRepo()
60         throws Exception
61     {
62         ManagedRepositoriesService service = getManagedRepositoriesService();
63         WebClient.client( service ).header( "Authorization", authorizationHeader );
64         WebClient.getConfig( service ).getHttpConduit().getClient().setReceiveTimeout( 300000 );
65         ManagedRepository repo = getTestManagedRepository();
66         if ( service.getManagedRepository( repo.getId() ) != null )
67         {
68             service.deleteManagedRepository( repo.getId(), true );
69             assertNull( service.getManagedRepository( repo.getId() ) );
70         }
71         service.addManagedRepository( repo );
72         repo = service.getManagedRepository( repo.getId() );
73         assertNotNull( repo );
74         assertEquals( "test", repo.getName() );
75         // toto is foo in French :-)
76         repo.setName( "toto" );
77
78         service.updateManagedRepository( repo );
79
80         repo = service.getManagedRepository( repo.getId() );
81         assertNotNull( repo );
82         assertEquals( "toto", repo.getName() );
83
84
85         service.deleteManagedRepository( repo.getId(), true );
86         assertNull( service.getManagedRepository( repo.getId() ) );
87
88     }
89
90
91     private ManagedRepository getTestManagedRepository()
92     {
93         String location = new File( FileUtil.getBasedir(), "target/test-repo" ).getAbsolutePath();
94         return new ManagedRepository( "TEST", "test", location, "default", true, true, false, false, "2 * * * * ?" );
95     }
96
97 }