aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-ws-client
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@gmail.com>2013-05-29 22:02:23 +0200
committerSimon Brandhof <simon.brandhof@gmail.com>2013-05-29 22:02:23 +0200
commit371ab065edbef2e92b502878eec9a73d310af54b (patch)
tree4e85b007f2cc55c7bb2f124f771bd7cb530b2fd6 /sonar-ws-client
parentf06fb0fad22f4f64dbe95d5ad5e413dd0fb4869e (diff)
downloadsonarqube-371ab065edbef2e92b502878eec9a73d310af54b.tar.gz
sonarqube-371ab065edbef2e92b502878eec9a73d310af54b.zip
Fix some quality flaws
Diffstat (limited to 'sonar-ws-client')
-rw-r--r--sonar-ws-client/src/main/java/org/sonar/wsclient/issue/DefaultIssueClient.java4
-rw-r--r--sonar-ws-client/src/main/java/org/sonar/wsclient/issue/IssueJsonParser.java (renamed from sonar-ws-client/src/main/java/org/sonar/wsclient/issue/IssueParser.java)53
-rw-r--r--sonar-ws-client/src/test/java/org/sonar/wsclient/issue/IssueJsonParserTest.java (renamed from sonar-ws-client/src/test/java/org/sonar/wsclient/issue/IssueParserTest.java)16
-rw-r--r--sonar-ws-client/src/test/java/org/sonar/wsclient/user/UserQueryTest.java3
4 files changed, 47 insertions, 29 deletions
diff --git a/sonar-ws-client/src/main/java/org/sonar/wsclient/issue/DefaultIssueClient.java b/sonar-ws-client/src/main/java/org/sonar/wsclient/issue/DefaultIssueClient.java
index ceef7fe98fc..727a2e4c409 100644
--- a/sonar-ws-client/src/main/java/org/sonar/wsclient/issue/DefaultIssueClient.java
+++ b/sonar-ws-client/src/main/java/org/sonar/wsclient/issue/DefaultIssueClient.java
@@ -35,14 +35,14 @@ import java.util.Map;
public class DefaultIssueClient implements IssueClient {
private final HttpRequestFactory requestFactory;
- private final IssueParser parser;
+ private final IssueJsonParser parser;
/**
* For internal use. Use {@link org.sonar.wsclient.SonarClient} to get an instance.
*/
public DefaultIssueClient(HttpRequestFactory requestFactory) {
this.requestFactory = requestFactory;
- this.parser = new IssueParser();
+ this.parser = new IssueJsonParser();
}
public Issues find(IssueQuery query) {
diff --git a/sonar-ws-client/src/main/java/org/sonar/wsclient/issue/IssueParser.java b/sonar-ws-client/src/main/java/org/sonar/wsclient/issue/IssueJsonParser.java
index 855ad83698f..fc1b1fb6ccc 100644
--- a/sonar-ws-client/src/main/java/org/sonar/wsclient/issue/IssueParser.java
+++ b/sonar-ws-client/src/main/java/org/sonar/wsclient/issue/IssueJsonParser.java
@@ -32,7 +32,7 @@ import java.util.Map;
/**
* @since 3.6
*/
-class IssueParser {
+class IssueJsonParser {
Issues parseIssues(String json) {
Issues result = new Issues();
@@ -43,39 +43,54 @@ class IssueParser {
result.add(new Issue(jsonIssue));
}
}
+ parseRules(result, jsonRoot);
+ parseUsers(result, jsonRoot);
+ parseComponents(result, jsonRoot);
+ parseProjects(result, jsonRoot);
+ parsePaging(result, jsonRoot);
+ return result;
+ }
- List<Map> jsonRules = (List) jsonRoot.get("rules");
- if (jsonRules != null) {
- for (Map jsonRule : jsonRules) {
- result.add(new Rule(jsonRule));
- }
- }
+ private void parsePaging(Issues result, Map jsonRoot) {
+ Map paging = (Map) jsonRoot.get("paging");
+ result.setPaging(new Paging(paging));
+ result.setMaxResultsReached(JsonUtils.getBoolean(jsonRoot, "maxResultsReached"));
+ }
- List<Map> jsonUsers = (List) jsonRoot.get("users");
- if (jsonUsers != null) {
- for (Map jsonUser : jsonUsers) {
- result.add(new User(jsonUser));
+ private void parseProjects(Issues result, Map jsonRoot) {
+ List<Map> jsonProjects = (List) jsonRoot.get("projects");
+ if (jsonProjects != null) {
+ for (Map jsonProject : jsonProjects) {
+ result.addProject(new Component(jsonProject));
}
}
+ }
+ private void parseComponents(Issues result, Map jsonRoot) {
List<Map> jsonComponents = (List) jsonRoot.get("components");
if (jsonComponents != null) {
for (Map jsonComponent : jsonComponents) {
result.addComponent(new Component(jsonComponent));
}
}
+ }
- List<Map> jsonProjects = (List) jsonRoot.get("projects");
- if (jsonProjects != null) {
- for (Map jsonProject : jsonProjects) {
- result.addProject(new Component(jsonProject));
+ private void parseUsers(Issues result, Map jsonRoot) {
+ List<Map> jsonUsers = (List) jsonRoot.get("users");
+ if (jsonUsers != null) {
+ for (Map jsonUser : jsonUsers) {
+ result.add(new User(jsonUser));
}
}
+ }
- Map paging = (Map) jsonRoot.get("paging");
- result.setPaging(new Paging(paging));
- result.setMaxResultsReached(JsonUtils.getBoolean(jsonRoot, "maxResultsReached"));
- return result;
+ private void parseRules(Issues result, Map jsonRoot) {
+ List<Map> jsonRules = (List) jsonRoot.get("rules");
+ if (jsonRules != null) {
+ for (Map jsonRule : jsonRules) {
+ result.add(new Rule(jsonRule));
+ }
+ }
}
List<String> parseTransitions(String json) {
diff --git a/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/IssueParserTest.java b/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/IssueJsonParserTest.java
index 7f0a76ecb4d..82c71f7446d 100644
--- a/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/IssueParserTest.java
+++ b/sonar-ws-client/src/test/java/org/sonar/wsclient/issue/IssueJsonParserTest.java
@@ -28,11 +28,11 @@ import java.util.List;
import static org.fest.assertions.Assertions.assertThat;
-public class IssueParserTest {
+public class IssueJsonParserTest {
@Test
public void test_GET_search() throws Exception {
String json = IOUtils.toString(getClass().getResourceAsStream("/org/sonar/wsclient/issue/IssueParserTest/search.json"));
- Issues issues = new IssueParser().parseIssues(json);
+ Issues issues = new IssueJsonParser().parseIssues(json);
assertThat(issues).isNotNull();
List<Issue> list = issues.list();
assertThat(list).hasSize(2);
@@ -84,7 +84,7 @@ public class IssueParserTest {
@Test
public void test_GET_empty_search() throws Exception {
String json = IOUtils.toString(getClass().getResourceAsStream("/org/sonar/wsclient/issue/IssueParserTest/empty.json"));
- Issues issues = new IssueParser().parseIssues(json);
+ Issues issues = new IssueJsonParser().parseIssues(json);
assertThat(issues).isNotNull();
assertThat(issues.list()).isEmpty();
assertThat(issues.rules()).isEmpty();
@@ -94,7 +94,7 @@ public class IssueParserTest {
@Test
public void test_GET_transitions() throws Exception {
String json = IOUtils.toString(getClass().getResourceAsStream("/org/sonar/wsclient/issue/IssueParserTest/getTransitions.json"));
- List<String> transitions = new IssueParser().parseTransitions(json);
+ List<String> transitions = new IssueJsonParser().parseTransitions(json);
assertThat(transitions).isNotNull();
assertThat(transitions).hasSize(2);
@@ -104,7 +104,7 @@ public class IssueParserTest {
@Test
public void should_parse_comments() throws Exception {
String json = IOUtils.toString(getClass().getResourceAsStream("/org/sonar/wsclient/issue/IssueParserTest/issue-with-comments.json"));
- Issues issues = new IssueParser().parseIssues(json);
+ Issues issues = new IssueJsonParser().parseIssues(json);
assertThat(issues.size()).isEqualTo(1);
Issue issue = issues.list().get(0);
@@ -126,7 +126,7 @@ public class IssueParserTest {
@Test
public void should_parse_users() throws Exception {
String json = IOUtils.toString(getClass().getResourceAsStream("/org/sonar/wsclient/issue/IssueParserTest/issue-with-users.json"));
- Issues issues = new IssueParser().parseIssues(json);
+ Issues issues = new IssueJsonParser().parseIssues(json);
assertThat(issues.users()).hasSize(2);
@@ -146,7 +146,7 @@ public class IssueParserTest {
@Test
public void should_parse_components() throws Exception {
String json = IOUtils.toString(getClass().getResourceAsStream("/org/sonar/wsclient/issue/IssueParserTest/issue-with-components.json"));
- Issues issues = new IssueParser().parseIssues(json);
+ Issues issues = new IssueJsonParser().parseIssues(json);
assertThat(issues.components()).hasSize(1);
@@ -160,7 +160,7 @@ public class IssueParserTest {
@Test
public void should_parse_projects() throws Exception {
String json = IOUtils.toString(getClass().getResourceAsStream("/org/sonar/wsclient/issue/IssueParserTest/issue-with-projects.json"));
- Issues issues = new IssueParser().parseIssues(json);
+ Issues issues = new IssueJsonParser().parseIssues(json);
assertThat(issues.projects()).hasSize(1);
diff --git a/sonar-ws-client/src/test/java/org/sonar/wsclient/user/UserQueryTest.java b/sonar-ws-client/src/test/java/org/sonar/wsclient/user/UserQueryTest.java
index 475e95c4f70..d42a0256f08 100644
--- a/sonar-ws-client/src/test/java/org/sonar/wsclient/user/UserQueryTest.java
+++ b/sonar-ws-client/src/test/java/org/sonar/wsclient/user/UserQueryTest.java
@@ -53,5 +53,8 @@ public class UserQueryTest {
public void should_search_by_text() throws Exception {
UserQuery query = UserQuery.create().searchText("sim");
assertThat(query.urlParams().get("s")).isEqualTo("sim");
+
+ query = UserQuery.create().searchText("sim").searchText(null);
+ assertThat(query.urlParams().get("s")).isNull();
}
}