aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlban Auzeill2019-12-23 16:17:55 +0100
committerElena Vilchik2019-12-23 16:17:55 +0100
commit54195cb67b2eff8f38fd88d2fedb564242224750 (patch)
tree43bbc2f23dccbe576d1805d1b3a10b53714838a1
parente1084ab0bee42625105ff332365b05ab30654d47 (diff)
downloadsonar-css-54195cb67b2eff8f38fd88d2fedb564242224750.tar.bz2
Add Angular Material 'md' and Font Awesome 'fa' prefixes to default config of S4670 (#219)
-rw-r--r--its/plugin/projects/issues-project/src/file1.css4
-rw-r--r--its/plugin/src/test/java/org/sonar/css/its/IssuesTest.java1
-rw-r--r--sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/SelectorTypeNoUnknown.java3
-rw-r--r--sonar-css-plugin/src/test/java/org/sonar/css/plugin/rules/CssRuleTest.java6
4 files changed, 9 insertions, 5 deletions
diff --git a/its/plugin/projects/issues-project/src/file1.css b/its/plugin/projects/issues-project/src/file1.css
index 8a588b6..aea7607 100644
--- a/its/plugin/projects/issues-project/src/file1.css
+++ b/its/plugin/projects/issues-project/src/file1.css
@@ -71,6 +71,10 @@ mat-form-field { /* Angular Materia
width: 100%;
}
+md-button { /* AngularJS Material, ignored by S4670 | selector-type-no-unknown */
+ width: 100%;
+}
+
fa-icon { /* Font Awesome, ignored by S4670 | selector-type-no-unknown due to parameter */
width: 100%;
}
diff --git a/its/plugin/src/test/java/org/sonar/css/its/IssuesTest.java b/its/plugin/src/test/java/org/sonar/css/its/IssuesTest.java
index 0a162a7..a81230a 100644
--- a/its/plugin/src/test/java/org/sonar/css/its/IssuesTest.java
+++ b/its/plugin/src/test/java/org/sonar/css/its/IssuesTest.java
@@ -51,7 +51,6 @@ public class IssuesTest {
@BeforeClass
public static void prepare() {
RulesConfiguration rulesConfiguration = new RulesConfiguration();
- rulesConfiguration.add("S4670", "ignoreTypes", "/^mat-/, /^fa-/");
File profile = ProfileGenerator.generateProfile(orchestrator.getServer().getUrl(), "css", "css", rulesConfiguration, Collections.emptySet());
orchestrator.getServer().restoreProfile(FileLocation.of(profile));
diff --git a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/SelectorTypeNoUnknown.java b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/SelectorTypeNoUnknown.java
index abcf430..c7bc201 100644
--- a/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/SelectorTypeNoUnknown.java
+++ b/sonar-css-plugin/src/main/java/org/sonar/css/plugin/rules/SelectorTypeNoUnknown.java
@@ -29,7 +29,8 @@ import static org.sonar.css.plugin.rules.RuleUtils.splitAndTrim;
@Rule(key = "S4670")
public class SelectorTypeNoUnknown implements CssRule {
- private static final String DEFAULT_IGNORED_TYPES = "/^mat-/";
+ // prefixes for Angular Material (mat, md), Font Awesome (fa)
+ private static final String DEFAULT_IGNORED_TYPES = "/^(mat|md|fa)-/";
@RuleProperty(
key = "ignoreTypes",
diff --git a/sonar-css-plugin/src/test/java/org/sonar/css/plugin/rules/CssRuleTest.java b/sonar-css-plugin/src/test/java/org/sonar/css/plugin/rules/CssRuleTest.java
index 044f4f4..e7945b7 100644
--- a/sonar-css-plugin/src/test/java/org/sonar/css/plugin/rules/CssRuleTest.java
+++ b/sonar-css-plugin/src/test/java/org/sonar/css/plugin/rules/CssRuleTest.java
@@ -74,15 +74,15 @@ public class CssRuleTest {
@Test
public void selector_type_no_unknown_default() {
String optionsAsJson = new Gson().toJson(new SelectorTypeNoUnknown().stylelintOptions());
- assertThat(optionsAsJson).isEqualTo("[true,{\"ignoreTypes\":[\"/^mat-/\"]}]");
+ assertThat(optionsAsJson).isEqualTo("[true,{\"ignoreTypes\":[\"/^(mat|md|fa)-/\"]}]");
}
@Test
public void selector_type_no_unknown_custom() {
SelectorTypeNoUnknown selectorTypeNoUnknown = new SelectorTypeNoUnknown();
- selectorTypeNoUnknown.ignoreTypes = "/^mat-/, /^fa-/";
+ selectorTypeNoUnknown.ignoreTypes = "/^(mat|md|fa)-/";
String optionsAsJson = new Gson().toJson(selectorTypeNoUnknown.stylelintOptions());
- assertThat(optionsAsJson).isEqualTo("[true,{\"ignoreTypes\":[\"/^mat-/\",\"/^fa-/\"]}]");
+ assertThat(optionsAsJson).isEqualTo("[true,{\"ignoreTypes\":[\"/^(mat|md|fa)-/\"]}]");
}
@Test