]> source.dussan.org Git - sonarqube.git/blob
3ad836d75a6bb27528ddfc40e2718314b0b24e61
[sonarqube.git] /
1 /*
2  * Sonar, open source software quality management tool.
3  * Copyright (C) 2009 SonarSource SA
4  * mailto:contact AT sonarsource DOT com
5  *
6  * Sonar is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 3 of the License, or (at your option) any later version.
10  *
11  * Sonar is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with Sonar; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02
19  */
20 package org.sonar.updatecenter.common;
21
22 import org.apache.commons.io.IOUtils;
23 import org.junit.Test;
24
25 import java.io.IOException;
26 import java.io.InputStream;
27 import java.util.Properties;
28
29 import static org.hamcrest.Matchers.is;
30 import static org.junit.Assert.assertThat;
31 import static org.junit.internal.matchers.IsCollectionContaining.hasItems;
32
33 public class UpdateCenterDeserializerTest {
34
35   @Test
36   public void fromProperties() throws IOException {
37     InputStream input = getClass().getResourceAsStream("/org/sonar/updatecenter/common/UpdateCenterDeserializerTest/updates.properties");
38     try {
39       Properties props = new Properties();
40       props.load(input);
41       UpdateCenter center = UpdateCenterDeserializer.fromProperties(props);
42
43       assertThat(center.getSonar().getVersions(), hasItems(Version.create("2.2"), Version.create("2.3")));
44       assertThat(center.getSonar().getRelease(Version.create("2.2")).getDownloadUrl(), is("http://dist.sonar.codehaus.org/sonar-2.2.zip"));
45
46       Plugin clirr = center.getPlugin("clirr");
47       assertThat(clirr.getName(), is("Clirr"));
48       assertThat(clirr.getDescription(), is("Clirr Plugin"));
49       assertThat(clirr.getVersions(),hasItems(Version.create("1.0"), Version.create("1.1")));
50       assertThat(clirr.getRelease(Version.create("1.0")).getDownloadUrl(), is("http://dist.sonar-plugins.codehaus.org/clirr-1.0.jar"));
51
52     } finally {
53       IOUtils.closeQuietly(input);
54     }
55   }
56 }