public void Conflate_must_backpressure_subscriber_when_upstream_is_slower()
{
var publisher = TestPublisher.CreateProbe<int>(this);
var subscriber = TestSubscriber.CreateManualProbe<int>(this);
Source.FromPublisher(publisher)
.ConflateWithSeed(i=>i, (sum, i) => sum + i)
.To(Sink.FromSubscriber(subscriber))
.Run(Materializer);
var sub = subscriber.ExpectSubscription();
sub.Request(1);
publisher.SendNext(1);
subscriber.ExpectNext(1);
sub.Request(1);
subscriber.ExpectNoMsg(TimeSpan.FromMilliseconds(500));
publisher.SendNext(2);
subscriber.ExpectNext(2);
publisher.SendNext(3);
publisher.SendNext(4);
// The request can be in race with the above onNext(4) so the result would be either 3 or 7.
subscriber.ExpectNoMsg(TimeSpan.FromMilliseconds(500));
sub.Request(1);
subscriber.ExpectNext(7);
sub.Request(1);
subscriber.ExpectNoMsg(TimeSpan.FromMilliseconds(500));
sub.Cancel();
}