requestSender.writeTo(streamOutput);
// -- end sender
// receiver
DistributedRequestContextManager contextManager =
new DistributedRequestContextManager(new DummyDownstreamOperationFactory(rows), functions,
new StatsTables(ImmutableSettings.EMPTY, mock(NodeSettingsService.class)));
BytesStreamInput streamInput = new BytesStreamInput(streamOutput.bytes());
DistributedResultRequest requestReceiver = new DistributedResultRequest(contextManager);
requestReceiver.readFrom(streamInput);
assertFalse(requestReceiver.rowsRead());
assertNotNull(requestReceiver.memoryStream());
assertTrue(requestReceiver.memoryStream().size() > 0);
contextManager.addToContext(requestReceiver);
final SettableFuture<Object[][]> result = SettableFuture.create();
contextManager.createContext(dummyMergeNode, new ActionListener<NodeMergeResponse>() {
@Override
public void onResponse(NodeMergeResponse nodeMergeResponse) {
result.set(nodeMergeResponse.rows());
}