From a60e302305ef121bf6a96a50793d37a759c9d7c3 Mon Sep 17 00:00:00 2001 From: Aaron Gable Date: Wed, 14 Dec 2016 10:30:41 -0800 Subject: [PATCH] Set patchset description to 'Rebase' when rebasing Change-Id: I9e27b211776fd4716a7e9af9dc201fc6fa1defe5 --- .../com/google/gerrit/acceptance/api/change/ChangeIT.java | 5 ++++- .../com/google/gerrit/server/change/PatchSetInserter.java | 8 +++++++- .../com/google/gerrit/server/change/RebaseChangeOp.java | 1 + 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java index 86daddbfe4..b4575aebcc 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/change/ChangeIT.java @@ -391,7 +391,7 @@ public class ChangeIT extends AbstractDaemonTest { ChangeInfo c2 = gApi.changes().id(changeId).get(); assertThat(c2.revisions.get(c2.currentRevision)._number).isEqualTo(2); - // ...and the committer should be correct + // ...and the committer and description should be correct ChangeInfo info = gApi.changes() .id(changeId).get(EnumSet.of( ListChangesOption.CURRENT_REVISION, @@ -400,6 +400,9 @@ public class ChangeIT extends AbstractDaemonTest { info.currentRevision).commit.committer; assertThat(committer.name).isEqualTo(admin.fullName); assertThat(committer.email).isEqualTo(admin.email); + String description = info.revisions.get( + info.currentRevision).description; + assertThat(description).isEqualTo("Rebase"); // Rebasing the second change again should fail exception.expect(ResourceConflictException.class); diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/change/PatchSetInserter.java b/gerrit-server/src/main/java/com/google/gerrit/server/change/PatchSetInserter.java index c8dd4296be..995a8693ec 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/change/PatchSetInserter.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/change/PatchSetInserter.java @@ -92,6 +92,7 @@ public class PatchSetInserter extends BatchUpdate.Op { // Fields exposed as setters. private String message; + private String description; private CommitValidators.Policy validatePolicy = CommitValidators.Policy.GERRIT; private boolean draft; @@ -145,6 +146,11 @@ public class PatchSetInserter extends BatchUpdate.Op { return this; } + public PatchSetInserter setDescription(String description) { + this.description = description; + return this; + } + public PatchSetInserter setValidatePolicy(CommitValidators.Policy validate) { this.validatePolicy = checkNotNull(validate); return this; @@ -229,7 +235,7 @@ public class PatchSetInserter extends BatchUpdate.Op { } } patchSet = psUtil.insert(db, ctx.getRevWalk(), ctx.getUpdate(psId), - psId, commit, draft, newGroups, null, null); + psId, commit, draft, newGroups, null, description); if (notify != NotifyHandling.NONE) { oldReviewers = approvalsUtil.getReviewers(db, ctl.getNotes()); diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/change/RebaseChangeOp.java b/gerrit-server/src/main/java/com/google/gerrit/server/change/RebaseChangeOp.java index 1e2bb4bb27..7c2be7f4a4 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/change/RebaseChangeOp.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/change/RebaseChangeOp.java @@ -173,6 +173,7 @@ public class RebaseChangeOp extends BatchUpdate.Op { ctx.getRepository(), ctl.getChange().currentPatchSetId()); patchSetInserter = patchSetInserterFactory .create(ctl, rebasedPatchSetId, rebasedCommit) + .setDescription("Rebase") .setDraft(originalPatchSet.isDraft()) .setNotify(NotifyHandling.NONE) .setFireRevisionCreated(fireRevisionCreated)