public void Batch_must_aggregate_elements_while_downstream_is_silent()
{
var publisher = TestPublisher.CreateProbe<int>(this);
var subscriber = TestSubscriber.CreateProbe<List<int>>(this);
Source.FromPublisher(publisher).Batch(long.MaxValue, i => new List<int> {i}, (ints, i) =>
{
ints.Add(i);
return ints;
}).To(Sink.FromSubscriber(subscriber)).Run(Materializer);
var sub = subscriber.ExpectSubscription();
for (var i = 1; i <= 10; i++)
publisher.SendNext(i);
subscriber.ExpectNoMsg(TimeSpan.FromSeconds(1));
sub.Request(1);
subscriber.ExpectNext().ShouldAllBeEquivalentTo(new [] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10});
sub.Cancel();
}