]> source.dussan.org Git - archiva.git/blob
c51c12664e471f40f51db902fbd258ba1b8c3187
[archiva.git] /
1 package org.apache.archiva.admin.repository.admin;
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 org.apache.archiva.admin.repository.AbstractRepositoryAdminTest;
22 import org.apache.archiva.admin.repository.RepositoryAdminException;
23 import org.apache.archiva.audit.AuditEvent;
24 import org.junit.Test;
25
26 import javax.inject.Inject;
27 import java.util.Arrays;
28
29 /**
30  * @author Olivier Lamy
31  */
32 public class ArchivaAdministrationTest
33     extends AbstractRepositoryAdminTest
34 {
35     @Inject
36     ArchivaAdministration archivaAdministration;
37
38
39     @Test
40     public void getAllLegacyPaths()
41         throws Exception
42     {
43         assertNotNull( archivaAdministration.getLegacyArtifactPaths() );
44         assertFalse( archivaAdministration.getLegacyArtifactPaths().isEmpty() );
45         assertEquals( 1, archivaAdministration.getLegacyArtifactPaths().size() );
46         log.info( "all legacy paths {}", archivaAdministration.getLegacyArtifactPaths() );
47     }
48
49     public void addAndDeleteLegacyPath()
50         throws Exception
51     {
52         int initialSize = archivaAdministration.getLegacyArtifactPaths().size();
53
54         LegacyArtifactPath legacyArtifactPath = new LegacyArtifactPath( "foo", "bar" );
55         archivaAdministration.addLegacyArtifactPath( legacyArtifactPath, getFakeAuditInformation() );
56
57         assertTrue( archivaAdministration.getLegacyArtifactPaths().contains( new LegacyArtifactPath( "foo", "bar" ) ) );
58         assertEquals( initialSize + 1, archivaAdministration.getLegacyArtifactPaths().size() );
59
60         archivaAdministration.deleteLegacyArtifactPath( legacyArtifactPath.getPath(), getFakeAuditInformation() );
61
62         assertFalse(
63             archivaAdministration.getLegacyArtifactPaths().contains( new LegacyArtifactPath( "foo", "bar" ) ) );
64         assertEquals( initialSize, archivaAdministration.getLegacyArtifactPaths().size() );
65         mockAuditListener.clearEvents();
66     }
67
68     @Test
69     public void addAndUpdateAndDeleteFileType()
70         throws RepositoryAdminException
71     {
72         int initialSize = archivaAdministration.getFileTypes().size();
73
74         FileType fileType = new FileType();
75         fileType.setId( "foo" );
76         fileType.setPatterns( Arrays.asList( "bar", "toto" ) );
77
78         archivaAdministration.addFileType( fileType, getFakeAuditInformation() );
79
80         assertEquals( initialSize + 1, archivaAdministration.getFileTypes().size() );
81
82         archivaAdministration.addFileTypePattern( "foo", "zorro", getFakeAuditInformation() );
83
84         assertEquals( initialSize + 1, archivaAdministration.getFileTypes().size() );
85
86         assertEquals( 3, archivaAdministration.getFileType( "foo" ).getPatterns().size() );
87
88         assertTrue( archivaAdministration.getFileType( "foo" ).getPatterns().contains( "bar" ) );
89         assertTrue( archivaAdministration.getFileType( "foo" ).getPatterns().contains( "toto" ) );
90         assertTrue( archivaAdministration.getFileType( "foo" ).getPatterns().contains( "zorro" ) );
91
92         archivaAdministration.removeFileTypePattern( "foo", "zorro", getFakeAuditInformation() );
93
94         assertEquals( initialSize + 1, archivaAdministration.getFileTypes().size() );
95
96         assertEquals( 2, archivaAdministration.getFileType( "foo" ).getPatterns().size() );
97
98         assertTrue( archivaAdministration.getFileType( "foo" ).getPatterns().contains( "bar" ) );
99         assertTrue( archivaAdministration.getFileType( "foo" ).getPatterns().contains( "toto" ) );
100         assertFalse( archivaAdministration.getFileType( "foo" ).getPatterns().contains( "zorro" ) );
101
102         archivaAdministration.removeFileType( "foo", getFakeAuditInformation() );
103
104         assertEquals( initialSize, archivaAdministration.getFileTypes().size() );
105         assertNull( archivaAdministration.getFileType( "foo" ) );
106         mockAuditListener.clearEvents();
107     }
108
109     @Test
110     public void knownContentConsumersTest()
111         throws Exception
112     {
113         int initialSize = archivaAdministration.getKnownContentConsumers().size();
114
115         archivaAdministration.addKnownContentConsumer( "foo", getFakeAuditInformation() );
116
117         assertEquals( initialSize + 1, archivaAdministration.getKnownContentConsumers().size() );
118         assertTrue( archivaAdministration.getKnownContentConsumers().contains( "foo" ) );
119
120         // ensure we don't add it twice as it's an ArrayList as storage
121         archivaAdministration.addKnownContentConsumer( "foo", getFakeAuditInformation() );
122
123         assertEquals( initialSize + 1, archivaAdministration.getKnownContentConsumers().size() );
124         assertTrue( archivaAdministration.getKnownContentConsumers().contains( "foo" ) );
125
126         archivaAdministration.removeKnownContentConsumer( "foo", getFakeAuditInformation() );
127
128         assertEquals( initialSize, archivaAdministration.getKnownContentConsumers().size() );
129         assertFalse( archivaAdministration.getKnownContentConsumers().contains( "foo" ) );
130
131         assertEquals( 2, mockAuditListener.getAuditEvents().size() );
132         assertEquals( AuditEvent.ENABLE_REPO_CONSUMER, mockAuditListener.getAuditEvents().get( 0 ).getAction() );
133         assertEquals( AuditEvent.DISABLE_REPO_CONSUMER, mockAuditListener.getAuditEvents().get( 1 ).getAction() );
134
135         mockAuditListener.clearEvents();
136
137     }
138
139     @Test
140     public void invalidContentConsumersTest()
141         throws Exception
142     {
143         int initialSize = archivaAdministration.getInvalidContentConsumers().size();
144
145         archivaAdministration.addInvalidContentConsumer( "foo", getFakeAuditInformation() );
146
147         assertEquals( initialSize + 1, archivaAdministration.getInvalidContentConsumers().size() );
148         assertTrue( archivaAdministration.getInvalidContentConsumers().contains( "foo" ) );
149
150         // ensure we don't add it twice as it's an ArrayList as storage
151         archivaAdministration.addInvalidContentConsumer( "foo", getFakeAuditInformation() );
152
153         assertEquals( initialSize + 1, archivaAdministration.getInvalidContentConsumers().size() );
154         assertTrue( archivaAdministration.getInvalidContentConsumers().contains( "foo" ) );
155
156         archivaAdministration.removeInvalidContentConsumer( "foo", getFakeAuditInformation() );
157
158         assertEquals( initialSize, archivaAdministration.getInvalidContentConsumers().size() );
159         assertFalse( archivaAdministration.getInvalidContentConsumers().contains( "foo" ) );
160
161         assertEquals( 2, mockAuditListener.getAuditEvents().size() );
162         assertEquals( AuditEvent.ENABLE_REPO_CONSUMER, mockAuditListener.getAuditEvents().get( 0 ).getAction() );
163         assertEquals( AuditEvent.DISABLE_REPO_CONSUMER, mockAuditListener.getAuditEvents().get( 1 ).getAction() );
164
165         mockAuditListener.clearEvents();
166
167     }
168
169
170     public void organisationInfoUpdate()
171         throws Exception
172     {
173         OrganisationInformation organisationInformation = archivaAdministration.getOrganisationInformation();
174         assertNull( organisationInformation );
175
176         organisationInformation = new OrganisationInformation();
177         organisationInformation.setLogoLocation( "http://foo.com/bar.png" );
178         organisationInformation.setName( "foo org" );
179         organisationInformation.setUrl( "http:/foo.com" );
180
181         archivaAdministration.setOrganisationInformation( organisationInformation );
182
183         organisationInformation = archivaAdministration.getOrganisationInformation();
184         assertNotNull( organisationInformation );
185         assertEquals( "http://foo.com/bar.png", organisationInformation.getLogoLocation() );
186         assertEquals( "foo org", organisationInformation.getName() );
187         assertEquals( "http://foo.com", organisationInformation.getUrl() );
188
189     }
190 }