mergeNode.inputTypes(Arrays.<DataType>asList(DataTypes.UNDEFINED, DataTypes.TIMESTAMP));
AggregationProjection aggregationProjection = new AggregationProjection();
aggregationProjection.aggregations(Arrays.asList(
new Aggregation(maxInfo, Arrays.<Symbol>asList(new InputColumn(0)), Aggregation.Step.PARTIAL, Aggregation.Step.FINAL)
));
mergeNode.projections(Arrays.<Projection>asList(aggregationProjection));
PlanNodeStreamerVisitor.Context ctx = visitor.process(mergeNode);
Streamer<?>[] streamers = ctx.inputStreamers();
assertThat(streamers.length, is(2));
assertThat(streamers[0], instanceOf(AggregationStateStreamer.class));
assertThat(streamers[1], instanceOf(DataTypes.TIMESTAMP.streamer().getClass()));