VisibleRefFilterIT: Disable ReviewDb access
VisibleRefFilter may need to evaluate visibility for tens of
thousands of refs. Doing tens of thousands of random Changes table
lookups in order to load changes is a nonstarter, so forbid this in
the tests.
We still need to pass a ReviewDb instance as it's required to pass to
ChangeControl which needs to create a ChangeData. But we should be
getting everything we need for the Change from the secondary index.
So use a DisabledReviewDb.
Change-Id: I369b1aa7612400a0c36844702d551d6676b6c691
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git/VisibleRefFilterIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git/VisibleRefFilterIT.java
index b5b4f72..63ef494 100644
--- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git/VisibleRefFilterIT.java
+++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/git/VisibleRefFilterIT.java
@@ -35,6 +35,7 @@
import com.google.gerrit.server.git.VisibleRefFilter;
import com.google.gerrit.server.project.ProjectControl;
import com.google.gerrit.server.project.Util;
+import com.google.gerrit.testutil.DisabledReviewDb;
import com.google.inject.Inject;
import com.google.inject.util.Providers;
@@ -271,7 +272,7 @@
ProjectControl ctl = projectControlFactory.controlFor(project,
identifiedUserFactory.create(Providers.of(db), user.getId()));
VisibleRefFilter filter = new VisibleRefFilter(
- tagCache, changeCache, repo, ctl, db, true);
+ tagCache, changeCache, repo, ctl, new DisabledReviewDb(), true);
Map<String, Ref> all = repo.getAllRefs();
assertThat(filter.filter(all, false).keySet())
.containsExactlyElementsIn(expected);