]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-8867 make UserDao#selectEnabled process RuleDefinitionDto
authorSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Tue, 21 Mar 2017 18:17:12 +0000 (19:17 +0100)
committerSébastien Lesaint <sebastien.lesaint@sonarsource.com>
Thu, 23 Mar 2017 16:54:56 +0000 (17:54 +0100)
rather than RuleDto

server/sonar-db-dao/src/main/resources/org/sonar/db/rule/RuleMapper.xml
server/sonar-db-dao/src/test/java/org/sonar/db/rule/RuleDaoTest.java
server/sonar-server/src/main/java/org/sonar/server/rule/ws/ListAction.java

index 148b06c87ea81fa2cad81280818678f765bf169f..eaf6e2e553081bbe1bd3306ab69dce46be68f12b 100644 (file)
@@ -45,9 +45,9 @@
       rules r
   </select>
 
-  <select id="selectEnabled" resultType="Rule">
+  <select id="selectEnabled" resultType="org.sonar.db.rule.RuleDefinitionDto">
     select
-      <include refid="selectRuleColumns"/>
+      <include refid="selectDefinitionColumns"/>
     from
       rules r
     where
index 488ac1f49da72cdb6822730a690cb540953856aa..d5efab4e33bd451a151a0d29f9242a7b1057e129 100644 (file)
@@ -25,7 +25,6 @@ import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
-import org.apache.ibatis.session.ResultContext;
 import org.apache.ibatis.session.ResultHandler;
 import org.junit.Rule;
 import org.junit.Test;
@@ -190,29 +189,20 @@ public class RuleDaoTest {
   public void selectEnabled_with_ResultHandler() {
     dbTester.prepareDbUnit(getClass(), "selectEnabled.xml");
 
-    final List<RuleDto> rules = new ArrayList<>();
-    ResultHandler resultHandler = new ResultHandler() {
-      @Override
-      public void handleResult(ResultContext resultContext) {
-        rules.add((RuleDto) resultContext.getResultObject());
-      }
-    };
+    final List<RuleDefinitionDto> rules = new ArrayList<>();
+    ResultHandler resultHandler = resultContext -> rules.add((RuleDefinitionDto) resultContext.getResultObject());
     underTest.selectEnabled(dbTester.getSession(), resultHandler);
 
     assertThat(rules.size()).isEqualTo(1);
-    RuleDto ruleDto = rules.get(0);
+    RuleDefinitionDto ruleDto = rules.get(0);
     assertThat(ruleDto.getId()).isEqualTo(1);
     assertThat(ruleDto.getName()).isEqualTo("Avoid Null");
     assertThat(ruleDto.getDescription()).isEqualTo("Should avoid NULL");
     assertThat(ruleDto.getDescriptionFormat()).isEqualTo(RuleDto.Format.HTML);
     assertThat(ruleDto.getStatus()).isEqualTo(RuleStatus.READY);
     assertThat(ruleDto.getRepositoryKey()).isEqualTo("checkstyle");
-    assertThat(ruleDto.getNoteData()).isEqualTo("Rule note with accents \u00e9\u00e8\u00e0");
-    assertThat(ruleDto.getRemediationFunction()).isEqualTo("LINEAR");
     assertThat(ruleDto.getDefaultRemediationFunction()).isEqualTo("LINEAR_OFFSET");
-    assertThat(ruleDto.getRemediationGapMultiplier()).isEqualTo("1h");
     assertThat(ruleDto.getDefaultRemediationGapMultiplier()).isEqualTo("5d");
-    assertThat(ruleDto.getRemediationBaseEffort()).isEqualTo("5min");
     assertThat(ruleDto.getDefaultRemediationBaseEffort()).isEqualTo("10h");
     assertThat(ruleDto.getGapDescription()).isEqualTo("squid.S115.effortToFix");
   }
index dd3500a9ef528a5eadad266d99fb756851cbe187..4d324d580eed21589b0e968b6da4ad727b45bad9 100644 (file)
@@ -24,7 +24,7 @@ import org.sonar.api.server.ws.Response;
 import org.sonar.api.server.ws.WebService;
 import org.sonar.db.DbClient;
 import org.sonar.db.DbSession;
-import org.sonar.db.rule.RuleDto;
+import org.sonar.db.rule.RuleDefinitionDto;
 import org.sonarqube.ws.MediaTypes;
 import org.sonarqube.ws.Rules.ListResponse;
 
@@ -55,7 +55,7 @@ public class ListAction implements RulesWsAction {
     final ListResponse.Rule.Builder ruleBuilder = ListResponse.Rule.newBuilder();
     try (DbSession dbSession = dbClient.openSession(false)) {
       dbClient.ruleDao().selectEnabled(dbSession, resultContext -> {
-        RuleDto dto = (RuleDto) resultContext.getResultObject();
+        RuleDefinitionDto dto = (RuleDefinitionDto) resultContext.getResultObject();
         ruleBuilder
           .clear()
           .setRepository(dto.getRepositoryKey())