diff options
author | Matteo Mara <matteo.mara@sonarsource.com> | 2023-08-29 11:36:56 +0200 |
---|---|---|
committer | sonartech <sonartech@sonarsource.com> | 2023-08-30 20:03:06 +0000 |
commit | 4adb0c6df2f24190bdc216e1d305132e433e1afe (patch) | |
tree | 79bb6c8cd970bc20c0764c5a7d830a89cb055eba /server/sonar-db-dao/src/it/java/org/sonar/db | |
parent | a071713469d8ab358099b913a214aab0aa27cd4a (diff) | |
download | sonarqube-4adb0c6df2f24190bdc216e1d305132e433e1afe.tar.gz sonarqube-4adb0c6df2f24190bdc216e1d305132e433e1afe.zip |
SONAR-19839 branch renaming gets propagated to new code periods branch references
Diffstat (limited to 'server/sonar-db-dao/src/it/java/org/sonar/db')
-rw-r--r-- | server/sonar-db-dao/src/it/java/org/sonar/db/newcodeperiod/NewCodePeriodDaoIT.java | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/server/sonar-db-dao/src/it/java/org/sonar/db/newcodeperiod/NewCodePeriodDaoIT.java b/server/sonar-db-dao/src/it/java/org/sonar/db/newcodeperiod/NewCodePeriodDaoIT.java index 06777152e46..01c710e2c57 100644 --- a/server/sonar-db-dao/src/it/java/org/sonar/db/newcodeperiod/NewCodePeriodDaoIT.java +++ b/server/sonar-db-dao/src/it/java/org/sonar/db/newcodeperiod/NewCodePeriodDaoIT.java @@ -29,6 +29,7 @@ import org.sonar.core.util.UuidFactory; import org.sonar.db.DbSession; import org.sonar.db.DbTester; import org.sonar.db.component.BranchDto; +import org.sonar.db.component.BranchType; import org.sonar.db.component.ProjectData; import org.sonar.db.project.ProjectDto; @@ -119,6 +120,52 @@ public class NewCodePeriodDaoIT { } @Test + public void update_referenceBranchPeriod_value() { + insert("1", "proj-uuid", null, REFERENCE_BRANCH, "oldBranchName", null); + insert("2", "proj-uuid-2", null, REFERENCE_BRANCH, "anotherBranch", null); + + underTest.updateBranchReferenceValues(dbSession, new BranchDto() + .setBranchType(BranchType.BRANCH) + .setUuid("branch-uuid") + .setProjectUuid("proj-uuid") + .setKey("oldBranchName"), "newBranchName"); + + //second project reference branch renaming should not affect the reference branch + underTest.updateBranchReferenceValues(dbSession, new BranchDto() + .setBranchType(BranchType.BRANCH) + .setUuid("branch-uuid") + .setProjectUuid("proj-uuid-2") + .setKey("oldBranchName"), "newBranchName"); + + db.commit(); + + Optional<NewCodePeriodDto> updatedNewCodePeriod = underTest.selectByUuid(dbSession, "1"); + Optional<NewCodePeriodDto> unmodifiedNewCodePeriod = underTest.selectByUuid(dbSession, "2"); + + assertThat(updatedNewCodePeriod).isNotNull() + .isNotEmpty(); + + assertThat(unmodifiedNewCodePeriod).isNotNull() + .isNotEmpty(); + + assertNewCodePeriodRowCount(2); + + NewCodePeriodDto updatedResult = updatedNewCodePeriod.get(); + assertThat(updatedResult.getUuid()).isEqualTo("1"); + assertThat(updatedResult.getProjectUuid()).isEqualTo("proj-uuid"); + assertThat(updatedResult.getBranchUuid()).isNull(); + assertThat(updatedResult.getType()).isEqualTo(REFERENCE_BRANCH); + assertThat(updatedResult.getValue()).isEqualTo("newBranchName"); + + NewCodePeriodDto unmodifiedResult = unmodifiedNewCodePeriod.get(); + assertThat(unmodifiedResult.getUuid()).isEqualTo("2"); + assertThat(unmodifiedResult.getProjectUuid()).isEqualTo("proj-uuid-2"); + assertThat(unmodifiedResult.getBranchUuid()).isNull(); + assertThat(unmodifiedResult.getType()).isEqualTo(REFERENCE_BRANCH); + assertThat(unmodifiedResult.getValue()).isEqualTo("anotherBranch"); + } + + @Test public void insert_with_upsert() { insert("1", "proj-uuid", "branch-uuid", NUMBER_OF_DAYS, "5", null); |