Merge "Missing unit tests for change.maxUpdates limit" into stable-3.3
diff --git a/javatests/com/google/gerrit/server/notedb/OpenRepoTest.java b/javatests/com/google/gerrit/server/notedb/OpenRepoTest.java
index e4c2196..72c145c 100644
--- a/javatests/com/google/gerrit/server/notedb/OpenRepoTest.java
+++ b/javatests/com/google/gerrit/server/notedb/OpenRepoTest.java
@@ -17,11 +17,13 @@
import static com.google.common.truth.Truth.assertThat;
import static com.google.gerrit.testing.GerritJUnit.assertThrows;
+import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableListMultimap;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.ListMultimap;
import com.google.gerrit.entities.AttentionSetUpdate;
import com.google.gerrit.entities.Change;
+import com.google.gerrit.entities.SubmissionId;
import com.google.gerrit.server.update.ChainedReceiveCommands;
import java.util.HashMap;
import java.util.Map;
@@ -84,6 +86,45 @@
}
@Test
+ public void allowExceedingLimitWhenChangeIsSubmitted() throws Exception {
+ try (OpenRepo openRepo = openRepo()) {
+ Change c = newChange();
+ ChangeUpdate update = newUpdate(c, changeOwner);
+ update.merge(
+ new SubmissionId(c),
+ ImmutableList.of(
+ submitRecord(
+ "NOT_READY",
+ null,
+ submitLabel("Verified", "OK", changeOwner.getAccountId()),
+ submitLabel("Alternative-Code-Review", "NEED", null))));
+
+ ListMultimap<String, ChangeUpdate> changeUpdates =
+ new ImmutableListMultimap.Builder<String, ChangeUpdate>().put("one", update).build();
+
+ openRepo.addUpdates(changeUpdates, NO_UPDATES_AT_ALL, MAX_PATCH_SETS);
+
+ assertThat(fakeChainedReceiveCommands.commands.size()).isEqualTo(1);
+ }
+ }
+
+ @Test
+ public void allowExceedingLimitWhenChangeIsAbandoned() throws Exception {
+ try (OpenRepo openRepo = openRepo()) {
+ Change c = newChange();
+ ChangeUpdate update = newUpdate(c, changeOwner);
+ update.setStatus(Change.Status.ABANDONED);
+
+ ListMultimap<String, ChangeUpdate> changeUpdates =
+ new ImmutableListMultimap.Builder<String, ChangeUpdate>().put("one", update).build();
+
+ openRepo.addUpdates(changeUpdates, NO_UPDATES_AT_ALL, MAX_PATCH_SETS);
+
+ assertThat(fakeChainedReceiveCommands.commands.size()).isEqualTo(1);
+ }
+ }
+
+ @Test
public void attentionSetUpdateShouldNotContributeToOperationsCount() throws Exception {
try (OpenRepo openRepo = openRepo()) {
Change c1 = newChange();