]> source.dussan.org Git - sonarqube.git/commitdiff
Fix compatibility of file exclusions with the dotnet plugin
authorsimonbrandhof <simon.brandhof@gmail.com>
Sun, 13 Nov 2011 22:23:34 +0000 (23:23 +0100)
committersimonbrandhof <simon.brandhof@gmail.com>
Sun, 13 Nov 2011 23:52:25 +0000 (00:52 +0100)
sonar-plugin-api/src/main/java/org/sonar/api/resources/Project.java
sonar-plugin-api/src/test/java/org/sonar/api/resources/ProjectTest.java

index f2ef02f57461980f0f7bc6ef9b26d04d8993f343..58d885c91b9dce6ea8dd7d8b9ae06cf1f39bf040 100644 (file)
@@ -372,11 +372,10 @@ public class Project extends Resource {
 
   /**
    * Set exclusion patterns. Configuration is not saved, so this method must be used ONLY IN UNIT TESTS.
-   * @deprecated
    */
-  @Deprecated
   public Project setExclusionPatterns(String[] s) {
-    throw new UnsupportedOperationException("Unsupported since version 2.12");
+    configuration.setProperty(CoreProperties.PROJECT_EXCLUSIONS_PROPERTY, StringUtils.join(s, ","));
+    return this;
   }
 
   /**
index 5b3e9bfe6f6c129f9e96a6b8e817cd77e00c789c..96074e239ed693aab65476ceba6d2929068e91aa 100644 (file)
@@ -92,4 +92,15 @@ public class ProjectTest {
     MatcherAssert.assertThat(project.getExclusionPatterns()[1], Is.is("foo"));
     MatcherAssert.assertThat(project.getExclusionPatterns()[2], Is.is("*/bar"));
   }
+
+  @Test
+  public void testSetExclusionPatterns() {
+    PropertiesConfiguration conf = new PropertiesConfiguration();
+    Project project = new Project("key").setConfiguration(conf);
+
+    project.setExclusionPatterns(new String[]{"**/*Foo.java", "**/*Bar.java"});
+    MatcherAssert.assertThat(project.getExclusionPatterns().length, Is.is(2));
+    MatcherAssert.assertThat(project.getExclusionPatterns()[0], Is.is("**/*Foo.java"));
+    MatcherAssert.assertThat(project.getExclusionPatterns()[1], Is.is("**/*Bar.java"));
+  }
 }