]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-10570 Do not return an empty pull request URL when it's not provided
authorTeryk Bellahsene <teryk.bellahsene@sonarsource.com>
Wed, 11 Apr 2018 13:44:51 +0000 (15:44 +0200)
committerSonarTech <sonartech@sonarsource.com>
Fri, 27 Apr 2018 18:20:44 +0000 (20:20 +0200)
server/sonar-server/src/main/java/org/sonar/server/branch/pr/ws/ListAction.java
server/sonar-server/src/test/java/org/sonar/server/branch/pr/ws/ListActionTest.java

index 62618d2e359727eb18b32ab7d921f5bccdc4c856..a1ccc974a37f44b3c51a393f892244d3c44153f7 100644 (file)
@@ -43,6 +43,7 @@ import org.sonar.server.user.UserSession;
 import org.sonarqube.ws.ProjectPullRequests;
 
 import static com.google.common.base.Preconditions.checkArgument;
+import static com.google.common.base.Strings.emptyToNull;
 import static java.util.Collections.singletonList;
 import static java.util.Objects.requireNonNull;
 import static org.sonar.api.measures.CoreMetrics.ALERT_STATUS_KEY;
@@ -140,8 +141,8 @@ public class ListAction implements PullRequestWsAction {
 
     DbProjectBranches.PullRequestData pullRequestData = requireNonNull(branch.getPullRequestData(), "Pull request data should be available for branch type PULL_REQUEST");
     builder.setBranch(pullRequestData.getBranch());
-    builder.setUrl(pullRequestData.getUrl());
-    builder.setTitle(pullRequestData.getTitle());
+    setNullable(emptyToNull(pullRequestData.getUrl()), builder::setUrl);
+    setNullable(emptyToNull(pullRequestData.getTitle()), builder::setTitle);
 
     if (mergeBranch.isPresent()) {
       String mergeBranchKey = mergeBranch.get().getKey();
index b42d3df7af153afbe906d85ac6df41258ccd04fc..25aefe358fc8bbc4b124aad4306e88341bb397d3 100644 (file)
@@ -153,8 +153,8 @@ public class ListActionTest {
       .executeProtobuf(ListWsResponse.class);
 
     assertThat(response.getPullRequestsList())
-      .extracting(PullRequest::getKey, PullRequest::getBranch, PullRequest::getIsOrphan)
-      .containsExactlyInAnyOrder(tuple("123", "feature/bar", false));
+      .extracting(PullRequest::getKey, PullRequest::getBranch, PullRequest::getIsOrphan, PullRequest::hasUrl, PullRequest::hasTitle)
+      .containsExactlyInAnyOrder(tuple("123", "feature/bar", false, false, false));
   }
 
   @Test