aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@gmail.com>2011-12-23 15:01:04 +0100
committerSimon Brandhof <simon.brandhof@gmail.com>2011-12-23 15:01:04 +0100
commit71d323e1793ccdf1153869f6e46ace646d20a9be (patch)
tree0b84d4fee9956822806552fde83967bc308ce576
parentaedff4f36398cc1c24b65d21b94c9c45631d83d8 (diff)
downloadsonarqube-71d323e1793ccdf1153869f6e46ace646d20a9be.tar.gz
sonarqube-71d323e1793ccdf1153869f6e46ace646d20a9be.zip
SONAR-3116 throw an exception if skipping the root module
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/bootstrap/ProjectFilter.java3
-rw-r--r--sonar-batch/src/test/java/org/sonar/batch/bootstrap/ProjectFilterTest.java20
2 files changed, 11 insertions, 12 deletions
diff --git a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ProjectFilter.java b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ProjectFilter.java
index e1e5c4d1fcc..e6b5b986631 100644
--- a/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ProjectFilter.java
+++ b/sonar-batch/src/main/java/org/sonar/batch/bootstrap/ProjectFilter.java
@@ -60,8 +60,7 @@ public class ProjectFilter {
excluded = ArrayUtils.contains(excludedArtifactIds, artifactId);
}
if (excluded && isRoot) {
- LoggerFactory.getLogger(getClass()).warn("The root module can't be excluded: " + artifactId);
- excluded = false;
+ throw new IllegalArgumentException("The root module can't be skipped. Please check the parameter sonar.skippedModules.");
}
return excluded;
}
diff --git a/sonar-batch/src/test/java/org/sonar/batch/bootstrap/ProjectFilterTest.java b/sonar-batch/src/test/java/org/sonar/batch/bootstrap/ProjectFilterTest.java
index 46a783a6709..cce773900c9 100644
--- a/sonar-batch/src/test/java/org/sonar/batch/bootstrap/ProjectFilterTest.java
+++ b/sonar-batch/src/test/java/org/sonar/batch/bootstrap/ProjectFilterTest.java
@@ -41,16 +41,6 @@ public class ProjectFilterTest {
}
@Test
- public void shouldNotSkipRoot() {
- Settings settings = new Settings();
- settings.setProperty("sonar.skippedModules", "root,foo,bar");
- ProjectFilter filter = new ProjectFilter(settings);
-
- assertFalse(filter.isExcluded(root));
- }
-
-
- @Test
public void testNoSkippedModules() {
Settings settings = new Settings();
ProjectFilter filter = new ProjectFilter(settings);
@@ -91,6 +81,16 @@ public class ProjectFilterTest {
assertTrue(filter.isExcluded(child));
}
+ @Test(expected = IllegalArgumentException.class)
+ public void shouldFailIfExcludingRoot() {
+ Settings settings = new Settings();
+ settings.setProperty("sonar.skippedModules", "foo,root");
+
+ ProjectFilter filter = new ProjectFilter(settings);
+
+ filter.isExcluded(root);
+ }
+
@Test
public void testGetArtifactId() {
assertThat(ProjectFilter.getArtifactId(new Project("org:foo")), is("foo"));