From 4f71623342b7dc2f11700790ad02c5cdb8ee413d Mon Sep 17 00:00:00 2001 From: Youssef Elghareeb <ghareeb@google.com> Date: Wed, 25 Mar 2020 22:40:30 +0100 Subject: [PATCH] Add a test for setting the reviewed flag with multiple patch sets The test hits the untested logic in com.google.gerrit.server.restapi.change.Files.ListFiles when requesting the list of reviewed files of a patch set where no files have been reviewed by the given user. Change-Id: I1b1f8593810384e503a9def44416b0ad9db79694 --- .../acceptance/api/revision/RevisionIT.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/javatests/com/google/gerrit/acceptance/api/revision/RevisionIT.java b/javatests/com/google/gerrit/acceptance/api/revision/RevisionIT.java index 70fcfc4d70..f001a749fc 100644 --- a/javatests/com/google/gerrit/acceptance/api/revision/RevisionIT.java +++ b/javatests/com/google/gerrit/acceptance/api/revision/RevisionIT.java @@ -1084,6 +1084,24 @@ public class RevisionIT extends AbstractDaemonTest { assertThat(gApi.changes().id(r.getChangeId()).current().reviewed()).isEmpty(); } + @Test + public void setReviewedFlagWithMultiplePatchSets() throws Exception { + PushOneCommit push = pushFactory.create(admin.newIdent(), testRepo); + PushOneCommit.Result r1 = push.to("refs/for/master"); + + gApi.changes().id(r1.getChangeId()).current().setReviewed(PushOneCommit.FILE_NAME, true); + + /** Amending the change will result in the file being un-reviewed in the latest patchset */ + PushOneCommit.Result r2 = amendChange(r1.getChangeId()); + + assertThat(gApi.changes().id(r2.getChangeId()).current().reviewed()).isEmpty(); + + gApi.changes().id(r2.getChangeId()).current().setReviewed(PushOneCommit.FILE_NAME, true); + + assertThat(Iterables.getOnlyElement(gApi.changes().id(r2.getChangeId()).current().reviewed())) + .isEqualTo(PushOneCommit.FILE_NAME); + } + @Test public void setUnsetReviewedFlagByFileApi() throws Exception { PushOneCommit push = pushFactory.create(admin.newIdent(), testRepo);