public void A_Flow_based_on_a_tick_publisher_must_reject_multiple_subscribers_but_keep_the_firs()
{
this.AssertAllStagesStopped(() =>
{
var p = Source.Tick(TimeSpan.FromSeconds(1), TimeSpan.FromSeconds(1), "tick")
.RunWith(Sink.AsPublisher<string>(false), Materializer);
var c1 = TestSubscriber.CreateManualProbe<string>(this);
var c2 = TestSubscriber.CreateManualProbe<string>(this);
p.Subscribe(c1);
p.Subscribe(c2);
var sub1 = c1.ExpectSubscription();
c2.ExpectSubscriptionAndError();
sub1.Request(1);
c1.ExpectNext("tick");
c1.ExpectNoMsg(TimeSpan.FromMilliseconds(200));
sub1.Request(2);
c1.ExpectNext("tick");
sub1.Cancel();
}, Materializer);
}