Skip to content

Commit

Permalink
SONAR-7292 Sanitize IssuesWsParameters and add some missing actions i…
Browse files Browse the repository at this point in the history
…n IssueService
  • Loading branch information
julienlancelot committed Dec 15, 2016
1 parent 154e542 commit 2ce306a
Show file tree
Hide file tree
Showing 26 changed files with 1,000 additions and 646 deletions.
24 changes: 12 additions & 12 deletions it/it-tests/src/test/java/it/issue/IssueActionTest.java
Expand Up @@ -20,16 +20,17 @@
package it.issue; package it.issue;


import java.util.List; import java.util.List;
import org.assertj.core.api.Assertions;
import org.junit.Before; import org.junit.Before;
import org.junit.ClassRule; import org.junit.ClassRule;
import org.junit.Rule; import org.junit.Rule;
import org.junit.Test; import org.junit.Test;
import org.sonar.wsclient.issue.IssueQuery;
import org.sonarqube.ws.Issues; import org.sonarqube.ws.Issues;
import org.sonarqube.ws.Issues.Issue; import org.sonarqube.ws.Issues.Issue;
import org.sonarqube.ws.client.issue.AddCommentRequest;
import org.sonarqube.ws.client.issue.AssignRequest;
import org.sonarqube.ws.client.issue.IssuesService; import org.sonarqube.ws.client.issue.IssuesService;
import org.sonarqube.ws.client.issue.SearchWsRequest; import org.sonarqube.ws.client.issue.SearchWsRequest;
import org.sonarqube.ws.client.issue.SetSeverityRequest;
import util.ProjectAnalysis; import util.ProjectAnalysis;
import util.ProjectAnalysisRule; import util.ProjectAnalysisRule;
import util.issue.IssueRule; import util.issue.IssueRule;
Expand All @@ -40,7 +41,6 @@
import static org.sonarqube.ws.Common.Severity.BLOCKER; import static org.sonarqube.ws.Common.Severity.BLOCKER;
import static util.ItUtils.newAdminWsClient; import static util.ItUtils.newAdminWsClient;
import static util.ItUtils.toDatetime; import static util.ItUtils.toDatetime;
import static util.ItUtils.verifyHttpException;


public class IssueActionTest extends AbstractIssueTest { public class IssueActionTest extends AbstractIssueTest {


Expand Down Expand Up @@ -73,7 +73,7 @@ public void no_comments_by_default() throws Exception {


@Test @Test
public void add_comment() throws Exception { public void add_comment() throws Exception {
Issues.Comment comment = issuesService.addComment(randomIssue.getKey(), "this is my *comment*").getIssue().getComments().getComments(0); Issues.Comment comment = issuesService.addComment(new AddCommentRequest(randomIssue.getKey(), "this is my *comment*")).getIssue().getComments().getComments(0);


assertThat(comment.getKey()).isNotNull(); assertThat(comment.getKey()).isNotNull();
assertThat(comment.getHtmlText()).isEqualTo("this is my <strong>comment</strong>"); assertThat(comment.getHtmlText()).isEqualTo("this is my <strong>comment</strong>");
Expand All @@ -95,7 +95,7 @@ public void add_comment() throws Exception {
@Test @Test
public void should_reject_blank_comment() throws Exception { public void should_reject_blank_comment() throws Exception {
try { try {
issuesService.addComment(randomIssue.getKey(), " "); issuesService.addComment(new AddCommentRequest(randomIssue.getKey(), " "));
fail(); fail();
} catch (org.sonarqube.ws.client.HttpException ex) { } catch (org.sonarqube.ws.client.HttpException ex) {
assertThat(ex.code()).isEqualTo(400); assertThat(ex.code()).isEqualTo(400);
Expand All @@ -116,7 +116,7 @@ public void change_severity() {
assertThat(searchIssuesBySeverities(componentKey, "BLOCKER")).isEmpty(); assertThat(searchIssuesBySeverities(componentKey, "BLOCKER")).isEmpty();


// increase the severity of an issue // increase the severity of an issue
adminIssueClient().setSeverity(randomIssue.getKey(), "BLOCKER"); issuesService.setSeverity(new SetSeverityRequest(randomIssue.getKey(), "BLOCKER"));


assertThat(searchIssuesBySeverities(componentKey, "BLOCKER")).hasSize(1); assertThat(searchIssuesBySeverities(componentKey, "BLOCKER")).hasSize(1);


Expand All @@ -138,7 +138,7 @@ public void assign() {
Issues.SearchWsResponse response = issueRule.search(new SearchWsRequest().setIssues(singletonList(randomIssue.getKey()))); Issues.SearchWsResponse response = issueRule.search(new SearchWsRequest().setIssues(singletonList(randomIssue.getKey())));
assertThat(response.getUsers().getUsersList()).isEmpty(); assertThat(response.getUsers().getUsersList()).isEmpty();


adminIssueClient().assign(randomIssue.getKey(), "admin"); issuesService.assign(new AssignRequest(randomIssue.getKey(), "admin"));
assertThat(issueRule.search(new SearchWsRequest().setAssignees(singletonList("admin"))).getIssuesList()).hasSize(1); assertThat(issueRule.search(new SearchWsRequest().setAssignees(singletonList("admin"))).getIssuesList()).hasSize(1);


projectAnalysis.run(); projectAnalysis.run();
Expand All @@ -151,10 +151,10 @@ public void assign() {
assertThat(response.getUsers().getUsersList().stream().filter(user -> "Administrator".equals(user.getName())).findFirst()).isPresent(); assertThat(response.getUsers().getUsersList().stream().filter(user -> "Administrator".equals(user.getName())).findFirst()).isPresent();


// unassign // unassign
adminIssueClient().assign(randomIssue.getKey(), null); issuesService.assign(new AssignRequest(randomIssue.getKey(), null));
reloaded = issueRule.getByKey(randomIssue.getKey()); reloaded = issueRule.getByKey(randomIssue.getKey());
assertThat(reloaded.hasAssignee()).isFalse(); assertThat(reloaded.hasAssignee()).isFalse();
Assertions.assertThat(searchIssues(IssueQuery.create().assignees("admin"))).isEmpty(); assertThat(issueRule.search(new SearchWsRequest().setAssignees(singletonList("admin"))).getIssuesList()).isEmpty();
} }


/** /**
Expand All @@ -164,10 +164,10 @@ public void assign() {
public void fail_assign_if_assignee_does_not_exist() { public void fail_assign_if_assignee_does_not_exist() {
assertThat(randomIssue.hasAssignee()).isFalse(); assertThat(randomIssue.hasAssignee()).isFalse();
try { try {
adminIssueClient().assign(randomIssue.getKey(), "unknown"); issuesService.assign(new AssignRequest(randomIssue.getKey(), "unknown"));
fail(); fail();
} catch (Exception e) { } catch (org.sonarqube.ws.client.HttpException ex) {
verifyHttpException(e, 400); assertThat(ex.code()).isEqualTo(400);
} }
} }


Expand Down

0 comments on commit 2ce306a

Please sign in to comment.