1 package org.apache.archiva.rest.services;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 import org.apache.archiva.admin.model.beans.FileType;
22 import org.apache.archiva.admin.model.beans.LegacyArtifactPath;
23 import org.apache.archiva.admin.model.beans.OrganisationInformation;
24 import org.apache.archiva.admin.model.beans.UiConfiguration;
25 import org.apache.archiva.rest.api.model.AdminRepositoryConsumer;
26 import org.apache.commons.lang.StringUtils;
27 import org.junit.Test;
28
29 import java.util.Arrays;
30 import java.util.List;
31
32
33
34
35 public class ArchivaAdministrationServiceTest
36 extends AbstractArchivaRestTest
37 {
38 @Test
39 public void getAllLegacyPaths()
40 throws Exception
41 {
42 assertNotNull( getArchivaAdministrationService().getLegacyArtifactPaths() );
43 assertFalse( getArchivaAdministrationService().getLegacyArtifactPaths().isEmpty() );
44 }
45
46 @Test
47 public void addAndDeleteFileType()
48 throws Exception
49 {
50 int initialSize = getArchivaAdministrationService().getFileTypes().size();
51 FileType fileType = new FileType();
52 fileType.setId( "footwo" );
53 fileType.setPatterns( Arrays.asList( "foo", "bar" ) );
54 getArchivaAdministrationService().addFileType( fileType );
55 assertEquals( initialSize + 1, getArchivaAdministrationService().getFileTypes().size() );
56
57 assertNotNull( getArchivaAdministrationService().getFileType( "footwo" ) );
58 assertEquals( Arrays.asList( "foo", "bar" ),
59 getArchivaAdministrationService().getFileType( "footwo" ).getPatterns() );
60
61 getArchivaAdministrationService().removeFileType( "footwo" );
62
63 assertEquals( initialSize, getArchivaAdministrationService().getFileTypes().size() );
64
65 assertNull( getArchivaAdministrationService().getFileType( "footwo" ) );
66 }
67
68 @Test
69 public void organisationInformationUpdate()
70 throws Exception
71 {
72 OrganisationInformation organisationInformation =
73 getArchivaAdministrationService().getOrganisationInformation();
74
75
76 assertNotNull( organisationInformation );
77 assertTrue( StringUtils.isBlank( organisationInformation.getLogoLocation() ) );
78 assertTrue( StringUtils.isBlank( organisationInformation.getName() ) );
79 assertTrue( StringUtils.isBlank( organisationInformation.getUrl() ) );
80
81 organisationInformation = new OrganisationInformation();
82 organisationInformation.setLogoLocation( "http://foo.com/bar.png" );
83 organisationInformation.setName( "foo org" );
84 organisationInformation.setUrl( "http://foo.com" );
85
86 getArchivaAdministrationService().setOrganisationInformation( organisationInformation );
87
88 organisationInformation = getArchivaAdministrationService().getOrganisationInformation();
89 assertNotNull( organisationInformation );
90 assertEquals( "http://foo.com/bar.png", organisationInformation.getLogoLocation() );
91 assertEquals( "foo org", organisationInformation.getName() );
92 assertEquals( "http://foo.com", organisationInformation.getUrl() );
93 }
94
95 @Test
96 public void uiConfigurationReadUpdate()
97 throws Exception
98 {
99 UiConfiguration ui = getArchivaAdministrationService().getUiConfiguration();
100 assertNotNull( ui );
101
102 assertFalse( ui.isDisableEasterEggs() );
103 assertFalse( ui.isDisableRegistration() );
104 assertTrue( ui.isAppletFindEnabled() );
105 assertTrue( ui.isShowFindArtifacts() );
106 assertNull( ui.getApplicationUrl() );
107
108 ui.setAppletFindEnabled( false );
109 ui.setShowFindArtifacts( false );
110 ui.setDisableEasterEggs( true );
111 ui.setDisableRegistration( true );
112 String url = "http://foo.fr/bar";
113 ui.setApplicationUrl( url );
114
115 getArchivaAdministrationService().setUiConfiguration( ui );
116
117 ui = getArchivaAdministrationService().getUiConfiguration();
118
119 assertTrue( ui.isDisableEasterEggs() );
120 assertTrue( ui.isDisableRegistration() );
121 assertFalse( ui.isAppletFindEnabled() );
122 assertFalse( ui.isShowFindArtifacts() );
123 assertEquals( url, ui.getApplicationUrl() );
124 }
125
126 @Test
127 public void uiConfigurationUpdate_ApplicationUrlHasTrailingSlash()
128 throws Exception {
129
130 UiConfiguration ui = getArchivaAdministrationService().getUiConfiguration();
131 assertNotNull( ui );
132 assertNull( ui.getApplicationUrl() );
133
134 String url = "http://foo.fr/bar/";
135 ui.setApplicationUrl( url );
136
137 getArchivaAdministrationService().setUiConfiguration( ui );
138
139 ui = getArchivaAdministrationService().getUiConfiguration();
140
141 assertEquals( "http://foo.fr/bar", ui.getApplicationUrl() );
142
143
144 url = "http://foo.fr/bar//";
145
146 ui.setApplicationUrl(url);
147
148 getArchivaAdministrationService().setUiConfiguration(ui);
149
150 ui = getArchivaAdministrationService().getUiConfiguration();
151
152 assertEquals( "http://foo.fr/bar", ui.getApplicationUrl() );
153 }
154
155 @Test
156 public void getKnownContentAdminRepositoryConsumer()
157 throws Exception
158 {
159 List<AdminRepositoryConsumer> consumers =
160 getArchivaAdministrationService().getKnownContentAdminRepositoryConsumers();
161 assertFalse( consumers.isEmpty() );
162 }
163
164 @Test
165 public void getInvalidContentAdminRepositoryConsumer()
166 throws Exception
167 {
168 List<AdminRepositoryConsumer> consumers =
169 getArchivaAdministrationService().getInvalidContentAdminRepositoryConsumers();
170 assertFalse( consumers.isEmpty() );
171 assertAllDisabled( consumers );
172
173 getArchivaAdministrationService().enabledInvalidContentConsumer( "foo" );
174
175 consumers = getArchivaAdministrationService().getInvalidContentAdminRepositoryConsumers();
176 assertFalse( consumers.isEmpty() );
177 assertAllEnabled( consumers );
178
179 getArchivaAdministrationService().disabledInvalidContentConsumer( "foo" );
180
181 consumers = getArchivaAdministrationService().getInvalidContentAdminRepositoryConsumers();
182
183 assertAllDisabled( consumers );
184
185 assertFalse( consumers.isEmpty() );
186 }
187
188 private void assertAllEnabled( List<AdminRepositoryConsumer> consumers )
189 {
190 for ( AdminRepositoryConsumer consumer : consumers )
191 {
192 assertTrue( consumer.isEnabled() );
193 }
194 }
195
196 private void assertAllDisabled( List<AdminRepositoryConsumer> consumers )
197 {
198 for ( AdminRepositoryConsumer consumer : consumers )
199 {
200 assertFalse( consumer.isEnabled() );
201 }
202 }
203 }