public void A_GroupedWithin_must_drop_empty_groups()
{
var p = TestPublisher.CreateManualProbe<int>(this);
var c = TestSubscriber.CreateManualProbe<IEnumerable<int>>(this);
Source.FromPublisher(p)
.GroupedWithin(1000, TimeSpan.FromMilliseconds(500))
.To(Sink.FromSubscriber(c))
.Run(Materializer);
var pSub = p.ExpectSubscription();
var cSub = c.ExpectSubscription();
cSub.Request(2);
pSub.ExpectRequest();
c.ExpectNoMsg(TimeSpan.FromMilliseconds(600));
pSub.SendNext(1);
pSub.SendNext(2);
c.ExpectNext().ShouldAllBeEquivalentTo(new [] {1,2});
// nothing more requested
c.ExpectNoMsg(TimeSpan.FromMilliseconds(1100));
cSub.Request(3);
c.ExpectNoMsg(TimeSpan.FromMilliseconds(600));
pSub.SendComplete();
c.ExpectComplete();
c.ExpectNoMsg(TimeSpan.FromMilliseconds(100));
}