aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-core/src/test
diff options
context:
space:
mode:
authorJulien Lancelot <julien.lancelot@gmail.com>2013-05-21 12:12:17 +0200
committerJulien Lancelot <julien.lancelot@gmail.com>2013-05-21 12:12:17 +0200
commitc93e1fea3a623d6d214c3fcb7b33cdd93c774937 (patch)
tree65da779b62904e18bc1fbfd441da1c347d1139dd /sonar-core/src/test
parentb6b56822d8206c05510da48678dea8021b5be109 (diff)
downloadsonarqube-c93e1fea3a623d6d214c3fcb7b33cdd93c774937.tar.gz
sonarqube-c93e1fea3a623d6d214c3fcb7b33cdd93c774937.zip
SONAR-4301 Add sort on issue search page
Diffstat (limited to 'sonar-core/src/test')
-rw-r--r--sonar-core/src/test/java/org/sonar/core/issue/db/IssueDaoTest.java68
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_by_ids.xml20
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_assignee.xml (renamed from sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result.xml)0
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_close_date.xml77
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_creation_date.xml74
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_severity.xml74
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_status.xml77
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_update_date.xml74
8 files changed, 451 insertions, 13 deletions
diff --git a/sonar-core/src/test/java/org/sonar/core/issue/db/IssueDaoTest.java b/sonar-core/src/test/java/org/sonar/core/issue/db/IssueDaoTest.java
index 2bc8932b731..cfb30567f21 100644
--- a/sonar-core/src/test/java/org/sonar/core/issue/db/IssueDaoTest.java
+++ b/sonar-core/src/test/java/org/sonar/core/issue/db/IssueDaoTest.java
@@ -27,7 +27,6 @@ import org.sonar.api.rule.RuleKey;
import org.sonar.api.utils.DateUtils;
import org.sonar.core.persistence.AbstractDaoTestCase;
-import java.util.Collection;
import java.util.List;
import static com.google.common.collect.Lists.newArrayList;
@@ -222,8 +221,32 @@ public class IssueDaoTest extends AbstractDaoTestCase {
}
@Test
+ public void should_select_sort_by_severity() {
+ setupData("shared", "should_select_returned_sorted_result_by_severity");
+
+ IssueQuery query = IssueQuery.builder().sort(IssueQuery.Sort.SEVERITY).asc(true).build();
+ List<IssueDto> results = newArrayList(dao.select(query));
+ assertThat(results).hasSize(3);
+ assertThat(results.get(0).getSeverity()).isEqualTo("BLOCKER");
+ assertThat(results.get(1).getSeverity()).isEqualTo("MAJOR");
+ assertThat(results.get(2).getSeverity()).isEqualTo("MINOR");
+ }
+
+ @Test
+ public void should_select_sort_by_status() {
+ setupData("shared", "should_select_returned_sorted_result_by_status");
+
+ IssueQuery query = IssueQuery.builder().sort(IssueQuery.Sort.STATUS).asc(true).build();
+ List<IssueDto> results = newArrayList(dao.select(query));
+ assertThat(results).hasSize(3);
+ assertThat(results.get(0).getStatus()).isEqualTo("CLOSED");
+ assertThat(results.get(1).getStatus()).isEqualTo("OPEN");
+ assertThat(results.get(2).getStatus()).isEqualTo("REOPEN");
+ }
+
+ @Test
public void should_select_sort_by_assignee() {
- setupData("shared", "should_select_returned_sorted_result");
+ setupData("shared", "should_select_returned_sorted_result_by_assignee");
IssueQuery query = IssueQuery.builder().sort(IssueQuery.Sort.ASSIGNEE).asc(true).build();
List<IssueDto> results = newArrayList(dao.select(query));
@@ -234,6 +257,42 @@ public class IssueDaoTest extends AbstractDaoTestCase {
}
@Test
+ public void should_select_sort_by_creation_date() {
+ setupData("shared", "should_select_returned_sorted_result_by_creation_date");
+
+ IssueQuery query = IssueQuery.builder().sort(IssueQuery.Sort.CREATION_DATE).asc(false).build();
+ List<IssueDto> results = newArrayList(dao.select(query));
+ assertThat(results).hasSize(3);
+ assertThat(results.get(0).getId()).isEqualTo(102);
+ assertThat(results.get(1).getId()).isEqualTo(100);
+ assertThat(results.get(2).getId()).isEqualTo(101);
+ }
+
+ @Test
+ public void should_select_sort_by_update_date() {
+ setupData("shared", "should_select_returned_sorted_result_by_update_date");
+
+ IssueQuery query = IssueQuery.builder().sort(IssueQuery.Sort.UPDATE_DATE).asc(false).build();
+ List<IssueDto> results = newArrayList(dao.select(query));
+ assertThat(results).hasSize(3);
+ assertThat(results.get(0).getId()).isEqualTo(102);
+ assertThat(results.get(1).getId()).isEqualTo(100);
+ assertThat(results.get(2).getId()).isEqualTo(101);
+ }
+
+ @Test
+ public void should_select_sort_by_close_date() {
+ setupData("shared", "should_select_returned_sorted_result_by_close_date");
+
+ IssueQuery query = IssueQuery.builder().sort(IssueQuery.Sort.CLOSE_DATE).asc(false).build();
+ List<IssueDto> results = newArrayList(dao.select(query));
+ assertThat(results).hasSize(3);
+ assertThat(results.get(0).getId()).isEqualTo(102);
+ assertThat(results.get(1).getId()).isEqualTo(100);
+ assertThat(results.get(2).getId()).isEqualTo(101);
+ }
+
+ @Test
public void should_select_issue_and_component_ids() {
setupData("shared", "should_select_issue_and_component_ids");
@@ -259,7 +318,10 @@ public class IssueDaoTest extends AbstractDaoTestCase {
public void should_select_by_ids() {
setupData("shared", "should_select_by_ids");
- Collection<IssueDto> results = dao.selectByIds(newArrayList(100l, 101l, 102l));
+ List<IssueDto> results = newArrayList(dao.selectByIds(newArrayList(100l, 101l, 102l), IssueQuery.Sort.CREATION_DATE, false));
assertThat(results).hasSize(3);
+ assertThat(results.get(0).getId()).isEqualTo(102);
+ assertThat(results.get(1).getId()).isEqualTo(100);
+ assertThat(results.get(2).getId()).isEqualTo(101);
}
}
diff --git a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_by_ids.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_by_ids.xml
index d2804c856d3..3d6ad15c5a0 100644
--- a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_by_ids.xml
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_by_ids.xml
@@ -18,11 +18,11 @@
assignee="perceval"
author_login="[null]"
attributes="JIRA=FOO-1234"
- issue_creation_date="2013-04-16"
- issue_update_date="2013-04-16"
- issue_close_date="2013-04-16"
- created_at="2013-04-16"
- updated_at="2013-04-16"
+ issue_creation_date="2013-04-17"
+ issue_update_date="2013-04-17"
+ issue_close_date="2013-04-17"
+ created_at="2013-04-17"
+ updated_at="2013-04-17"
/>
<issues
@@ -68,10 +68,10 @@
assignee="perceval"
author_login="[null]"
attributes="JIRA=FOO-1234"
- issue_creation_date="2013-04-16"
- issue_update_date="2013-04-16"
- issue_close_date="2013-04-16"
- created_at="2013-04-16"
- updated_at="2013-04-16"
+ issue_creation_date="2013-04-18"
+ issue_update_date="2013-04-18"
+ issue_close_date="2013-04-18"
+ created_at="2013-04-18"
+ updated_at="2013-04-18"
/>
</dataset>
diff --git a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_assignee.xml
index 41a97ef98b8..41a97ef98b8 100644
--- a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result.xml
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_assignee.xml
diff --git a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_close_date.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_close_date.xml
new file mode 100644
index 00000000000..b27051ff207
--- /dev/null
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_close_date.xml
@@ -0,0 +1,77 @@
+<dataset>
+
+ <!-- rule 500 -->
+ <issues
+ id="100"
+ kee="ABCDE-1"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="arthur"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-17"
+ issue_close_date="2013-04-17"
+ created_at="2013-04-16"
+ updated_at="2013-04-17"
+ />
+
+ <issues
+ id="101"
+ kee="ABCDE-2"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+
+
+ <!-- rule 501 -->
+ <issues
+ id="102"
+ kee="ABCDE-3"
+ resource_id="401"
+ rule_id="501"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="henry"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-18"
+ issue_close_date="2013-04-18"
+ created_at="2013-04-16"
+ updated_at="2013-04-18"
+ />
+</dataset>
diff --git a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_creation_date.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_creation_date.xml
new file mode 100644
index 00000000000..d84b71fa09b
--- /dev/null
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_creation_date.xml
@@ -0,0 +1,74 @@
+<dataset>
+
+ <issues
+ id="100"
+ kee="ABCDE-1"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="arthur"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-15"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-15"
+ updated_at="2013-04-16"
+ />
+
+ <issues
+ id="101"
+ kee="ABCDE-2"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-14"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-14"
+ updated_at="2013-04-16"
+ />
+
+ <issues
+ id="102"
+ kee="ABCDE-3"
+ resource_id="401"
+ rule_id="501"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="henry"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+</dataset>
diff --git a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_severity.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_severity.xml
new file mode 100644
index 00000000000..9dae4080973
--- /dev/null
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_severity.xml
@@ -0,0 +1,74 @@
+<dataset>
+
+ <issues
+ id="100"
+ kee="ABCDE-1"
+ resource_id="401"
+ rule_id="500"
+ severity="MINOR"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="arthur"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+
+ <issues
+ id="101"
+ kee="ABCDE-2"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+
+ <issues
+ id="102"
+ kee="ABCDE-3"
+ resource_id="401"
+ rule_id="501"
+ severity="MAJOR"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="henry"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+</dataset>
diff --git a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_status.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_status.xml
new file mode 100644
index 00000000000..b510a5c447a
--- /dev/null
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_status.xml
@@ -0,0 +1,77 @@
+<dataset>
+
+ <!-- rule 500 -->
+ <issues
+ id="100"
+ kee="ABCDE-1"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="arthur"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+
+ <issues
+ id="101"
+ kee="ABCDE-2"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="CLOSED"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+
+
+ <!-- rule 501 -->
+ <issues
+ id="102"
+ kee="ABCDE-3"
+ resource_id="401"
+ rule_id="501"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="REOPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="henry"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+</dataset>
diff --git a/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_update_date.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_update_date.xml
new file mode 100644
index 00000000000..769bae1454d
--- /dev/null
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/IssueDaoTest/should_select_returned_sorted_result_by_update_date.xml
@@ -0,0 +1,74 @@
+<dataset>
+
+ <issues
+ id="100"
+ kee="ABCDE-1"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="arthur"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-17"
+ issue_close_date="2013-04-17"
+ created_at="2013-04-16"
+ updated_at="2013-04-17"
+ />
+
+ <issues
+ id="101"
+ kee="ABCDE-2"
+ resource_id="401"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-16"
+ issue_close_date="2013-04-16"
+ created_at="2013-04-16"
+ updated_at="2013-04-16"
+ />
+
+ <issues
+ id="102"
+ kee="ABCDE-3"
+ resource_id="401"
+ rule_id="501"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ message="[null]"
+ line="200"
+ effort_to_fix="4.2"
+ status="OPEN"
+ resolution="FIXED"
+ checksum="XXX"
+ reporter="arthur"
+ assignee="henry"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ issue_creation_date="2013-04-16"
+ issue_update_date="2013-04-18"
+ issue_close_date="2013-04-18"
+ created_at="2013-04-16"
+ updated_at="2013-04-18"
+ />
+</dataset>