private static boolean hasBranchProperties(ScannerReport.Metadata metadata) { return !metadata.getBranchName().isEmpty() || !metadata.getPullRequestKey().isEmpty() || !metadata.getMergeBranchName().isEmpty() || metadata.getBranchType() != UNSET; }
@Test public void write_long_lived_branch_info() throws Exception { String branchName = "long-lived"; when(branches.branchName()).thenReturn(branchName); when(branches.branchType()).thenReturn(BranchType.LONG); File outputDir = temp.newFolder(); underTest.publish(new ScannerReportWriter(outputDir)); ScannerReportReader reader = new ScannerReportReader(outputDir); ScannerReport.Metadata metadata = reader.readMetadata(); assertThat(metadata.getBranchName()).isEqualTo(branchName); assertThat(metadata.getBranchType()).isEqualTo(ScannerReport.Metadata.BranchType.LONG); }
@Test public void write_short_lived_branch_info() throws Exception { String branchName = "feature"; String branchTarget = "short-lived"; when(branches.branchName()).thenReturn(branchName); when(branches.longLivingSonarReferenceBranch()).thenReturn(branchTarget); File outputDir = temp.newFolder(); underTest.publish(new ScannerReportWriter(outputDir)); ScannerReportReader reader = new ScannerReportReader(outputDir); ScannerReport.Metadata metadata = reader.readMetadata(); assertThat(metadata.getBranchName()).isEqualTo(branchName); assertThat(metadata.getBranchType()).isEqualTo(ScannerReport.Metadata.BranchType.SHORT); assertThat(metadata.getMergeBranchName()).isEqualTo(branchTarget); }
@Override public void load(Metadata metadata) { String projectUuid = analysisMetadataHolder.getProject().getUuid(); String branchName = StringUtils.trimToNull(metadata.getBranchName()); Branch branch; if (branchName == null) { branch = getMainBranch(projectUuid); } else { BranchType branchType = BranchType.valueOf(metadata.getBranchType().name()); String mergeBranchName = StringUtils.trimToNull(metadata.getMergeBranchName()); branch = getMergeBranch(projectUuid, branchName, branchType, mergeBranchName); } analysisMetadataHolder.setBranch(branch); }
@Test public void verify_metadata() { String branchName = "feature"; String branchTarget = "branch-1.x"; AnalysisResult result = getResult(tester .setBranchName(branchName) .setBranchTarget(branchTarget) .setLongLivingSonarReferenceBranch(branchTarget) .setBranchType(BranchType.SHORT)); ScannerReport.Metadata metadata = result.getReportReader().readMetadata(); assertThat(metadata.getBranchName()).isEqualTo(branchName); assertThat(metadata.getBranchType()).isEqualTo(ScannerReport.Metadata.BranchType.SHORT); assertThat(metadata.getMergeBranchName()).isEqualTo(branchTarget); }