From 6a464448365f76f318527260cb109388a5f93be5 Mon Sep 17 00:00:00 2001 From: Duarte Meneses Date: Tue, 9 May 2023 10:19:14 -0500 Subject: [PATCH] [NO JIRA] Fix ComponentdbTester to support different main branch UUIDs --- .../src/it/java/org/sonar/ce/queue/CeQueueImplIT.java | 2 +- .../task/projectanalysis/issue/SiblingsIssueMergerIT.java | 2 +- .../issue/PullRequestSourceBranchMergerTest.java | 2 +- .../src/it/java/org/sonar/db/purge/PurgeCommandsIT.java | 6 +++--- .../java/org/sonar/db/component/ComponentDbTester.java | 8 +++++--- .../sonar/server/issue/index/IssueIndexFiltersTest.java | 8 ++++---- 6 files changed, 15 insertions(+), 13 deletions(-) diff --git a/server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java b/server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java index 296cf548629..0823582b04d 100644 --- a/server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java +++ b/server/sonar-ce-common/src/it/java/org/sonar/ce/queue/CeQueueImplIT.java @@ -239,7 +239,7 @@ public class CeQueueImplIT { @Test public void massSubmit_populates_component_name_and_key_of_CeTask_if_project_and_branch_exists() { - ComponentDto project = insertComponent(ComponentTesting.newPrivateProjectDto("PROJECT_1")); + ComponentDto project = db.components().insertPublicProject(p -> p.setUuid("PROJECT_1").setBranchUuid("PROJECT_1")).getMainBranchComponent(); ComponentDto branch1 = db.components().insertProjectBranch(project); ComponentDto branch2 = db.components().insertProjectBranch(project); CeTaskSubmit taskSubmit1 = createTaskSubmit(CeTaskTypes.REPORT, Component.fromDto(branch1.uuid(), project.uuid()), null); diff --git a/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/issue/SiblingsIssueMergerIT.java b/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/issue/SiblingsIssueMergerIT.java index 9c38acb8216..a44ffda6cd1 100644 --- a/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/issue/SiblingsIssueMergerIT.java +++ b/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/issue/SiblingsIssueMergerIT.java @@ -105,7 +105,7 @@ public class SiblingsIssueMergerIT { copier = new SiblingsIssueMerger(new SiblingsIssuesLoader(new SiblingComponentsWithOpenIssues(treeRootHolder, metadataHolder, dbClient), dbClient, componentIssuesLoader), tracker, issueLifecycle); - projectDto = db.components().insertPublicProject(p -> p.setKey(PROJECT_KEY).setUuid(PROJECT_UUID)).getMainBranchComponent(); + projectDto = db.components().insertPublicProject(p -> p.setKey(PROJECT_KEY).setUuid(PROJECT_UUID).setBranchUuid(PROJECT_UUID)).getMainBranchComponent(); branch1Dto = db.components().insertProjectBranch(projectDto, b -> b.setKey("myBranch1") .setBranchType(BranchType.PULL_REQUEST) .setMergeBranchUuid(projectDto.uuid())); diff --git a/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/PullRequestSourceBranchMergerTest.java b/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/PullRequestSourceBranchMergerTest.java index 76da837df48..b8214e4fdec 100644 --- a/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/PullRequestSourceBranchMergerTest.java +++ b/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/issue/PullRequestSourceBranchMergerTest.java @@ -88,7 +88,7 @@ public class PullRequestSourceBranchMergerTest { issueLifecycle, sourceBranchInputFactory); - ComponentDto projectDto = db.components().insertPublicProject(p -> p.setKey(PROJECT_KEY).setUuid(PROJECT_UUID)).getMainBranchComponent(); + ComponentDto projectDto = db.components().insertPublicProject(p -> p.setKey(PROJECT_KEY).setUuid(PROJECT_UUID).setBranchUuid(PROJECT_UUID)).getMainBranchComponent(); ComponentDto branch1Dto = db.components().insertProjectBranch(projectDto, b -> b.setKey("myBranch1") .setBranchType(BranchType.PULL_REQUEST) .setMergeBranchUuid(projectDto.uuid())); diff --git a/server/sonar-db-dao/src/it/java/org/sonar/db/purge/PurgeCommandsIT.java b/server/sonar-db-dao/src/it/java/org/sonar/db/purge/PurgeCommandsIT.java index 1de9381e774..2031f270006 100644 --- a/server/sonar-db-dao/src/it/java/org/sonar/db/purge/PurgeCommandsIT.java +++ b/server/sonar-db-dao/src/it/java/org/sonar/db/purge/PurgeCommandsIT.java @@ -42,6 +42,7 @@ import org.sonar.db.ce.CeTaskMessageType; import org.sonar.db.component.BranchDto; import org.sonar.db.component.ComponentDto; import org.sonar.db.component.ComponentTesting; +import org.sonar.db.component.ProjectData; import org.sonar.db.component.SnapshotDto; import org.sonar.db.dialect.Dialect; import org.sonar.db.duplication.DuplicationUnitDto; @@ -151,9 +152,8 @@ public class PurgeCommandsIT { } @Test - @UseDataProvider("projects") - public void deleteNonMainBranchComponentsByProjectUuid_shouldDeletesAllBranchesOfAProjectExceptMainBranch(ComponentDto project) { - dbTester.components().insertComponent(project); + public void deleteNonMainBranchComponentsByProjectUuid_shouldDeletesAllBranchesOfAProjectExceptMainBranch() { + ComponentDto project = dbTester.components().insertPublicProject().getMainBranchComponent(); ComponentDto branch = dbTester.components().insertProjectBranch(project); ComponentDto directory1 = dbTester.components().insertComponent(ComponentTesting.newDirectory(project, "a")); diff --git a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/component/ComponentDbTester.java b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/component/ComponentDbTester.java index 667b703230e..88fe3d34287 100644 --- a/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/component/ComponentDbTester.java +++ b/server/sonar-db-dao/src/testFixtures/java/org/sonar/db/component/ComponentDbTester.java @@ -21,6 +21,7 @@ package org.sonar.db.component; import java.util.Arrays; import java.util.List; +import java.util.Optional; import java.util.function.Consumer; import javax.annotation.Nullable; import org.sonar.api.resources.Qualifiers; @@ -478,10 +479,11 @@ public class ComponentDbTester { } @SafeVarargs - public final ComponentDto insertProjectBranch(ComponentDto project, Consumer... dtoPopulators) { - BranchDto branchDto = ComponentTesting.newBranchDto(project.uuid(), BRANCH); + public final ComponentDto insertProjectBranch(ComponentDto mainBranchComponent, Consumer... dtoPopulators) { + BranchDto mainBranch = dbClient.branchDao().selectByUuid(db.getSession(), mainBranchComponent.branchUuid()).orElseThrow(IllegalArgumentException::new); + BranchDto branchDto = ComponentTesting.newBranchDto(mainBranch.getProjectUuid(), BRANCH); Arrays.stream(dtoPopulators).forEach(dtoPopulator -> dtoPopulator.accept(branchDto)); - return insertProjectBranch(project, branchDto); + return insertProjectBranch(mainBranchComponent, branchDto); } @SafeVarargs diff --git a/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexFiltersTest.java b/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexFiltersTest.java index 93775cac984..fed30d63c18 100644 --- a/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexFiltersTest.java +++ b/server/sonar-webserver-es/src/test/java/org/sonar/server/issue/index/IssueIndexFiltersTest.java @@ -374,7 +374,7 @@ public class IssueIndexFiltersTest extends IssueIndexTestCommon { public void filter_by_created_after_by_project_branches() { Date now = new Date(); - ComponentDto project1 = newPrivateProjectDto(); + ComponentDto project1 = db.components().insertPrivateProject().getMainBranchComponent(); IssueDoc project1Issue1 = newDocForProject(project1).setFuncCreationDate(addDays(now, -10)); IssueDoc project1Issue2 = newDocForProject(project1).setFuncCreationDate(addDays(now, -20)); @@ -382,7 +382,7 @@ public class IssueIndexFiltersTest extends IssueIndexTestCommon { IssueDoc project1Branch1Issue1 = newDoc(project1Branch1, project1.uuid()).setFuncCreationDate(addDays(now, -10)); IssueDoc project1Branch1Issue2 = newDoc(project1Branch1, project1.uuid()).setFuncCreationDate(addDays(now, -20)); - ComponentDto project2 = newPrivateProjectDto(); + ComponentDto project2 = db.components().insertPrivateProject().getMainBranchComponent(); IssueDoc project2Issue1 = newDocForProject(project2).setFuncCreationDate(addDays(now, -15)); IssueDoc project2Issue2 = newDocForProject(project2).setFuncCreationDate(addDays(now, -30)); @@ -441,7 +441,7 @@ public class IssueIndexFiltersTest extends IssueIndexTestCommon { @Test public void filter_by_new_code_reference_branches() { - ComponentDto project1 = newPrivateProjectDto(); + ComponentDto project1 = db.components().insertPrivateProject().getMainBranchComponent(); IssueDoc project1Issue1 = newDocForProject(project1).setIsNewCodeReference(true); IssueDoc project1Issue2 = newDocForProject(project1).setIsNewCodeReference(false); @@ -449,7 +449,7 @@ public class IssueIndexFiltersTest extends IssueIndexTestCommon { IssueDoc project1Branch1Issue1 = newDoc(project1Branch1, project1.uuid()).setIsNewCodeReference(false); IssueDoc project1Branch1Issue2 = newDoc(project1Branch1, project1.uuid()).setIsNewCodeReference(true); - ComponentDto project2 = newPrivateProjectDto(); + ComponentDto project2 = db.components().insertPrivateProject().getMainBranchComponent(); IssueDoc project2Issue1 = newDocForProject(project2).setIsNewCodeReference(true); IssueDoc project2Issue2 = newDocForProject(project2).setIsNewCodeReference(false); -- 2.39.5