aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-core/src/test
diff options
context:
space:
mode:
authorJulien Lancelot <julien.lancelot@gmail.com>2013-05-07 10:05:19 +0200
committerJulien Lancelot <julien.lancelot@gmail.com>2013-05-07 10:05:19 +0200
commit9d6b148aea0128fbf5d92a9abdb56031b10de972 (patch)
tree90ee71d395ba236e02e560c764e0bc59aae9780d /sonar-core/src/test
parent5e0a5c49081f3bf6003b9c3fedd8aec60523c8b4 (diff)
downloadsonarqube-9d6b148aea0128fbf5d92a9abdb56031b10de972.tar.gz
sonarqube-9d6b148aea0128fbf5d92a9abdb56031b10de972.zip
SONAR-3755 Add query to get open and closed action plan stats
Diffstat (limited to 'sonar-core/src/test')
-rw-r--r--sonar-core/src/test/java/org/sonar/core/issue/ActionPlanFinderTest.java26
-rw-r--r--sonar-core/src/test/java/org/sonar/core/issue/db/ActionPlanStatsDaoTest.java20
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_closed_by_project.xml (renamed from sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_by_project.xml)29
-rw-r--r--sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_open_by_project.xml81
4 files changed, 145 insertions, 11 deletions
diff --git a/sonar-core/src/test/java/org/sonar/core/issue/ActionPlanFinderTest.java b/sonar-core/src/test/java/org/sonar/core/issue/ActionPlanFinderTest.java
index 084004c405f..e858359bf60 100644
--- a/sonar-core/src/test/java/org/sonar/core/issue/ActionPlanFinderTest.java
+++ b/sonar-core/src/test/java/org/sonar/core/issue/ActionPlanFinderTest.java
@@ -75,19 +75,35 @@ public class ActionPlanFinderTest {
}
@Test
- public void should_find_action_plan_stats(){
+ public void should_find_open_action_plan_stats(){
when(resourceDao.getResource(any(ResourceQuery.class))).thenReturn(new ResourceDto().setId(1L).setKey("org.sonar.Sample"));
- when(actionPlanStatsDao.findByProjectId(1L)).thenReturn(newArrayList(new ActionPlanStatsDto()));
+ when(actionPlanStatsDao.findOpenByProjectId(1L)).thenReturn(newArrayList(new ActionPlanStatsDto()));
- Collection<ActionPlanStats> results = actionPlanFinder.findActionPlanStats("org.sonar.Sample");
+ Collection<ActionPlanStats> results = actionPlanFinder.findOpenActionPlanStats("org.sonar.Sample");
assertThat(results).hasSize(1);
}
@Test(expected = IllegalArgumentException.class)
- public void should_throw_exception_if_project_not_found_when_find_action_plan_stats(){
+ public void should_throw_exception_if_project_not_found_when_find_open_action_plan_stats(){
when(resourceDao.getResource(any(ResourceQuery.class))).thenReturn(null);
- actionPlanFinder.findActionPlanStats("org.sonar.Sample");
+ actionPlanFinder.findOpenActionPlanStats("org.sonar.Sample");
+ }
+
+ @Test
+ public void should_find_closed_action_plan_stats(){
+ when(resourceDao.getResource(any(ResourceQuery.class))).thenReturn(new ResourceDto().setId(1L).setKey("org.sonar.Sample"));
+ when(actionPlanStatsDao.findClosedByProjectId(1L)).thenReturn(newArrayList(new ActionPlanStatsDto()));
+
+ Collection<ActionPlanStats> results = actionPlanFinder.findClosedActionPlanStats("org.sonar.Sample");
+ assertThat(results).hasSize(1);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void should_throw_exception_if_project_not_found_when_find_closed_action_plan_stats(){
+ when(resourceDao.getResource(any(ResourceQuery.class))).thenReturn(null);
+
+ actionPlanFinder.findClosedActionPlanStats("org.sonar.Sample");
}
}
diff --git a/sonar-core/src/test/java/org/sonar/core/issue/db/ActionPlanStatsDaoTest.java b/sonar-core/src/test/java/org/sonar/core/issue/db/ActionPlanStatsDaoTest.java
index f90831d7513..2161ab28904 100644
--- a/sonar-core/src/test/java/org/sonar/core/issue/db/ActionPlanStatsDaoTest.java
+++ b/sonar-core/src/test/java/org/sonar/core/issue/db/ActionPlanStatsDaoTest.java
@@ -38,14 +38,26 @@ public class ActionPlanStatsDaoTest extends AbstractDaoTestCase {
}
@Test
- public void should_find_by_project() {
- setupData("should_find_by_project");
+ public void should_find_open_by_project() {
+ setupData("should_find_open_by_project");
- Collection<ActionPlanStatsDto> result = dao.findByProjectId(1l);
+ Collection<ActionPlanStatsDto> result = dao.findOpenByProjectId(1l);
assertThat(result).isNotEmpty();
ActionPlanStatsDto actionPlanStatsDto = result.iterator().next();
- assertThat(actionPlanStatsDto.getTotalIssues()).isEqualTo(2);
+ assertThat(actionPlanStatsDto.getTotalIssues()).isEqualTo(3);
+ assertThat(actionPlanStatsDto.getOpenIssues()).isEqualTo(1);
+ }
+
+ @Test
+ public void should_find_closed_by_project() {
+ setupData("should_find_closed_by_project");
+
+ Collection<ActionPlanStatsDto> result = dao.findClosedByProjectId(1l);
+ assertThat(result).isNotEmpty();
+
+ ActionPlanStatsDto actionPlanStatsDto = result.iterator().next();
+ assertThat(actionPlanStatsDto.getTotalIssues()).isEqualTo(3);
assertThat(actionPlanStatsDto.getOpenIssues()).isEqualTo(1);
}
diff --git a/sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_by_project.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_closed_by_project.xml
index b31d0d7b13f..ec95313fff9 100644
--- a/sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_by_project.xml
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_closed_by_project.xml
@@ -1,7 +1,7 @@
<dataset>
<action_plans id="1" kee="ABC" project_id="1" name="SHORT_TERM" description="[null]" deadline="[null]"
- user_login="igor" status="[null]" created_at="[null]" updated_at="[null]" />
+ user_login="igor" status="CLOSED" created_at="[null]" updated_at="[null]" />
<issues
id="100"
@@ -14,7 +14,7 @@
description="[null]"
line="200"
status="OPEN"
- resolution="OPEN"
+ resolution="[null]"
checksum="XXX"
user_login="arthur"
assignee_login="perceval"
@@ -53,4 +53,29 @@
updated_at="2013-04-16"
/>
+ <issues
+ id="102"
+ kee="ABCDG"
+ resource_id="400"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ manual_issue="[false]"
+ description="[null]"
+ line="200"
+ status="CLOSED"
+ resolution="FIXED"
+ checksum="XXX"
+ user_login="arthur"
+ assignee_login="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ action_plan_key="ABC"
+ 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/ActionPlanStatsDaoTest/should_find_open_by_project.xml b/sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_open_by_project.xml
new file mode 100644
index 00000000000..6596479511f
--- /dev/null
+++ b/sonar-core/src/test/resources/org/sonar/core/issue/db/ActionPlanStatsDaoTest/should_find_open_by_project.xml
@@ -0,0 +1,81 @@
+<dataset>
+
+ <action_plans id="1" kee="ABC" project_id="1" name="SHORT_TERM" description="[null]" deadline="[null]"
+ user_login="igor" status="OPEN" created_at="[null]" updated_at="[null]" />
+
+ <issues
+ id="100"
+ kee="ABCDE"
+ resource_id="400"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ manual_issue="[false]"
+ description="[null]"
+ line="200"
+ status="OPEN"
+ resolution="[null]"
+ checksum="XXX"
+ user_login="arthur"
+ assignee_login="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ action_plan_key="ABC"
+ 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="ABCDF"
+ resource_id="400"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ manual_issue="[false]"
+ description="[null]"
+ line="200"
+ status="CLOSED"
+ resolution="FIXED"
+ checksum="XXX"
+ user_login="arthur"
+ assignee_login="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ action_plan_key="ABC"
+ 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="ABCDG"
+ resource_id="400"
+ rule_id="500"
+ severity="BLOCKER"
+ manual_severity="[false]"
+ manual_issue="[false]"
+ description="[null]"
+ line="200"
+ status="CLOSED"
+ resolution="FIXED"
+ checksum="XXX"
+ user_login="arthur"
+ assignee_login="perceval"
+ author_login="[null]"
+ attributes="JIRA=FOO-1234"
+ action_plan_key="ABC"
+ 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>