]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-5150 Values of sonar.preview.excludePlugins and sonar.preview.includePlugins...
authorSimon Brandhof <simon.brandhof@gmail.com>
Tue, 18 Mar 2014 22:24:30 +0000 (23:24 +0100)
committerSimon Brandhof <simon.brandhof@gmail.com>
Tue, 18 Mar 2014 22:24:30 +0000 (23:24 +0100)
sonar-batch/src/main/java/org/sonar/batch/bootstrap/BatchPluginRepository.java
sonar-batch/src/test/java/org/sonar/batch/bootstrap/BatchPluginRepositoryTest.java

index e0e366282a17f24f8f235bd2260561927452614d..584ecce1cadfabdddd66040c0d4ec33af94eda29 100644 (file)
@@ -20,6 +20,8 @@
 package org.sonar.batch.bootstrap;
 
 import com.google.common.base.Joiner;
+import com.google.common.base.Splitter;
+import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
@@ -34,7 +36,11 @@ import org.sonar.core.plugins.RemotePlugin;
 
 import java.io.File;
 import java.text.MessageFormat;
-import java.util.*;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 import static com.google.common.collect.Lists.newArrayList;
 import static com.google.common.collect.Sets.newHashSet;
@@ -154,7 +160,7 @@ public class BatchPluginRepository implements PluginRepository {
 
     static List<String> propertyValues(Settings settings, String key, String defaultValue) {
       String s = StringUtils.defaultIfEmpty(settings.getString(key), defaultValue);
-      return Arrays.asList(StringUtils.split(s, ","));
+      return Lists.newArrayList(Splitter.on(",").trimResults().split(s));
     }
 
     boolean accepts(String pluginKey) {
index 41a6d0048d5fe66b506e063fa9e348bfa8108aae..b1a4eb2a9996a29b3e4037bef39f756f3eee8abc 100644 (file)
@@ -222,4 +222,14 @@ public class BatchPluginRepositoryTest {
     assertThat(filter.whites).containsOnly("cockpit");
     assertThat(filter.blacks).containsOnly("views", "checkstyle", "pmd");
   }
+
+  @Test
+  public void inclusions_and_exclusions_should_be_trimmed() {
+    Settings settings = new Settings()
+      .setProperty(CoreProperties.BATCH_INCLUDE_PLUGINS, "checkstyle, pmd, findbugs")
+      .setProperty(CoreProperties.BATCH_EXCLUDE_PLUGINS, "cobertura, pmd");
+    BatchPluginRepository.PluginFilter filter = new BatchPluginRepository.PluginFilter(settings, mode);
+    assertThat(filter.accepts("pmd")).isTrue();
+  }
+
 }