summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSaša Živkov <sasa.zivkov@sap.com>2019-01-16 09:38:49 +0100
committerSaša Živkov <sasa.zivkov@sap.com>2019-01-16 09:48:36 +0100
commitbefc29334d7101c2bf12d3d261a02e779bcbd8b6 (patch)
tree99667d499cac7cf0787fa9a2c938ae8d5e7f4e87
parent47fdfb96e7adf04def4f08a27ba9289e50359738 (diff)
OnlineNoteDbMigrationIT: improve readability of some tests
The code to assert that noteDbState for a change was rebuilt, or not rebuilt, had a very low signal to noise ratio: * assert not rebuilt: NoteDbChangeState s1 = NoteDbChangeState.parse(db.changes().get(id1)); assertThat(s1.getChangeMetaId().name()).isEqualTo(INVALID_STATE); * assert rebuilt: NoteDbChangeState s2 = NoteDbChangeState.parse(db.changes().get(id2)); assertThat(s2.getChangeMetaId().name()).isNotEqualTo(INVALID_STATE); It was hard to read and follow assertions like these. Change-Id: I2620c62af66fd5c975f95a50b717379b856698ef
-rw-r--r--gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/notedb/OnlineNoteDbMigrationIT.java83
1 files changed, 35 insertions, 48 deletions
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/notedb/OnlineNoteDbMigrationIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/notedb/OnlineNoteDbMigrationIT.java
index ee2cd4e635..135809082f 100644
--- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/notedb/OnlineNoteDbMigrationIT.java
+++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/server/notedb/OnlineNoteDbMigrationIT.java
@@ -61,6 +61,7 @@ import com.google.gerrit.server.notedb.rebuild.NotesMigrationStateListener;
import com.google.gerrit.server.schema.ReviewDbFactory;
import com.google.gerrit.testutil.ConfigSuite;
import com.google.gerrit.testutil.NoteDbMode;
+import com.google.gwtorm.server.OrmException;
import com.google.gwtorm.server.SchemaFactory;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -296,23 +297,10 @@ public class OnlineNoteDbMigrationIT extends AbstractDaemonTest {
Change.Id id1 = r1.getChange().getId();
Change.Id id2 = r2.getChange().getId();
- try (ReviewDb db = schemaFactory.open()) {
- Change c1 = db.changes().get(id1);
- c1.setNoteDbState(INVALID_STATE);
- Change c2 = db.changes().get(id2);
- c2.setNoteDbState(INVALID_STATE);
- db.changes().update(ImmutableList.of(c1, c2));
- }
-
+ invalidateNoteDbState(id1, id2);
migrate(b -> b.setChanges(ImmutableList.of(id2)), NoteDbMigrator::rebuild);
-
- try (ReviewDb db = schemaFactory.open()) {
- NoteDbChangeState s1 = NoteDbChangeState.parse(db.changes().get(id1));
- assertThat(s1.getChangeMetaId().name()).isEqualTo(INVALID_STATE);
-
- NoteDbChangeState s2 = NoteDbChangeState.parse(db.changes().get(id2));
- assertThat(s2.getChangeMetaId().name()).isNotEqualTo(INVALID_STATE);
- }
+ assertNotRebuilt(id1);
+ assertRebuilt(id2);
}
@Test
@@ -327,23 +315,10 @@ public class OnlineNoteDbMigrationIT extends AbstractDaemonTest {
Change.Id id1 = r1.getChange().getId();
Change.Id id2 = r2.getChange().getId();
- try (ReviewDb db = schemaFactory.open()) {
- Change c1 = db.changes().get(id1);
- c1.setNoteDbState(INVALID_STATE);
- Change c2 = db.changes().get(id2);
- c2.setNoteDbState(INVALID_STATE);
- db.changes().update(ImmutableList.of(c1, c2));
- }
-
+ invalidateNoteDbState(id1, id2);
migrate(b -> b.setProjects(ImmutableList.of(p2)), NoteDbMigrator::rebuild);
-
- try (ReviewDb db = schemaFactory.open()) {
- NoteDbChangeState s1 = NoteDbChangeState.parse(db.changes().get(id1));
- assertThat(s1.getChangeMetaId().name()).isEqualTo(INVALID_STATE);
-
- NoteDbChangeState s2 = NoteDbChangeState.parse(db.changes().get(id2));
- assertThat(s2.getChangeMetaId().name()).isNotEqualTo(INVALID_STATE);
- }
+ assertNotRebuilt(id1);
+ assertRebuilt(id2);
}
@Test
@@ -362,27 +337,39 @@ public class OnlineNoteDbMigrationIT extends AbstractDaemonTest {
Change.Id id2 = r2.getChange().getId();
Change.Id id3 = r3.getChange().getId();
- try (ReviewDb db = schemaFactory.open()) {
- Change c1 = db.changes().get(id1);
- c1.setNoteDbState(INVALID_STATE);
- Change c2 = db.changes().get(id2);
- c2.setNoteDbState(INVALID_STATE);
- Change c3 = db.changes().get(id3);
- c3.setNoteDbState(INVALID_STATE);
- db.changes().update(ImmutableList.of(c1, c2, c3));
- }
-
+ invalidateNoteDbState(id1, id2, id3);
migrate(b -> b.setSkipProjects(ImmutableList.of(p3)), NoteDbMigrator::rebuild);
+ assertRebuilt(id1, id2);
+ assertNotRebuilt(id3);
+ }
+ private void invalidateNoteDbState(Change.Id... ids) throws OrmException {
+ List<Change> list = new ArrayList<>(ids.length);
try (ReviewDb db = schemaFactory.open()) {
- NoteDbChangeState s1 = NoteDbChangeState.parse(db.changes().get(id1));
- assertThat(s1.getChangeMetaId().name()).isNotEqualTo(INVALID_STATE);
+ for (Change.Id id : ids) {
+ Change c = db.changes().get(id);
+ c.setNoteDbState(INVALID_STATE);
+ list.add(c);
+ }
+ db.changes().update(list);
+ }
+ }
- NoteDbChangeState s2 = NoteDbChangeState.parse(db.changes().get(id2));
- assertThat(s2.getChangeMetaId().name()).isNotEqualTo(INVALID_STATE);
+ private void assertRebuilt(Change.Id... ids) throws OrmException {
+ try (ReviewDb db = schemaFactory.open()) {
+ for (Change.Id id : ids) {
+ NoteDbChangeState s = NoteDbChangeState.parse(db.changes().get(id));
+ assertThat(s.getChangeMetaId().name()).isNotEqualTo(INVALID_STATE);
+ }
+ }
+ }
- NoteDbChangeState s3 = NoteDbChangeState.parse(db.changes().get(id3));
- assertThat(s3.getChangeMetaId().name()).isEqualTo(INVALID_STATE);
+ private void assertNotRebuilt(Change.Id... ids) throws OrmException {
+ try (ReviewDb db = schemaFactory.open()) {
+ for (Change.Id id : ids) {
+ NoteDbChangeState s = NoteDbChangeState.parse(db.changes().get(id));
+ assertThat(s.getChangeMetaId().name()).isEqualTo(INVALID_STATE);
+ }
}
}