Browse Source

SONAR-11605 No changed lines detected in P/R and SLB if target branch is not explicitly specified

tags/7.6
Duarte Meneses 5 years ago
parent
commit
8d3f4bd749

+ 10
- 10
server/sonar-server/src/main/resources/org/sonar/server/branch/ws/list-example.json View File

@@ -1,19 +1,10 @@
{
"branches": [
{
"name": "feature/bar",
"isMain": false,
"type": "LONG",
"status": {
"qualityGateStatus": "OK"
},
"analysisDate": "2017-04-01T01:15:42+0100"
},
{
"name": "feature/foo",
"isMain": false,
"type": "SHORT",
"mergeBranch": "feature/bar",
"mergeBranch": "master",
"status": {
"qualityGateStatus": "OK",
"bugs": 1,
@@ -21,6 +12,15 @@
"codeSmells": 0
},
"analysisDate": "2017-04-03T13:37:00+0100"
},
{
"name": "master",
"isMain": true,
"type": "LONG",
"status": {
"qualityGateStatus": "ERROR"
},
"analysisDate": "2017-04-01T01:15:42+0100"
}
]
}

+ 8
- 14
server/sonar-server/src/test/java/org/sonar/server/branch/ws/ListActionTest.java View File

@@ -107,16 +107,13 @@ public class ListActionTest {

@Test
public void test_example() {
ComponentDto project = db.components().insertPrivateProject(p -> p.setDbKey("sonarqube"));

ComponentDto longLivingBranch = db.components()
.insertProjectBranch(project, b -> b.setKey("feature/bar").setBranchType(org.sonar.db.component.BranchType.LONG));
ComponentDto project = db.components().insertMainBranch(p -> p.setDbKey("sonarqube"));
db.getDbClient().snapshotDao().insert(db.getSession(),
newAnalysis(longLivingBranch).setLast(true).setCreatedAt(parseDateTime("2017-04-01T01:15:42+0100").getTime()));
db.measures().insertLiveMeasure(longLivingBranch, qualityGateStatus, m -> m.setData("OK"));
newAnalysis(project).setLast(true).setCreatedAt(parseDateTime("2017-04-01T01:15:42+0100").getTime()));
db.measures().insertLiveMeasure(project, qualityGateStatus, m -> m.setData("ERROR"));

ComponentDto shortLivingBranch = db.components()
.insertProjectBranch(project, b -> b.setKey("feature/foo").setBranchType(SHORT).setMergeBranchUuid(longLivingBranch.uuid()));
.insertProjectBranch(project, b -> b.setKey("feature/foo").setBranchType(SHORT).setMergeBranchUuid(project.uuid()));
db.getDbClient().snapshotDao().insert(db.getSession(),
newAnalysis(shortLivingBranch).setLast(true).setCreatedAt(parseDateTime("2017-04-03T13:37:00+0100").getTime()));
db.measures().insertLiveMeasure(shortLivingBranch, qualityGateStatus, m -> m.setData("OK"));
@@ -139,16 +136,13 @@ public class ListActionTest {

@Test
public void test_with_SCAN_EXCUTION_permission() {
ComponentDto project = db.components().insertPrivateProject(p -> p.setDbKey("sonarqube"));

ComponentDto longLivingBranch = db.components()
.insertProjectBranch(project, b -> b.setKey("feature/bar").setBranchType(org.sonar.db.component.BranchType.LONG));
ComponentDto project = db.components().insertMainBranch(p -> p.setDbKey("sonarqube"));
db.getDbClient().snapshotDao().insert(db.getSession(),
newAnalysis(longLivingBranch).setLast(true).setCreatedAt(parseDateTime("2017-04-01T01:15:42+0100").getTime()));
db.measures().insertLiveMeasure(longLivingBranch, qualityGateStatus, m -> m.setData("OK"));
newAnalysis(project).setLast(true).setCreatedAt(parseDateTime("2017-04-01T01:15:42+0100").getTime()));
db.measures().insertLiveMeasure(project, qualityGateStatus, m -> m.setData("ERROR"));

ComponentDto shortLivingBranch = db.components()
.insertProjectBranch(project, b -> b.setKey("feature/foo").setBranchType(SHORT).setMergeBranchUuid(longLivingBranch.uuid()));
.insertProjectBranch(project, b -> b.setKey("feature/foo").setBranchType(SHORT).setMergeBranchUuid(project.uuid()));
db.getDbClient().snapshotDao().insert(db.getSession(),
newAnalysis(shortLivingBranch).setLast(true).setCreatedAt(parseDateTime("2017-04-03T13:37:00+0100").getTime()));
db.measures().insertLiveMeasure(shortLivingBranch, qualityGateStatus, m -> m.setData("OK"));

+ 0
- 1
sonar-scanner-engine/src/main/java/org/sonar/scanner/report/ChangedLinesPublisher.java View File

@@ -73,7 +73,6 @@ public class ChangedLinesPublisher implements ReportPublisherStep {
}

private int writeChangedLines(ScmProvider provider, ScannerReportWriter writer, String targetScmBranch) {

Path rootBaseDir = inputModuleHierarchy.root().getBaseDir();
Map<Path, DefaultInputFile> changedFiles = StreamSupport.stream(inputComponentStore.allChangedFilesToPublish().spliterator(), false)
.collect(Collectors.toMap(DefaultInputFile::path, f -> f));

+ 0
- 5
sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/branch/ProjectBranches.java View File

@@ -23,7 +23,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import javax.annotation.concurrent.Immutable;

/**
@@ -31,10 +30,7 @@ import javax.annotation.concurrent.Immutable;
*/
@Immutable
public class ProjectBranches {

private final Map<String, BranchInfo> branches;

@Nullable
private final String defaultBranchName;

public ProjectBranches(List<BranchInfo> branchInfos) {
@@ -59,7 +55,6 @@ public class ProjectBranches {
return branches.isEmpty();
}

@CheckForNull
public String defaultBranchName() {
return defaultBranchName;
}

+ 2
- 7
sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/branch/ProjectPullRequests.java View File

@@ -32,16 +32,11 @@ import javax.annotation.concurrent.Immutable;
*/
@Immutable
public class ProjectPullRequests {
private static final BinaryOperator<PullRequestInfo> PICK_MOST_RECENT_ANALYSIS = (a, b) -> a.getAnalysisDate() < b.getAnalysisDate() ? b : a;
private final Map<String, PullRequestInfo> pullRequestsByBranchName;

public ProjectPullRequests(List<PullRequestInfo> pullRequestInfos) {
BinaryOperator<PullRequestInfo> mergeFunction = pickMostRecentAnalysis();
this.pullRequestsByBranchName = pullRequestInfos.stream().collect(Collectors.toMap(PullRequestInfo::getBranch, Function.identity(), mergeFunction));
}

private static BinaryOperator<PullRequestInfo> pickMostRecentAnalysis() {
return (a, b) -> a.getAnalysisDate() < b.getAnalysisDate() ? b : a;
this.pullRequestsByBranchName = pullRequestInfos.stream().collect(Collectors.toMap(PullRequestInfo::getBranch, Function.identity(), PICK_MOST_RECENT_ANALYSIS));
}

@CheckForNull

Loading…
Cancel
Save