summaryrefslogtreecommitdiffstats
path: root/container-search/src/test/java/com/yahoo/search/dispatch/DispatcherTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'container-search/src/test/java/com/yahoo/search/dispatch/DispatcherTest.java')
-rw-r--r--container-search/src/test/java/com/yahoo/search/dispatch/DispatcherTest.java34
1 files changed, 23 insertions, 11 deletions
diff --git a/container-search/src/test/java/com/yahoo/search/dispatch/DispatcherTest.java b/container-search/src/test/java/com/yahoo/search/dispatch/DispatcherTest.java
index 708caafa3f5..0dcbc917a69 100644
--- a/container-search/src/test/java/com/yahoo/search/dispatch/DispatcherTest.java
+++ b/container-search/src/test/java/com/yahoo/search/dispatch/DispatcherTest.java
@@ -2,6 +2,7 @@
package com.yahoo.search.dispatch;
import com.yahoo.prelude.fastsearch.FS4InvokerFactory;
+import com.yahoo.prelude.fastsearch.VespaBackEndSearcher;
import com.yahoo.processing.request.CompoundName;
import com.yahoo.search.Query;
import com.yahoo.search.dispatch.searchcluster.Node;
@@ -36,7 +37,7 @@ public class DispatcherTest {
builder.useMultilevelDispatch(true);
DispatchConfig dc = new DispatchConfig(builder);
- Dispatcher disp = new Dispatcher(cl, dc);
+ Dispatcher disp = new Dispatcher(cl, dc, new MockFS4InvokerFactory(cl), new MockRpcInvokerFactory());
assertThat(disp.getSearchInvoker(query(), null).isPresent(), is(false));
}
@@ -45,13 +46,13 @@ public class DispatcherTest {
SearchCluster cl = new MockSearchCluster("1", 2, 2);
Query q = query();
q.getModel().setSearchPath("1/0"); // second node in first group
- Dispatcher disp = new Dispatcher(cl, createDispatchConfig());
MockFS4InvokerFactory invokerFactory = new MockFS4InvokerFactory(cl, (nodes, a) -> {
assertThat(nodes.size(), is(1));
assertThat(nodes.get(0).key(), is(2));
return true;
});
- Optional<SearchInvoker> invoker = disp.getSearchInvoker(q, invokerFactory);
+ Dispatcher disp = new Dispatcher(cl, createDispatchConfig(), invokerFactory, new MockRpcInvokerFactory());
+ Optional<SearchInvoker> invoker = disp.getSearchInvoker(q, null);
assertThat(invoker.isPresent(), is(true));
invokerFactory.verifyAllEventsProcessed();
}
@@ -64,9 +65,9 @@ public class DispatcherTest {
return Optional.of(new Node(1, "test", 123, 1));
}
};
- Dispatcher disp = new Dispatcher(cl, createDispatchConfig());
MockFS4InvokerFactory invokerFactory = new MockFS4InvokerFactory(cl, (n, a) -> true);
- Optional<SearchInvoker> invoker = disp.getSearchInvoker(query(), invokerFactory);
+ Dispatcher disp = new Dispatcher(cl, createDispatchConfig(), invokerFactory, new MockRpcInvokerFactory());
+ Optional<SearchInvoker> invoker = disp.getSearchInvoker(query(), null);
assertThat(invoker.isPresent(), is(true));
invokerFactory.verifyAllEventsProcessed();
}
@@ -75,7 +76,6 @@ public class DispatcherTest {
public void requireThatInvokerConstructionIsRetriedAndLastAcceptsAnyCoverage() {
SearchCluster cl = new MockSearchCluster("1", 2, 1);
- Dispatcher disp = new Dispatcher(cl, createDispatchConfig());
MockFS4InvokerFactory invokerFactory = new MockFS4InvokerFactory(cl, (n, acceptIncompleteCoverage) -> {
assertThat(acceptIncompleteCoverage, is(false));
return false;
@@ -83,7 +83,8 @@ public class DispatcherTest {
assertThat(acceptIncompleteCoverage, is(true));
return true;
});
- Optional<SearchInvoker> invoker = disp.getSearchInvoker(query(), invokerFactory);
+ Dispatcher disp = new Dispatcher(cl, createDispatchConfig(), invokerFactory, new MockRpcInvokerFactory());
+ Optional<SearchInvoker> invoker = disp.getSearchInvoker(query(), null);
assertThat(invoker.isPresent(), is(true));
invokerFactory.verifyAllEventsProcessed();
}
@@ -92,9 +93,9 @@ public class DispatcherTest {
public void requireThatInvokerConstructionDoesNotRepeatGroups() {
SearchCluster cl = new MockSearchCluster("1", 2, 1);
- Dispatcher disp = new Dispatcher(cl, createDispatchConfig());
MockFS4InvokerFactory invokerFactory = new MockFS4InvokerFactory(cl, (n, a) -> false, (n, a) -> false);
- Optional<SearchInvoker> invoker = disp.getSearchInvoker(query(), invokerFactory);
+ Dispatcher disp = new Dispatcher(cl, createDispatchConfig(), invokerFactory, null);
+ Optional<SearchInvoker> invoker = disp.getSearchInvoker(query(), null);
assertThat(invoker.isPresent(), is(false));
invokerFactory.verifyAllEventsProcessed();
}
@@ -108,12 +109,13 @@ public class DispatcherTest {
private int step = 0;
public MockFS4InvokerFactory(SearchCluster cl, FactoryStep... events) {
- super(null, cl, null);
+ super(null, cl);
this.events = events;
}
@Override
- public Optional<SearchInvoker> getSearchInvoker(Query query, OptionalInt groupId, List<Node> nodes, boolean acceptIncompleteCoverage) {
+ public Optional<SearchInvoker> createSearchInvoker(VespaBackEndSearcher searcher, Query query, OptionalInt groupId,
+ List<Node> nodes, boolean acceptIncompleteCoverage) {
if (step >= events.length) {
throw new RuntimeException("Was not expecting more calls to getSearchInvoker");
}
@@ -130,4 +132,14 @@ public class DispatcherTest {
assertThat(step, is(events.length));
}
}
+
+ public class MockRpcInvokerFactory extends RpcInvokerFactory {
+ public MockRpcInvokerFactory() {
+ super(null, null);
+ }
+
+ @Override
+ public void release() {
+ }
+ }
}