]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-926 Don't fail when no language on the module (for example aggragator module)
authorJulien HENRY <julien.henry@sonarsource.com>
Mon, 17 Feb 2014 21:29:33 +0000 (22:29 +0100)
committerJulien HENRY <julien.henry@sonarsource.com>
Mon, 17 Feb 2014 21:29:33 +0000 (22:29 +0100)
sonar-batch/src/main/java/org/sonar/batch/phases/ProfileLogger.java
sonar-batch/src/test/java/org/sonar/batch/phases/ProfileLoggerTest.java

index 5ec98bc7245d3979525400227fdd8e77e6c19e92..ec939d8df28a8ffa1e49ecce8ff94262ae66b189 100644 (file)
@@ -60,7 +60,7 @@ public class ProfileLogger implements BatchComponent {
         defaultNameUsed = true;
       }
     }
-    if (!defaultNameUsed) {
+    if (!defaultNameUsed && !languages.languages().isEmpty()) {
       throw new SonarException("sonar.profile was set to '" + defaultName + "' but didn't match any profile for any language. Please check your configuration.");
     }
   }
index eb2d4689c44cb039d54d8a66ea33256ec806f6d8..22ec32b6e227035e12fa51d74f7672a545d8d8ea 100644 (file)
@@ -33,6 +33,7 @@ import org.sonar.api.utils.SonarException;
 import org.sonar.batch.rule.ModuleQProfiles;
 import org.sonar.batch.rule.ModuleQProfiles.QProfile;
 
+import java.util.Collections;
 import java.util.List;
 
 import static org.mockito.Mockito.mock;
@@ -103,6 +104,17 @@ public class ProfileLoggerTest {
 
   }
 
+  @Test
+  public void should_not_fail_if_no_language_on_project() {
+    settings.setProperty("sonar.profile", "Unknow");
+    when(languages.languages()).thenReturn(Collections.<Language>emptyList());
+
+    ProfileLogger profileLogger = new ProfileLogger(settings, languages, profiles);
+
+    profileLogger.execute();
+
+  }
+
   @Test
   public void should_not_fail_if_default_profile_used_at_least_once() {
     settings.setProperty("sonar.profile", "My Java profile");