summaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
authorFabrice Bellingard <bellingard@gmail.com>2012-01-31 16:06:20 +0100
committerFabrice Bellingard <bellingard@gmail.com>2012-01-31 16:06:20 +0100
commit682d97d4d7b8aee7a323285661074f867eb93341 (patch)
tree25231ab5f675fb88fe7143fc3179895defd58407 /plugins
parentb4505ed334468dfea58d04d9ccc8ec8019d668ea (diff)
downloadsonarqube-682d97d4d7b8aee7a323285661074f867eb93341.tar.gz
sonarqube-682d97d4d7b8aee7a323285661074f867eb93341.zip
SONAR-3228 Some metrics are not persisted if value 0
=> whereas they can be used in Sonar Web UI
Diffstat (limited to 'plugins')
-rw-r--r--plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/WeightedViolationsDecorator.java9
-rw-r--r--plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/sensors/WeightedViolationsDecoratorTest.java17
-rw-r--r--plugins/sonar-squid-java-plugin/src/main/java/org/sonar/plugins/squid/bridges/DesignBridge.java20
3 files changed, 21 insertions, 25 deletions
diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/WeightedViolationsDecorator.java b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/WeightedViolationsDecorator.java
index d5abe69b322..d29503f9ef0 100644
--- a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/WeightedViolationsDecorator.java
+++ b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/sensors/WeightedViolationsDecorator.java
@@ -116,14 +116,7 @@ public class WeightedViolationsDecorator implements Decorator {
}
Measure debtMeasure = new Measure(CoreMetrics.WEIGHTED_VIOLATIONS, debt, KeyValueFormat.format(distribution));
- saveMeasure(context, debtMeasure);
- }
-
-
- private void saveMeasure(DecoratorContext context, Measure debtMeasure) {
- if (debtMeasure.getValue() > 0.0) {
- context.saveMeasure(debtMeasure);
- }
+ context.saveMeasure(debtMeasure);
}
}
diff --git a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/sensors/WeightedViolationsDecoratorTest.java b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/sensors/WeightedViolationsDecoratorTest.java
index 4b65c02e74e..0628860fe0a 100644
--- a/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/sensors/WeightedViolationsDecoratorTest.java
+++ b/plugins/sonar-core-plugin/src/test/java/org/sonar/plugins/core/sensors/WeightedViolationsDecoratorTest.java
@@ -19,6 +19,13 @@
*/
package org.sonar.plugins.core.sensors;
+import static org.junit.Assert.assertThat;
+import static org.mockito.Matchers.anyObject;
+import static org.mockito.Matchers.argThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
import org.hamcrest.core.Is;
import org.junit.Test;
import org.sonar.api.CoreProperties;
@@ -29,11 +36,6 @@ import org.sonar.api.measures.Measure;
import org.sonar.api.rules.RulePriority;
import org.sonar.api.test.IsMeasure;
-import java.util.Map;
-
-import static org.junit.Assert.assertThat;
-import static org.mockito.Mockito.*;
-
public class WeightedViolationsDecoratorTest {
@Test
@@ -53,8 +55,9 @@ public class WeightedViolationsDecoratorTest {
verify(context).saveMeasure(argThat(new IsMeasure(CoreMetrics.WEIGHTED_VIOLATIONS, "INFO=50;CRITICAL=80;BLOCKER=100")));
}
+ // SONAR-3092
@Test
- public void doNotSaveZero() {
+ public void doSaveZero() {
Settings settings = new Settings();
settings.setProperty(CoreProperties.CORE_RULE_WEIGHTS_PROPERTY, "BLOCKER=10;CRITICAL=5;MAJOR=2;MINOR=1;INFO=0");
DecoratorContext context = mock(DecoratorContext.class);
@@ -63,7 +66,7 @@ public class WeightedViolationsDecoratorTest {
decorator.start();
decorator.decorate(context);
- verify(context, never()).saveMeasure((Measure) anyObject());
+ verify(context).saveMeasure((Measure) anyObject());
}
@Test
diff --git a/plugins/sonar-squid-java-plugin/src/main/java/org/sonar/plugins/squid/bridges/DesignBridge.java b/plugins/sonar-squid-java-plugin/src/main/java/org/sonar/plugins/squid/bridges/DesignBridge.java
index fc561421c0a..9e1175faee8 100644
--- a/plugins/sonar-squid-java-plugin/src/main/java/org/sonar/plugins/squid/bridges/DesignBridge.java
+++ b/plugins/sonar-squid-java-plugin/src/main/java/org/sonar/plugins/squid/bridges/DesignBridge.java
@@ -70,10 +70,10 @@ public class DesignBridge extends Bridge {
LOG.debug("{} feedback edges", feedbackEdges.size());
int tangles = cyclesAndFESSolver.getWeightOfFeedbackEdgeSet();
- savePositiveMeasure(sonarProject, CoreMetrics.PACKAGE_CYCLES, (double) cyclesAndFESSolver.getCycles().size(), true);
- savePositiveMeasure(sonarProject, CoreMetrics.PACKAGE_FEEDBACK_EDGES, (double) feedbackEdges.size(), true);
- savePositiveMeasure(sonarProject, CoreMetrics.PACKAGE_TANGLES, (double) tangles, true);
- savePositiveMeasure(sonarProject, CoreMetrics.PACKAGE_EDGES_WEIGHT, getEdgesWeight(squidPackages), false);
+ savePositiveMeasure(sonarProject, CoreMetrics.PACKAGE_CYCLES, (double) cyclesAndFESSolver.getCycles().size());
+ savePositiveMeasure(sonarProject, CoreMetrics.PACKAGE_FEEDBACK_EDGES, (double) feedbackEdges.size());
+ savePositiveMeasure(sonarProject, CoreMetrics.PACKAGE_TANGLES, (double) tangles);
+ savePositiveMeasure(sonarProject, CoreMetrics.PACKAGE_EDGES_WEIGHT, getEdgesWeight(squidPackages));
String dsmJson = serializeDsm(squid, squidPackages, feedbackEdges);
Measure dsmMeasure = new Measure(CoreMetrics.DEPENDENCY_MATRIX, dsmJson).setPersistenceMode(PersistenceMode.DATABASE);
@@ -83,8 +83,8 @@ public class DesignBridge extends Bridge {
}
}
- private void savePositiveMeasure(Resource sonarResource, Metric metric, double value, boolean strict) {
- if ((strict && value > 0.0) || ( !strict && value >= 0.0)) {
+ private void savePositiveMeasure(Resource sonarResource, Metric metric, double value) {
+ if (value >= 0.0) {
context.saveMeasure(sonarResource, metric, value);
}
}
@@ -103,10 +103,10 @@ public class DesignBridge extends Bridge {
Set<Edge> feedbackEdges = solver.getEdges();
int tangles = solver.getWeightOfFeedbackEdgeSet();
- savePositiveMeasure(sonarPackage, CoreMetrics.FILE_CYCLES, (double) cycles.size(), false);
- savePositiveMeasure(sonarPackage, CoreMetrics.FILE_FEEDBACK_EDGES, (double) feedbackEdges.size(), false);
- savePositiveMeasure(sonarPackage, CoreMetrics.FILE_TANGLES, (double) tangles, false);
- savePositiveMeasure(sonarPackage, CoreMetrics.FILE_EDGES_WEIGHT, getEdgesWeight(squidFiles), false);
+ savePositiveMeasure(sonarPackage, CoreMetrics.FILE_CYCLES, (double) cycles.size());
+ savePositiveMeasure(sonarPackage, CoreMetrics.FILE_FEEDBACK_EDGES, (double) feedbackEdges.size());
+ savePositiveMeasure(sonarPackage, CoreMetrics.FILE_TANGLES, (double) tangles);
+ savePositiveMeasure(sonarPackage, CoreMetrics.FILE_EDGES_WEIGHT, getEdgesWeight(squidFiles));
String dsmJson = serializeDsm(squid, squidFiles, feedbackEdges);
context.saveMeasure(sonarPackage, new Measure(CoreMetrics.DEPENDENCY_MATRIX, dsmJson));