public void A_Flow_based_on_a_Task_must_produce_elements_with_multiple_subscribers()
{
this.AssertAllStagesStopped(() =>
{
var promise = new TaskCompletionSource<int>();
var p = Source.FromTask(promise.Task).RunWith(Sink.AsPublisher<int>(true), Materializer);
var c1 = TestSubscriber.CreateManualProbe<int>(this);
var c2 = TestSubscriber.CreateManualProbe<int>(this);
p.Subscribe(c1);
p.Subscribe(c2);
var sub1 = c1.ExpectSubscription();
var sub2 = c2.ExpectSubscription();
sub1.Request(1);
promise.SetResult(1);
sub2.Request(2);
c1.ExpectNext(1);
c2.ExpectNext(1);
c1.ExpectComplete();
c2.ExpectComplete();
}, Materializer);
}