aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-plugin-api/src
diff options
context:
space:
mode:
Diffstat (limited to 'sonar-plugin-api/src')
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/issue/IssueQuery.java12
-rw-r--r--sonar-plugin-api/src/test/java/org/sonar/api/issue/IssueQueryTest.java18
2 files changed, 30 insertions, 0 deletions
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/issue/IssueQuery.java b/sonar-plugin-api/src/main/java/org/sonar/api/issue/IssueQuery.java
index e7cf30e7cf7..ab6ec98a9cd 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/issue/IssueQuery.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/issue/IssueQuery.java
@@ -38,6 +38,7 @@ public class IssueQuery {
private final List<String> statuses;
private final List<String> resolutions;
private final List<String> components;
+ private final List<String> componentRoots;
private final String ruleRepository;
private final String rule;
private final List<String> userLogins;
@@ -52,6 +53,7 @@ public class IssueQuery {
this.statuses = builder.statuses;
this.resolutions = builder.resolutions;
this.components = builder.components;
+ this.componentRoots = builder.componentRoots;
this.ruleRepository = builder.ruleRepository;
this.rule = builder.rule;
this.userLogins = builder.userLogins;
@@ -82,6 +84,10 @@ public class IssueQuery {
return components;
}
+ public List<String> componentRoots() {
+ return componentRoots;
+ }
+
public String ruleRepository() {
return ruleRepository;
}
@@ -137,6 +143,7 @@ public class IssueQuery {
private List<String> statuses;
private List<String> resolutions;
private List<String> components;
+ private List<String> componentRoots;
private String ruleRepository;
private String rule;
private List<String> userLogins;
@@ -174,6 +181,11 @@ public class IssueQuery {
return this;
}
+ public Builder componentRoots(List<String> l) {
+ this.componentRoots = l;
+ return this;
+ }
+
public Builder ruleRepository(String ruleRepository) {
this.ruleRepository = ruleRepository;
return this;
diff --git a/sonar-plugin-api/src/test/java/org/sonar/api/issue/IssueQueryTest.java b/sonar-plugin-api/src/test/java/org/sonar/api/issue/IssueQueryTest.java
index bc61e359408..ef7fcc4c354 100644
--- a/sonar-plugin-api/src/test/java/org/sonar/api/issue/IssueQueryTest.java
+++ b/sonar-plugin-api/src/test/java/org/sonar/api/issue/IssueQueryTest.java
@@ -22,6 +22,8 @@ package org.sonar.api.issue;
import com.google.common.collect.Lists;
import org.junit.Test;
+import java.util.Date;
+
import static org.fest.assertions.Assertions.assertThat;
public class IssueQueryTest {
@@ -32,14 +34,30 @@ public class IssueQueryTest {
.keys(Lists.newArrayList("ABCDE"))
.severities(Lists.newArrayList(Issue.SEVERITY_BLOCKER))
.statuses(Lists.newArrayList(Issue.STATUS_RESOLVED))
+ .resolutions(Lists.newArrayList(Issue.RESOLUTION_FALSE_POSITIVE))
+ .components(Lists.newArrayList("components"))
+ .componentRoots(Lists.newArrayList("componentRoots"))
+ .ruleRepository("ruleRepository")
+ .rule("rule")
+ .userLogins(Lists.newArrayList("user"))
.assigneeLogins(Lists.newArrayList("gargantua"))
+ .createdAfter(new Date())
+ .createdBefore(new Date())
.limit(125)
.offset(33)
.build();
assertThat(query.keys()).containsExactly("ABCDE");
assertThat(query.severities()).containsExactly(Issue.SEVERITY_BLOCKER);
assertThat(query.statuses()).containsExactly(Issue.STATUS_RESOLVED);
+ assertThat(query.resolutions()).containsExactly(Issue.RESOLUTION_FALSE_POSITIVE);
+ assertThat(query.components()).containsExactly("components");
+ assertThat(query.componentRoots()).containsExactly("componentRoots");
+ assertThat(query.userLogins()).containsExactly("user");
assertThat(query.assigneeLogins()).containsExactly("gargantua");
+ assertThat(query.ruleRepository()).isEqualTo("ruleRepository");
+ assertThat(query.rule()).isEqualTo("rule");
+ assertThat(query.createdAfter()).isNotNull();
+ assertThat(query.createdBefore()).isNotNull();
assertThat(query.limit()).isEqualTo(125);
assertThat(query.offset()).isEqualTo(33);
}