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;
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();
.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