]> source.dussan.org Git - archiva.git/blob
e53a8be0b2437977ec9aa02f4fb389e71ef642a8
[archiva.git] /
1 package org.apache.maven.archiva.web.action.admin.scanning;
2
3 import org.apache.maven.archiva.configuration.ArchivaConfiguration;
4 import org.apache.maven.archiva.configuration.Configuration;
5 import org.apache.maven.archiva.configuration.RepositoryScanningConfiguration;
6 import org.apache.maven.archiva.web.action.AbstractActionTestCase;
7 import org.easymock.MockControl;
8
9 import java.util.ArrayList;
10 import java.util.List;
11
12 /*
13  * Licensed to the Apache Software Foundation (ASF) under one
14  * or more contributor license agreements.  See the NOTICE file
15  * distributed with this work for additional information
16  * regarding copyright ownership.  The ASF licenses this file
17  * to you under the Apache License, Version 2.0 (the
18  * "License"); you may not use this file except in compliance
19  * with the License.  You may obtain a copy of the License at
20  *
21  *  http://www.apache.org/licenses/LICENSE-2.0
22  *
23  * Unless required by applicable law or agreed to in writing,
24  * software distributed under the License is distributed on an
25  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
26  * KIND, either express or implied.  See the License for the
27  * specific language governing permissions and limitations
28  * under the License.
29  */
30
31 public class RepositoryScanningActionTest
32     extends AbstractActionTestCase
33 {
34     private RepositoryScanningAction action;
35     
36     private MockControl archivaConfigControl;
37     
38     private ArchivaConfiguration archivaConfig;
39     
40     private Configuration config;
41     
42     protected void setUp() 
43     throws Exception
44     {
45         
46         super.setUp();
47     
48         archivaConfigControl = MockControl.createControl( ArchivaConfiguration.class );
49         archivaConfig = (ArchivaConfiguration) archivaConfigControl.getMock();
50     
51         action = new RepositoryScanningAction();
52     
53         config = new Configuration();
54         
55         RepositoryScanningConfiguration repositoryScanningConfig = new RepositoryScanningConfiguration( );
56         
57         repositoryScanningConfig.setKnownContentConsumers( createKnownContentConsumersList() );
58         
59         config.setRepositoryScanning( repositoryScanningConfig );
60
61         action.setArchivaConfiguration( archivaConfig );
62     }
63      
64     public void testUpdateKnownConsumers()
65         throws Exception
66     {
67         archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config );
68         archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config );
69         archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config );
70         
71         archivaConfig.save( config );
72         archivaConfigControl.replay();
73         
74         setEnabledKnownContentConsumers();
75         
76         String returnString = action.updateKnownConsumers();
77         
78         List<String> results = config.getRepositoryScanning().getKnownContentConsumers();
79         
80         assertEquals( action.SUCCESS, returnString );
81         assertEquals( 8, results.size() );
82     }
83     
84     public void testDisableAllKnownConsumers()
85         throws Exception
86     {
87         archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config );
88         archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config );
89         archivaConfigControl.expectAndReturn( archivaConfig.getConfiguration(), config );
90         
91         archivaConfig.save( config );
92         archivaConfigControl.replay();
93         
94         action.setEnabledKnownContentConsumers( null );
95         
96         String returnString = action.updateKnownConsumers();
97         
98         List<String> results = config.getRepositoryScanning().getKnownContentConsumers();
99         
100         assertEquals( action.SUCCESS, returnString );
101         assertEquals( 0, results.size() );
102     }
103     
104     private void setEnabledKnownContentConsumers()
105     {
106         action.setEnabledKnownContentConsumers( createKnownContentConsumersList() );
107     }
108     
109     private List<String> createKnownContentConsumersList( )
110     {
111         List<String> knownContentConsumers = new ArrayList<String>();
112         knownContentConsumers.add( "auto-remove" );
113         knownContentConsumers.add( "auto-rename" );
114         knownContentConsumers.add( "create-missing-checksums" );
115         knownContentConsumers.add( "index-content" );
116         knownContentConsumers.add( "metadata-updater" );
117         knownContentConsumers.add( "repository-purge" );
118         knownContentConsumers.add( "update-db-artifact" );
119         knownContentConsumers.add( "validate-checksums" );
120         
121         return knownContentConsumers;
122     }
123 }