diff options
| author | Amaury Levé | 2018-06-21 14:55:09 +0200 | 
|---|---|---|
| committer | GitHub | 2018-06-21 14:55:09 +0200 | 
| commit | 9bcc46b342cfb888f16c180cb0b3103335def5f1 (patch) | |
| tree | 6b85805bbedef51c974b6984cb42b53052f9b375 /sonar-css-plugin/src/main/java | |
| parent | 913028fc4c913fec3bbc1800c00e526413040e01 (diff) | |
| download | sonar-css-9bcc46b342cfb888f16c180cb0b3103335def5f1.tar.bz2 | |
Rule S4653: Units should be valid (#50)
Diffstat (limited to 'sonar-css-plugin/src/main/java')
3 files changed, 43 insertions, 10 deletions
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 4fdf3f5..1dac08c 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 @@ -19,17 +19,19 @@   */  package org.sonar.css.plugin; +import org.sonar.api.batch.rule.CheckFactory; +import org.sonar.api.batch.rule.Checks; +import org.sonar.api.rule.RuleKey; +import org.sonar.css.plugin.rules.ColorNoInvalidHex; +import org.sonar.css.plugin.rules.CssRule; +import org.sonar.css.plugin.rules.UnitNoUnknown; +  import java.util.Arrays;  import java.util.Collection;  import java.util.Collections;  import java.util.HashMap;  import java.util.List;  import java.util.Map; -import org.sonar.api.batch.rule.CheckFactory; -import org.sonar.api.batch.rule.Checks; -import org.sonar.api.rule.RuleKey; -import org.sonar.css.plugin.rules.ColorNoInvalidHex; -import org.sonar.css.plugin.rules.CssRule;  public class CssRules { @@ -37,7 +39,8 @@ public class CssRules {    private final StylelintConfig config = new StylelintConfig();    public CssRules(CheckFactory checkFactory) { -    Checks<CssRule> checks = checkFactory.<CssRule>create(CssRulesDefinition.REPOSITORY_KEY).addAnnotatedChecks((Iterable) getRuleClasses()); +    Checks<CssRule> checks = checkFactory.<CssRule>create(CssRulesDefinition.REPOSITORY_KEY) +      .addAnnotatedChecks((Iterable) getRuleClasses());      Collection<CssRule> enabledRules = checks.all();      stylelintKeyToRuleKey = new HashMap<>();      for (CssRule rule : enabledRules) { @@ -48,7 +51,8 @@ public class CssRules {    public static List<Class> getRuleClasses() {      return Collections.unmodifiableList(Arrays.asList( -      ColorNoInvalidHex.class +        ColorNoInvalidHex.class, +        UnitNoUnknown.class      ));    } diff --git a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRulesDefinition.java b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRulesDefinition.java index 196252f..a338d7f 100644 --- a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRulesDefinition.java +++ b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/CssRulesDefinition.java @@ -19,9 +19,7 @@   */  package org.sonar.css.plugin; -import java.util.Collections;  import org.sonar.api.server.rule.RulesDefinition; -import org.sonar.css.plugin.rules.ColorNoInvalidHex;  import org.sonarsource.analyzer.commons.RuleMetadataLoader;  import static org.sonar.css.plugin.SonarWayProfile.PROFILE_PATH; @@ -40,7 +38,7 @@ public class CssRulesDefinition implements RulesDefinition {        .setName(RULE_REPOSITORY_NAME);      RuleMetadataLoader ruleMetadataLoader = new RuleMetadataLoader(RESOURCE_FOLDER, PROFILE_PATH); -    ruleMetadataLoader.addRulesByAnnotatedClass(repository, Collections.singletonList(ColorNoInvalidHex.class)); +    ruleMetadataLoader.addRulesByAnnotatedClass(repository, CssRules.getRuleClasses());      repository.done();    }  } diff --git a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/UnitNoUnknown.java b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/UnitNoUnknown.java new file mode 100644 index 0000000..eee43db --- /dev/null +++ b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/UnitNoUnknown.java @@ -0,0 +1,31 @@ +/* + * SonarCSS + * Copyright (C) 2018-2018 SonarSource SA + * mailto:info AT sonarsource DOT com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA. + */ +package org.sonar.css.plugin.rules; + +import org.sonar.check.Rule; + +@Rule(key = "S4653") +public class UnitNoUnknown implements CssRule { + +  @Override +  public String stylelintKey() { +    return "unit-no-unknown"; +  } +}  | 
