From 9bcc46b342cfb888f16c180cb0b3103335def5f1 Mon Sep 17 00:00:00 2001
From: Amaury Levé
Date: Thu, 21 Jun 2018 14:55:09 +0200
Subject: Rule S4653: Units should be valid (#50)
---
its/plugin/pom.xml | 6 ++++++
its/plugin/projects/css-plugin-test-project/src/file1.css | 10 ----------
its/plugin/projects/css-plugin-test-project/src/file2.less | 11 -----------
its/plugin/projects/css-plugin-test-project/src/file3.scss | 12 ------------
its/plugin/projects/css-plugin-test-project/src/file4.html | 10 ----------
its/plugin/projects/issues-project/src/file1.css | 4 ++++
its/plugin/projects/issues-project/src/file2.less | 4 ++++
its/plugin/projects/issues-project/src/file3.scss | 4 ++++
its/plugin/projects/metrics-project/src/file1.css | 9 +++++++++
its/plugin/projects/metrics-project/src/file2.less | 11 +++++++++++
its/plugin/projects/metrics-project/src/file3.scss | 12 ++++++++++++
its/plugin/projects/metrics-project/src/file4.html | 10 ++++++++++
its/plugin/src/test/java/org/sonar/css/its/IssuesTest.java | 7 +++----
its/plugin/src/test/java/org/sonar/css/its/MetricsTest.java | 12 ++++++------
its/plugin/src/test/java/org/sonar/css/its/Tests.java | 2 +-
15 files changed, 70 insertions(+), 54 deletions(-)
delete mode 100644 its/plugin/projects/css-plugin-test-project/src/file1.css
delete mode 100644 its/plugin/projects/css-plugin-test-project/src/file2.less
delete mode 100644 its/plugin/projects/css-plugin-test-project/src/file3.scss
delete mode 100644 its/plugin/projects/css-plugin-test-project/src/file4.html
create mode 100644 its/plugin/projects/issues-project/src/file1.css
create mode 100644 its/plugin/projects/issues-project/src/file2.less
create mode 100644 its/plugin/projects/issues-project/src/file3.scss
create mode 100644 its/plugin/projects/metrics-project/src/file1.css
create mode 100644 its/plugin/projects/metrics-project/src/file2.less
create mode 100644 its/plugin/projects/metrics-project/src/file3.scss
create mode 100644 its/plugin/projects/metrics-project/src/file4.html
(limited to 'its/plugin')
diff --git a/its/plugin/pom.xml b/its/plugin/pom.xml
index 24aa42c..ec3b408 100644
--- a/its/plugin/pom.xml
+++ b/its/plugin/pom.xml
@@ -27,6 +27,12 @@
org.assertj
assertj-core
+
+ org.sonarsource.css
+ sonar-css-plugin
+ ${version}
+ test
+
diff --git a/its/plugin/projects/css-plugin-test-project/src/file1.css b/its/plugin/projects/css-plugin-test-project/src/file1.css
deleted file mode 100644
index 621aea1..0000000
--- a/its/plugin/projects/css-plugin-test-project/src/file1.css
+++ /dev/null
@@ -1,10 +0,0 @@
-.class1 {
- background-color: #2d5e8b;
-}
-.class1 .class2 {
- background-color: #ffw; /* issue here */
- color: #2d5e8b;
- foo: "some text";
-}
-
-/* some comment */
\ No newline at end of file
diff --git a/its/plugin/projects/css-plugin-test-project/src/file2.less b/its/plugin/projects/css-plugin-test-project/src/file2.less
deleted file mode 100644
index 691fd11..0000000
--- a/its/plugin/projects/css-plugin-test-project/src/file2.less
+++ /dev/null
@@ -1,11 +0,0 @@
-@color-base: #2d5e8b;
-.class1 {
- background-color: @color-base;
- .class2 {
- background-color: #fff;
- color: @color-base;
- foo: "some text";
- }
-}
-
-/* some comment */
\ No newline at end of file
diff --git a/its/plugin/projects/css-plugin-test-project/src/file3.scss b/its/plugin/projects/css-plugin-test-project/src/file3.scss
deleted file mode 100644
index fd62422..0000000
--- a/its/plugin/projects/css-plugin-test-project/src/file3.scss
+++ /dev/null
@@ -1,12 +0,0 @@
-$firstValue: 62.5%;
-
-$firstValue: 24px !default;
-
-body {
- font-size: $firstValue;
- foo: "some text";
-}
-
-// body font size = 62.5%
-
-/* some comment */
\ No newline at end of file
diff --git a/its/plugin/projects/css-plugin-test-project/src/file4.html b/its/plugin/projects/css-plugin-test-project/src/file4.html
deleted file mode 100644
index 499a20b..0000000
--- a/its/plugin/projects/css-plugin-test-project/src/file4.html
+++ /dev/null
@@ -1,10 +0,0 @@
-
-Example
-
-Hello World!
diff --git a/its/plugin/projects/issues-project/src/file1.css b/its/plugin/projects/issues-project/src/file1.css
new file mode 100644
index 0000000..b0dcf70
--- /dev/null
+++ b/its/plugin/projects/issues-project/src/file1.css
@@ -0,0 +1,4 @@
+.class1 {
+ background-color: #ffw; /* S4647 | color-no-invalid-hex */
+ width: 100pixels; /* S4653 | unit-no-unknown */
+}
\ No newline at end of file
diff --git a/its/plugin/projects/issues-project/src/file2.less b/its/plugin/projects/issues-project/src/file2.less
new file mode 100644
index 0000000..b0dcf70
--- /dev/null
+++ b/its/plugin/projects/issues-project/src/file2.less
@@ -0,0 +1,4 @@
+.class1 {
+ background-color: #ffw; /* S4647 | color-no-invalid-hex */
+ width: 100pixels; /* S4653 | unit-no-unknown */
+}
\ No newline at end of file
diff --git a/its/plugin/projects/issues-project/src/file3.scss b/its/plugin/projects/issues-project/src/file3.scss
new file mode 100644
index 0000000..b0dcf70
--- /dev/null
+++ b/its/plugin/projects/issues-project/src/file3.scss
@@ -0,0 +1,4 @@
+.class1 {
+ background-color: #ffw; /* S4647 | color-no-invalid-hex */
+ width: 100pixels; /* S4653 | unit-no-unknown */
+}
\ No newline at end of file
diff --git a/its/plugin/projects/metrics-project/src/file1.css b/its/plugin/projects/metrics-project/src/file1.css
new file mode 100644
index 0000000..fc4bf73
--- /dev/null
+++ b/its/plugin/projects/metrics-project/src/file1.css
@@ -0,0 +1,9 @@
+.class1 {
+ background-color: #2d5e8b;
+}
+.class1 .class2 {
+ color: #2d5e8b;
+ foo: "some text";
+}
+
+/* some comment */
\ No newline at end of file
diff --git a/its/plugin/projects/metrics-project/src/file2.less b/its/plugin/projects/metrics-project/src/file2.less
new file mode 100644
index 0000000..691fd11
--- /dev/null
+++ b/its/plugin/projects/metrics-project/src/file2.less
@@ -0,0 +1,11 @@
+@color-base: #2d5e8b;
+.class1 {
+ background-color: @color-base;
+ .class2 {
+ background-color: #fff;
+ color: @color-base;
+ foo: "some text";
+ }
+}
+
+/* some comment */
\ No newline at end of file
diff --git a/its/plugin/projects/metrics-project/src/file3.scss b/its/plugin/projects/metrics-project/src/file3.scss
new file mode 100644
index 0000000..fd62422
--- /dev/null
+++ b/its/plugin/projects/metrics-project/src/file3.scss
@@ -0,0 +1,12 @@
+$firstValue: 62.5%;
+
+$firstValue: 24px !default;
+
+body {
+ font-size: $firstValue;
+ foo: "some text";
+}
+
+// body font size = 62.5%
+
+/* some comment */
\ No newline at end of file
diff --git a/its/plugin/projects/metrics-project/src/file4.html b/its/plugin/projects/metrics-project/src/file4.html
new file mode 100644
index 0000000..499a20b
--- /dev/null
+++ b/its/plugin/projects/metrics-project/src/file4.html
@@ -0,0 +1,10 @@
+
+Example
+
+Hello World!
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 0f9de2e..d70597d 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
@@ -25,6 +25,7 @@ import java.util.List;
import org.junit.BeforeClass;
import org.junit.ClassRule;
import org.junit.Test;
+import org.sonar.css.plugin.CssRules;
import org.sonarqube.ws.Issues.Issue;
import org.sonarqube.ws.client.issues.SearchRequest;
@@ -33,7 +34,7 @@ import static org.sonar.css.its.Tests.newWsClient;
public class IssuesTest {
- private static String PROJECT_KEY = "css-plugin-test-project";
+ private static String PROJECT_KEY = "issues-project";
@ClassRule
public static Orchestrator orchestrator = Tests.ORCHESTRATOR;
@@ -49,9 +50,7 @@ public class IssuesTest {
request.setComponentKeys(Collections.singletonList(PROJECT_KEY));
List issuesList = newWsClient().issues().search(request).getIssuesList();
- assertThat(issuesList).extracting("line").containsOnly(5);
- assertThat(issuesList).extracting("component").containsOnly(PROJECT_KEY + ":src/file1.css");
- assertThat(issuesList).extracting("rule").containsOnly("css:S4647");
+ assertThat(issuesList).extracting("rule").hasSize(CssRules.getRuleClasses().size() * 3);
}
}
diff --git a/its/plugin/src/test/java/org/sonar/css/its/MetricsTest.java b/its/plugin/src/test/java/org/sonar/css/its/MetricsTest.java
index 9af016d..4e6280c 100644
--- a/its/plugin/src/test/java/org/sonar/css/its/MetricsTest.java
+++ b/its/plugin/src/test/java/org/sonar/css/its/MetricsTest.java
@@ -30,7 +30,7 @@ import static org.sonar.css.its.Tests.getProjectMeasureAsDouble;
public class MetricsTest {
- private static String PROJECT_KEY = "css-plugin-test-project";
+ private static String PROJECT_KEY = "metrics-project";
@ClassRule
public static Orchestrator orchestrator = Tests.ORCHESTRATOR;
@@ -42,14 +42,14 @@ public class MetricsTest {
@Test
public void test() {
- assertThat(getProjectMeasureAsDouble("lines", PROJECT_KEY)).isEqualTo(33);
- assertThat(getProjectMeasureAsDouble("ncloc", PROJECT_KEY)).isEqualTo(23);
- assertThat(getProjectMeasureAsDouble("comment_lines", PROJECT_KEY)).isEqualTo(5);
+ assertThat(getProjectMeasureAsDouble("lines", PROJECT_KEY)).isEqualTo(32);
+ assertThat(getProjectMeasureAsDouble("ncloc", PROJECT_KEY)).isEqualTo(22);
+ assertThat(getProjectMeasureAsDouble("comment_lines", PROJECT_KEY)).isEqualTo(4);
assertThat(getMeasure("ncloc_data", PROJECT_KEY + ":src/file1.css").getValue())
- .contains("1=1;", "2=1;", "3=1;", "4=1;", "5=1;", "6=1;", "7=1;", "8=1");
+ .contains("1=1;", "2=1;", "3=1;", "4=1;", "5=1;", "6=1;", "7=1");
assertThat(getMeasure("comment_lines_data", PROJECT_KEY + ":src/file1.css").getValue())
- .contains("5=1;", "10=1");
+ .contains("9=1");
assertThat(getMeasure("ncloc_data", PROJECT_KEY + ":src/file2.less").getValue())
.contains("1=1;", "2=1;", "3=1;", "4=1;", "5=1;", "6=1;", "7=1;", "8=1;", "9=1");
diff --git a/its/plugin/src/test/java/org/sonar/css/its/Tests.java b/its/plugin/src/test/java/org/sonar/css/its/Tests.java
index eb6a01e..31b2f78 100644
--- a/its/plugin/src/test/java/org/sonar/css/its/Tests.java
+++ b/its/plugin/src/test/java/org/sonar/css/its/Tests.java
@@ -52,7 +52,7 @@ public class Tests {
static {
OrchestratorBuilder orchestratorBuilder = Orchestrator.builderEnv()
.addPlugin(PLUGIN_LOCATION)
- .setSonarVersion(System.getProperty("sonar.runtimeVersion", "7.2-RC1"));
+ .setSonarVersion(System.getProperty("sonar.runtimeVersion", "7.2"));
ORCHESTRATOR = orchestratorBuilder.build();
}
--
cgit v1.2.3