aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElena2018-06-26 14:45:24 +0200
committerAmaury Levé2018-06-26 15:04:15 +0200
commita7cbea9bfccfaaeca25498d4cde75dff7ddb7b76 (patch)
treea8f6c935158ab24883fbf861ae9617271eee5638
parentd449cd90192074b06b6a040cb82c66051b2bf1fa (diff)
downloadsonar-css-a7cbea9bfccfaaeca25498d4cde75dff7ddb7b76.tar.bz2
Do not launch stylelint if no rules enabled
-rw-r--r--sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRuleSensor.java5
-rw-r--r--sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRules.java4
-rw-r--r--sonar-css-plugin/src/test/java/org/sonar/css/plugin/CssRuleSensorTest.java9
3 files changed, 18 insertions, 0 deletions
diff --git a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRuleSensor.java b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRuleSensor.java
index d13038e..da781aa 100644
--- a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRuleSensor.java
+++ b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRuleSensor.java
@@ -71,6 +71,11 @@ public class CssRuleSensor implements Sensor {
@Override
public void execute(SensorContext context) {
+ if (cssRules.isEmpty()) {
+ LOG.warn("No rules are activated in CSS Quality Profile");
+ return;
+ }
+
if (!checkCompatibleNodeVersion(context)) {
return;
}
diff --git a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRules.java b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRules.java
index b2f3560..e05461b 100644
--- a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRules.java
+++ b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRules.java
@@ -101,6 +101,10 @@ public class CssRules {
return config;
}
+ public boolean isEmpty() {
+ return stylelintKeyToRuleKey.isEmpty();
+ }
+
public static class StylelintConfig {
Map<String, Boolean> rules = new HashMap<>();
}
diff --git a/sonar-css-plugin/src/test/java/org/sonar/css/plugin/CssRuleSensorTest.java b/sonar-css-plugin/src/test/java/org/sonar/css/plugin/CssRuleSensorTest.java
index 030a987..0b4acd2 100644
--- a/sonar-css-plugin/src/test/java/org/sonar/css/plugin/CssRuleSensorTest.java
+++ b/sonar-css-plugin/src/test/java/org/sonar/css/plugin/CssRuleSensorTest.java
@@ -136,6 +136,15 @@ public class CssRuleSensorTest {
sensor.execute(context);
}
+ @Test
+ public void test_not_execute_rules_if_nothing_enabled() throws IOException {
+ TestLinterCommandProvider commandProvider = new TestLinterCommandProvider().nodeScript("/executables/mockError.js", inputFile.absolutePath());
+ CssRuleSensor sensor = new CssRuleSensor(new TestBundleHandler(), new CheckFactory(new TestActiveRules()), commandProvider);
+ sensor.execute(context);
+
+ assertThat(logTester.logs(LoggerLevel.WARN)).contains("No rules are activated in CSS Quality Profile");
+ }
+
private static DefaultInputFile createInputFile(SensorContextTester sensorContext, String content, String relativePath) {
DefaultInputFile inputFile = new TestInputFileBuilder("moduleKey", relativePath)
.setModuleBaseDir(sensorContext.fileSystem().baseDirPath())