]> source.dussan.org Git - sonarqube.git/commitdiff
Fix some quality flaws
authorJulien HENRY <julien.henry@sonarsource.com>
Wed, 29 Apr 2015 08:23:32 +0000 (10:23 +0200)
committerJulien HENRY <julien.henry@sonarsource.com>
Wed, 29 Apr 2015 08:23:32 +0000 (10:23 +0200)
sonar-batch/src/main/java/org/sonar/batch/phases/SensorMatcher.java
sonar-batch/src/main/java/org/sonar/batch/report/TestExecutionAndCoveragePublisher.java
sonar-batch/src/main/java/org/sonar/batch/scan/report/ResourceReport.java

index 38502235cff67c807005d8c718a7cbb576554e07..c098deb5f0f2104986304d475030b4d4ed3dc838 100644 (file)
@@ -36,8 +36,8 @@ public abstract class SensorMatcher implements BatchExtension, ExtensionMatcher
 
   @Override
   public final boolean accept(Object extension) {
-    return ClassUtils.isAssignable(extension.getClass(), Sensor.class)
-      && acceptSensor((Sensor) extension) || ClassUtils.isAssignable(extension.getClass(), org.sonar.api.batch.sensor.Sensor.class);
+    return (ClassUtils.isAssignable(extension.getClass(), Sensor.class) && acceptSensor((Sensor) extension))
+      || ClassUtils.isAssignable(extension.getClass(), org.sonar.api.batch.sensor.Sensor.class);
   }
 
   public abstract boolean acceptSensor(Sensor sensor);
index 53c86c345a40bc622c63ba630ea8fb0e4e4b53ff..84358102b7862d11c96acb6f4248c2cdae3bdae8 100644 (file)
@@ -41,12 +41,47 @@ import java.util.Set;
 
 public class TestExecutionAndCoveragePublisher implements ReportPublisherStep {
 
-  private final class FunctionImplementation implements Function<String, CoverageDetail> {
+  private final class TestConverter implements Function<MutableTestCase, BatchReport.Test> {
+    private final Set<String> testNamesWithCoverage;
+    private BatchReport.Test.Builder builder = BatchReport.Test.newBuilder();
+
+    private TestConverter(Set<String> testNamesWithCoverage) {
+      this.testNamesWithCoverage = testNamesWithCoverage;
+    }
+
+    @Override
+    public Test apply(MutableTestCase testCase) {
+      builder.clear();
+      builder.setName(testCase.name());
+      if (testCase.doesCover()) {
+        testNamesWithCoverage.add(testCase.name());
+      }
+      Long durationInMs = testCase.durationInMs();
+      if (durationInMs != null) {
+        builder.setDurationInMs(durationInMs);
+      }
+      String msg = testCase.message();
+      if (msg != null) {
+        builder.setMsg(msg);
+      }
+      String stack = testCase.stackTrace();
+      if (stack != null) {
+        builder.setStacktrace(stack);
+      }
+      TestCase.Status status = testCase.status();
+      if (status != null) {
+        builder.setStatus(TestStatus.valueOf(status.name()));
+      }
+      return builder.build();
+    }
+  }
+
+  private final class TestCoverageConverter implements Function<String, CoverageDetail> {
     private final MutableTestPlan testPlan;
     private BatchReport.CoverageDetail.Builder builder = BatchReport.CoverageDetail.newBuilder();
     private BatchReport.CoverageDetail.CoveredFile.Builder coveredBuilder = BatchReport.CoverageDetail.CoveredFile.newBuilder();
 
-    private FunctionImplementation(MutableTestPlan testPlan) {
+    private TestCoverageConverter(MutableTestPlan testPlan) {
       this.testPlan = testPlan;
     }
 
@@ -95,39 +130,9 @@ public class TestExecutionAndCoveragePublisher implements ReportPublisherStep {
 
       final Set<String> testNamesWithCoverage = new HashSet<>();
 
-      writer.writeTests(resource.batchId(), Iterables.transform(testPlan.testCases(), new Function<MutableTestCase, BatchReport.Test>() {
-
-        private BatchReport.Test.Builder builder = BatchReport.Test.newBuilder();
-
-        @Override
-        public Test apply(MutableTestCase testCase) {
-          builder.clear();
-          builder.setName(testCase.name());
-          if (testCase.doesCover()) {
-            testNamesWithCoverage.add(testCase.name());
-          }
-          Long durationInMs = testCase.durationInMs();
-          if (durationInMs != null) {
-            builder.setDurationInMs(durationInMs);
-          }
-          String msg = testCase.message();
-          if (msg != null) {
-            builder.setMsg(msg);
-          }
-          String stack = testCase.stackTrace();
-          if (stack != null) {
-            builder.setStacktrace(stack);
-          }
-          TestCase.Status status = testCase.status();
-          if (status != null) {
-            builder.setStatus(TestStatus.valueOf(status.name()));
-          }
-          return builder.build();
-        }
-
-      }));
+      writer.writeTests(resource.batchId(), Iterables.transform(testPlan.testCases(), new TestConverter(testNamesWithCoverage)));
 
-      writer.writeCoverageDetails(resource.batchId(), Iterables.transform(testNamesWithCoverage, new FunctionImplementation(testPlan)));
+      writer.writeCoverageDetails(resource.batchId(), Iterables.transform(testNamesWithCoverage, new TestCoverageConverter(testPlan)));
     }
   }
 }
index 18e135f278a9e5d42c9ce77c3093335f772de30f..18a7fc8a1e38d8f24edb4e8b8671111c29ee1cac 100644 (file)
@@ -20,7 +20,6 @@
 package org.sonar.batch.scan.report;
 
 import com.google.common.collect.Maps;
-import org.apache.commons.collections.CollectionUtils;
 import org.sonar.api.issue.Issue;
 import org.sonar.api.rules.Rule;
 import org.sonar.api.rules.RulePriority;
@@ -139,9 +138,11 @@ public final class ResourceReport {
 
   private boolean hasIssues(Integer lineId, boolean all) {
     if (all) {
-      return CollectionUtils.isNotEmpty(issuesPerLine.get(lineId));
+      List<Issue> issuesAtLine = issuesPerLine.get(lineId);
+      return issuesAtLine != null && !issuesAtLine.isEmpty();
     }
-    return CollectionUtils.isNotEmpty(newIssuesPerLine.get(lineId));
+    List<Issue> newIssuesAtLine = newIssuesPerLine.get(lineId);
+    return newIssuesAtLine != null && !newIssuesAtLine.isEmpty();
   }
 
   public List<RuleReport> getRuleReports() {