aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-db/src/test/java/org/sonar/db/issue/IssueDaoTest.java
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@sonarsource.com>2015-07-05 10:06:55 +0200
committerSimon Brandhof <simon.brandhof@sonarsource.com>2015-07-06 09:22:44 +0200
commit32af292b745b7226bacc3f34d612437664af0ba3 (patch)
tree538d0b9852eaeb08ad685d426ea61c8170210e40 /sonar-db/src/test/java/org/sonar/db/issue/IssueDaoTest.java
parent1df148803610cd54f182b8636f01c0e6ece92b19 (diff)
downloadsonarqube-32af292b745b7226bacc3f34d612437664af0ba3.tar.gz
sonarqube-32af292b745b7226bacc3f34d612437664af0ba3.zip
Move some classes from sonar-server to sonar-db
Diffstat (limited to 'sonar-db/src/test/java/org/sonar/db/issue/IssueDaoTest.java')
-rw-r--r--sonar-db/src/test/java/org/sonar/db/issue/IssueDaoTest.java117
1 files changed, 117 insertions, 0 deletions
diff --git a/sonar-db/src/test/java/org/sonar/db/issue/IssueDaoTest.java b/sonar-db/src/test/java/org/sonar/db/issue/IssueDaoTest.java
index 24f556df1e6..dc64f45d05d 100644
--- a/sonar-db/src/test/java/org/sonar/db/issue/IssueDaoTest.java
+++ b/sonar-db/src/test/java/org/sonar/db/issue/IssueDaoTest.java
@@ -20,12 +20,17 @@
package org.sonar.db.issue;
+import java.util.Arrays;
+import java.util.List;
import org.apache.ibatis.executor.result.DefaultResultHandler;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
+import org.sonar.api.rule.RuleKey;
import org.sonar.db.AbstractDaoTestCase;
import org.sonar.db.DbSession;
+import org.sonar.db.component.ComponentDto;
+import org.sonar.db.rule.RuleTesting;
import static org.assertj.core.api.Assertions.assertThat;
@@ -91,4 +96,116 @@ public class IssueDaoTest extends AbstractDaoTestCase {
assertThat(issue.getComponentKey()).isNotNull();
assertThat(issue.getProjectKey()).isNull();
}
+
+ @Test
+ public void get_by_key() {
+ setupData("shared", "get_by_key");
+
+ IssueDto issue = dao.selectByKey(session, "ABCDE");
+ assertThat(issue.getKee()).isEqualTo("ABCDE");
+ assertThat(issue.getId()).isEqualTo(100L);
+ assertThat(issue.getComponentUuid()).isEqualTo("CDEF");
+ assertThat(issue.getProjectUuid()).isEqualTo("ABCD");
+ assertThat(issue.getRuleId()).isEqualTo(500);
+ assertThat(issue.getLanguage()).isEqualTo("java");
+ assertThat(issue.getSeverity()).isEqualTo("BLOCKER");
+ assertThat(issue.isManualSeverity()).isFalse();
+ assertThat(issue.getMessage()).isNull();
+ assertThat(issue.getLine()).isEqualTo(200);
+ assertThat(issue.getEffortToFix()).isEqualTo(4.2);
+ assertThat(issue.getStatus()).isEqualTo("OPEN");
+ assertThat(issue.getResolution()).isEqualTo("FIXED");
+ assertThat(issue.getChecksum()).isEqualTo("XXX");
+ assertThat(issue.getAuthorLogin()).isEqualTo("karadoc");
+ assertThat(issue.getReporter()).isEqualTo("arthur");
+ assertThat(issue.getAssignee()).isEqualTo("perceval");
+ assertThat(issue.getIssueAttributes()).isEqualTo("JIRA=FOO-1234");
+ assertThat(issue.getIssueCreationDate()).isNotNull();
+ assertThat(issue.getIssueUpdateDate()).isNotNull();
+ assertThat(issue.getIssueCloseDate()).isNotNull();
+ assertThat(issue.getCreatedAt()).isEqualTo(1400000000000L);
+ assertThat(issue.getUpdatedAt()).isEqualTo(1450000000000L);
+ assertThat(issue.getRuleRepo()).isEqualTo("squid");
+ assertThat(issue.getRule()).isEqualTo("AvoidCycle");
+ assertThat(issue.getComponentKey()).isEqualTo("Action.java");
+ assertThat(issue.getProjectKey()).isEqualTo("struts");
+ }
+
+ @Test
+ public void get_by_keys() {
+ setupData("shared", "get_by_key");
+
+ List<IssueDto> issues = dao.selectByKeys(session, Arrays.asList("ABCDE"));
+ assertThat(issues).hasSize(1);
+ }
+
+ @Test
+ public void find_by_action_plan() {
+ setupData("shared", "find_by_action_plan");
+
+ List<IssueDto> issues = dao.findByActionPlan(session, "AP-1");
+ assertThat(issues).hasSize(1);
+
+ IssueDto issue = issues.get(0);
+ assertThat(issue.getKee()).isEqualTo("ABCDE");
+ assertThat(issue.getActionPlanKey()).isEqualTo("AP-1");
+ assertThat(issue.getComponentUuid()).isEqualTo("CDEF");
+ assertThat(issue.getProjectUuid()).isEqualTo("ABCD");
+ assertThat(issue.getRuleId()).isEqualTo(500);
+ assertThat(issue.getLanguage()).isEqualTo("java");
+ assertThat(issue.getSeverity()).isEqualTo("BLOCKER");
+ assertThat(issue.isManualSeverity()).isFalse();
+ assertThat(issue.getMessage()).isNull();
+ assertThat(issue.getLine()).isEqualTo(200);
+ assertThat(issue.getEffortToFix()).isEqualTo(4.2);
+ assertThat(issue.getStatus()).isEqualTo("OPEN");
+ assertThat(issue.getResolution()).isEqualTo("FIXED");
+ assertThat(issue.getChecksum()).isEqualTo("XXX");
+ assertThat(issue.getAuthorLogin()).isEqualTo("karadoc");
+ assertThat(issue.getReporter()).isEqualTo("arthur");
+ assertThat(issue.getAssignee()).isEqualTo("perceval");
+ assertThat(issue.getIssueAttributes()).isEqualTo("JIRA=FOO-1234");
+ assertThat(issue.getIssueCreationDate()).isNotNull();
+ assertThat(issue.getIssueUpdateDate()).isNotNull();
+ assertThat(issue.getIssueCloseDate()).isNotNull();
+ assertThat(issue.getCreatedAt()).isNotNull();
+ assertThat(issue.getUpdatedAt()).isNotNull();
+ assertThat(issue.getRuleRepo()).isEqualTo("squid");
+ assertThat(issue.getRule()).isEqualTo("AvoidCycle");
+ assertThat(issue.getComponentKey()).isEqualTo("Action.java");
+ assertThat(issue.getProjectKey()).isEqualTo("struts");
+ }
+
+ @Test
+ public void insert() {
+ IssueDto dto = new IssueDto();
+ dto.setComponent(new ComponentDto().setKey("struts:Action").setId(123L).setUuid("component-uuid"));
+ dto.setProject(new ComponentDto().setKey("struts").setId(100L).setUuid("project-uuid"));
+ dto.setRule(RuleTesting.newDto(RuleKey.of("squid", "S001")).setId(200));
+ dto.setKee("ABCDE");
+ dto.setLine(500);
+ dto.setEffortToFix(3.14);
+ dto.setDebt(10L);
+ dto.setResolution("FIXED");
+ dto.setStatus("RESOLVED");
+ dto.setSeverity("BLOCKER");
+ dto.setReporter("emmerik");
+ dto.setAuthorLogin("morgan");
+ dto.setAssignee("karadoc");
+ dto.setActionPlanKey("current_sprint");
+ dto.setIssueAttributes("JIRA=FOO-1234");
+ dto.setChecksum("123456789");
+ dto.setMessage("the message");
+
+ dto.setIssueCreationTime(1_500_000_000_000L);
+ dto.setIssueUpdateTime(1_500_000_000_001L);
+ dto.setIssueCloseTime(1_500_000_000_002L);
+ dto.setCreatedAt(1_400_000_000_000L);
+ dto.setUpdatedAt(1_450_000_000_000L);
+
+ dao.insert(session, dto);
+ session.commit();
+
+ checkTables("insert", new String[] {"id"}, "issues");
+ }
}