]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-10544 fix tests
authorDuarte Meneses <duarte.meneses@sonarsource.com>
Thu, 19 Apr 2018 14:30:38 +0000 (16:30 +0200)
committerSonarTech <sonartech@sonarsource.com>
Thu, 26 Apr 2018 18:20:52 +0000 (20:20 +0200)
13 files changed:
plugins/sonar-xoo-plugin/src/main/java/org/sonar/xoo/rule/OneExternalIssuePerLineSensor.java
server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/NewExternalRule.java
server/sonar-server/src/main/java/org/sonar/server/computation/task/projectanalysis/issue/TrackerRawInputFactory.java
server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/issue/NewExternalRuleTest.java
server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/issue/RuleRepositoryImplTest.java
server/sonar-server/src/test/java/org/sonar/server/computation/task/projectanalysis/step/PersistExternalRulesStepTest.java
server/sonar-server/src/test/java/org/sonar/server/rule/ExternalRuleCreatorTest.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/NewExternalIssue.java
sonar-plugin-api/src/main/java/org/sonar/api/batch/sensor/issue/internal/DefaultExternalIssue.java
sonar-plugin-api/src/test/java/org/sonar/api/batch/sensor/issue/internal/DefaultExternalIssueTest.java
sonar-scanner-engine/src/main/java/org/sonar/scanner/externalissue/ExternalIssueImporter.java
sonar-scanner-engine/src/main/java/org/sonar/scanner/externalissue/ReportParser.java
sonar-scanner-engine/src/test/java/org/sonar/scanner/issue/ModuleIssuesTest.java

index 7b872e26ee80d86b39e66a03efe1561949b2f710..d9fe4b59e821858a945299202895d573e85847d5 100644 (file)
@@ -75,7 +75,7 @@ public class OneExternalIssuePerLineSensor implements Sensor {
           .at(file.selectLine(line))
           .message("This issue is generated on each line"))
         .severity(Severity.valueOf(SEVERITY))
-        .remediationEffort(EFFORT)
+        .remediationEffortMinutes(EFFORT)
         .type(type)
         .save();
     }
index 2e4c067a20dc04f4c672781ebbd065c29cf158e2..8b85d1486f9ab9af8e537be09805095383383a47 100644 (file)
@@ -31,12 +31,10 @@ import org.sonar.api.server.debt.DebtRemediationFunction;
 public class NewExternalRule implements Rule {
   private final RuleKey key;
   private final String name;
-  private final RuleType type;
   private final String pluginKey;
 
   private NewExternalRule(Builder builder) {
     this.key = checkNotNull(builder.key, "key");
-    this.type = checkNotNull(builder.type, "type");
     this.pluginKey = builder.pluginKey;
     this.name = builder.name;
   }
@@ -70,7 +68,7 @@ public class NewExternalRule implements Rule {
 
   @Override
   public RuleType getType() {
-    return type;
+    return null;
   }
 
   @Override
@@ -95,8 +93,6 @@ public class NewExternalRule implements Rule {
 
   public static class Builder {
     private RuleKey key;
-    private String severity;
-    private RuleType type;
     private String pluginKey;
     private String name;
 
@@ -110,19 +106,6 @@ public class NewExternalRule implements Rule {
       return this;
     }
 
-    public Builder setType(RuleType type) {
-      this.type = type;
-      return this;
-    }
-
-    public String severity() {
-      return severity;
-    }
-
-    public RuleType type() {
-      return type;
-    }
-
     public String name() {
       return name;
     }
index 320a7d10708039693a221640d7b115818376c544..8b134cf9d18ac49ec57bf6e05cb47e88934527d8 100644 (file)
@@ -214,13 +214,9 @@ public class TrackerRawInputFactory {
 
     private NewExternalRule toExternalRule(ScannerReport.ExternalIssue reportIssue) {
       NewExternalRule.Builder builder = new NewExternalRule.Builder()
-        .setType(toRuleType(reportIssue.getType()))
         .setName(RuleKey.of(reportIssue.getRuleRepository(), reportIssue.getRuleKey()).toString())
         .setKey(RuleKey.of(RuleKey.EXTERNAL_RULE_REPO_PREFIX + reportIssue.getRuleRepository(), reportIssue.getRuleKey()));
 
-      if (reportIssue.getSeverity() != Severity.UNSET_SEVERITY) {
-        builder.setSeverity(reportIssue.getSeverity().name());
-      }
       return builder.build();
     }
 
index f1ade8f696cd159ae2a3de49c36e3e9fad58ea43..f973b28b7b866c0b6268d8485c74de625d6b9728 100644 (file)
@@ -22,7 +22,6 @@ package org.sonar.server.computation.task.projectanalysis.issue;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
 import org.sonar.api.rule.RuleKey;
-import org.sonar.api.rules.RuleType;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -35,31 +34,14 @@ public class NewExternalRuleTest {
     NewExternalRule.Builder builder = new NewExternalRule.Builder()
       .setKey(RuleKey.of("repo", "rule"))
       .setPluginKey("repo")
-      .setName("name")
-      .setSeverity("MAJOR")
-      .setType(RuleType.BUG);
+      .setName("name");
 
-    assertThat(builder.severity()).isEqualTo("MAJOR");
-    assertThat(builder.type()).isEqualTo(RuleType.BUG);
     assertThat(builder.name()).isEqualTo("name");
 
     NewExternalRule rule = builder.build();
 
     assertThat(rule.getName()).isEqualTo("name");
     assertThat(rule.getPluginKey()).isEqualTo("repo");
-    assertThat(rule.getSeverity()).isEqualTo("MAJOR");
-    assertThat(rule.getType()).isEqualTo(RuleType.BUG);
-  }
-
-  @Test
-  public void fail_if_type_is_not_set() {
-    exception.expect(IllegalStateException.class);
-    exception.expectMessage("'type' not expected to be null for an external rule");
-
-    new NewExternalRule.Builder()
-      .setKey(RuleKey.of("repo", "rule"))
-      .setSeverity("MAJOR")
-      .build();
   }
 
   @Test
@@ -68,8 +50,6 @@ public class NewExternalRuleTest {
     exception.expectMessage("'key' not expected to be null for an external rule");
 
     new NewExternalRule.Builder()
-      .setSeverity("MAJOR")
-      .setType(RuleType.BUG)
       .build();
   }
 }
index a3827e8f7ec06dfad3afd426070e5f0eb2ca27dc..910cd12458bf10c570a0e05ac028c807cbc406fe 100644 (file)
@@ -50,8 +50,6 @@ import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verifyNoMoreInteractions;
 import static org.mockito.Mockito.when;
 import static org.mockito.internal.verification.VerificationModeFactory.times;
-import static org.sonar.api.rule.Severity.BLOCKER;
-import static org.sonar.api.rules.RuleType.BUG;
 
 public class RuleRepositoryImplTest {
 
@@ -274,13 +272,11 @@ public class RuleRepositoryImplTest {
     underTest.insertNewExternalRuleIfAbsent(ruleKey, () -> new NewExternalRule.Builder()
       .setKey(ruleKey)
       .setPluginKey("eslint")
-      .setSeverity(BLOCKER)
-      .setType(BUG)
       .build());
 
     assertThat(underTest.getByKey(ruleKey)).isNotNull();
     assertThat(underTest.getByKey(ruleKey).getPluginKey()).isEqualTo("eslint");
-    assertThat(underTest.getByKey(ruleKey).getType()).isEqualTo(BUG);
+    assertThat(underTest.getByKey(ruleKey).getType()).isNull();
 
     RuleDao ruleDao = dbClient.ruleDao();
     Optional<RuleDefinitionDto> ruleDefinitionDto = ruleDao.selectDefinitionByKey(dbClient.openSession(false), ruleKey);
@@ -295,8 +291,6 @@ public class RuleRepositoryImplTest {
     underTest.insertNewExternalRuleIfAbsent(ruleKey, () -> new NewExternalRule.Builder()
       .setKey(ruleKey)
       .setPluginKey("eslint")
-      .setSeverity(BLOCKER)
-      .setType(BUG)
       .build());
 
     underTest.persistNewExternalRules(db.getSession());
index f834e616ee307d9ab7f459ed336d3261eb7cb668..c265a91a82d8560bedc2a8f308be2ef603e14c0d 100644 (file)
@@ -39,8 +39,6 @@ import org.sonar.server.rule.index.RuleIndexDefinition;
 import org.sonar.server.rule.index.RuleIndexer;
 
 import static org.assertj.core.api.Assertions.assertThat;
-import static org.sonar.api.rule.Severity.BLOCKER;
-import static org.sonar.api.rules.RuleType.BUG;
 
 public class PersistExternalRulesStepTest extends BaseStepTest {
 
@@ -57,7 +55,7 @@ public class PersistExternalRulesStepTest extends BaseStepTest {
   private RuleRepositoryImpl ruleRepository;
 
   @org.junit.Rule
-  public EsTester es =  EsTester.create();
+  public EsTester es = EsTester.create();
 
   private RuleIndexer indexer = new RuleIndexer(es.client(), dbClient);
   private ExternalRuleCreator externalRuleCreator = new ExternalRuleCreator(dbClient, System2.INSTANCE, indexer);
@@ -80,9 +78,7 @@ public class PersistExternalRulesStepTest extends BaseStepTest {
     ruleRepository.insertNewExternalRuleIfAbsent(ruleKey, () -> new NewExternalRule.Builder()
       .setKey(ruleKey)
       .setPluginKey("eslint")
-      .setSeverity(BLOCKER)
       .setName("eslint:no-cond-assign")
-      .setType(BUG)
       .build());
 
     underTest.execute();
@@ -95,8 +91,8 @@ public class PersistExternalRulesStepTest extends BaseStepTest {
     assertThat(reloaded.getRuleKey()).isEqualTo("no-cond-assign");
     assertThat(reloaded.getRepositoryKey()).isEqualTo("eslint");
     assertThat(reloaded.isExternal()).isTrue();
-    assertThat(reloaded.getType()).isEqualTo(2);
-    assertThat(reloaded.getSeverity()).isEqualTo(4);
+    assertThat(reloaded.getType()).isEqualTo(0);
+    assertThat(reloaded.getSeverity()).isNull();
     assertThat(reloaded.getName()).isEqualTo("eslint:no-cond-assign");
     assertThat(reloaded.getPluginKey()).isEqualTo("eslint");
 
@@ -111,8 +107,6 @@ public class PersistExternalRulesStepTest extends BaseStepTest {
     ruleRepository.insertNewExternalRuleIfAbsent(ruleKey, () -> new NewExternalRule.Builder()
       .setKey(ruleKey)
       .setPluginKey("eslint")
-      .setSeverity(BLOCKER)
-      .setType(BUG)
       .build());
 
     underTest.execute();
index 96d4bb8d6336a4f3e7785b36c7d1f559e1aef631..ac55073f1836e416872c2face6842e15d4291a1b 100644 (file)
@@ -30,7 +30,6 @@ import org.sonar.server.es.EsTester;
 import org.sonar.server.rule.index.RuleIndexer;
 
 import static org.assertj.core.api.Assertions.assertThat;
-import static org.sonar.api.rules.RuleType.BUG;
 
 public class ExternalRuleCreatorTest {
 
@@ -49,7 +48,6 @@ public class ExternalRuleCreatorTest {
     NewExternalRule externalRule = new NewExternalRule.Builder()
       .setKey(ruleKey)
       .setPluginKey("eslint")
-      .setType(BUG)
       .setName("name")
       .build();
 
index d2e55a999eeb421356f5bb90c5a16628f075d1da..ba9a4d7f3ec7585cf2a97285299649a99983db7d 100644 (file)
@@ -45,7 +45,7 @@ public interface NewExternalIssue {
   /**
    * Effort to fix the issue, in minutes.
    */
-  NewExternalIssue remediationEffort(@Nullable Long effort);
+  NewExternalIssue remediationEffortMinutes(@Nullable Long effortInMinutes);
 
   /**
    * Set the severity of the issue.
index 03b65866bc81410d28b6a398c07839f10187d572..ee68be1d242d6d15fde7bcdbcb672e399ec8fe70 100644 (file)
@@ -45,7 +45,7 @@ public class DefaultExternalIssue extends AbstractDefaultIssue<DefaultExternalIs
   }
 
   @Override
-  public DefaultExternalIssue remediationEffort(@Nullable Long effort) {
+  public DefaultExternalIssue remediationEffortMinutes(@Nullable Long effort) {
     Preconditions.checkArgument(effort == null || effort >= 0, format("effort must be greater than or equal 0 (got %s)", effort));
     this.effort = effort;
     return this;
index 1176527f04ccb3123ebb3843fa0a533111a89453..079d4995f2b8cd32877a33e2cf4c5e56a9d6e88f 100644 (file)
@@ -51,7 +51,7 @@ public class DefaultExternalIssueTest {
         .at(inputFile.selectLine(1))
         .message("Wrong way!"))
       .forRule(RuleKey.of("repo", "rule"))
-      .remediationEffort(10l)
+      .remediationEffortMinutes(10l)
       .type(RuleType.BUG)
       .severity(Severity.BLOCKER);
 
@@ -77,7 +77,7 @@ public class DefaultExternalIssueTest {
         .at(inputFile.selectLine(1))
         .message("Wrong way!"))
       .forRule(RuleKey.of("repo", "rule"))
-      .remediationEffort(10l)
+      .remediationEffortMinutes(10l)
       .severity(Severity.BLOCKER);
 
     exception.expect(IllegalStateException.class);
@@ -93,7 +93,7 @@ public class DefaultExternalIssueTest {
         .on(mock(InputComponent.class))
         .message("Wrong way!"))
       .forRule(RuleKey.of("repo", "rule"))
-      .remediationEffort(10l)
+      .remediationEffortMinutes(10l)
       .severity(Severity.BLOCKER);
 
     exception.expect(IllegalStateException.class);
@@ -110,7 +110,7 @@ public class DefaultExternalIssueTest {
         .at(inputFile.selectLine(1))
         .message("Wrong way!"))
       .forRule(RuleKey.of("repo", "rule"))
-      .remediationEffort(10l)
+      .remediationEffortMinutes(10l)
       .type(RuleType.BUG);
 
     exception.expect(IllegalStateException.class);
index f484f0bd195d353bf3ce505a4cb7a773d97c1b59..b68fa4c910f7ba421089e0b855d979cf5e1dabbb 100644 (file)
@@ -58,6 +58,7 @@ public class ExternalIssueImporter {
       NewExternalIssue externalIssue = context.newExternalIssue()
         .forRule(RuleKey.of(issue.engineId, issue.ruleId))
         .severity(Severity.valueOf(issue.severity))
+        .remediationEffortMinutes(20L)
         .type(RuleType.valueOf(issue.type));
 
       NewIssueLocation primary = fillLocation(context, externalIssue.newLocation(), issue.primaryLocation);
index 61c35a05eb836222b0d1f05ed4306e37ac75cf3d..807283100265d34d02e8ab194625e5c7aea4a456 100644 (file)
@@ -108,6 +108,8 @@ public class ReportParser {
     String ruleId;
     String severity;
     String type;
+    @Nullable
+    Integer effortMinutes;
     Location primaryLocation;
     @Nullable
     Location[] secondaryLocations;
index 6309720339dd19d71488b9bb9c448b8a2bb8d48d..eba43f725645855a4da4b6ce90d9d0cfb60096ba 100644 (file)
@@ -33,6 +33,7 @@ import org.sonar.api.batch.sensor.issue.internal.DefaultIssue;
 import org.sonar.api.batch.sensor.issue.internal.DefaultIssueLocation;
 import org.sonar.api.rule.RuleKey;
 import org.sonar.api.rule.Severity;
+import org.sonar.api.rules.RuleType;
 import org.sonar.api.utils.MessageException;
 import org.sonar.scanner.protocol.output.ScannerReport;
 import org.sonar.scanner.report.ReportPublisher;
@@ -154,6 +155,7 @@ public class ModuleIssuesTest {
 
     DefaultExternalIssue issue = new DefaultExternalIssue()
       .at(new DefaultIssueLocation().on(file).at(file.selectLine(3)).message("Foo"))
+      .type(RuleType.BUG)
       .forRule(SQUID_RULE_KEY)
       .severity(org.sonar.api.batch.rule.Severity.CRITICAL);