Akka.Streams.Tests.Dsl.FlowPrefixAndTailSpec.PrefixAndTail_must_work_even_if_tail_subscriber_arrives_after_substream_completion C# (CSharp) Method

PrefixAndTail_must_work_even_if_tail_subscriber_arrives_after_substream_completion() private method

        public void PrefixAndTail_must_work_even_if_tail_subscriber_arrives_after_substream_completion()
        {
            var pub = TestPublisher.CreateManualProbe<int>(this);
            var sub = TestSubscriber.CreateManualProbe<int>(this);

            var f =
                Source.FromPublisher(pub)
                    .PrefixAndTail(1)
                    .RunWith(Sink.First<Tuple<IImmutableList<int>, Source<int, NotUsed>>>(), Materializer);
            var s = pub.ExpectSubscription();
            s.SendNext(0);

            f.Wait(TimeSpan.FromSeconds(3)).Should().BeTrue();
            var tail = f.Result.Item2;
            var tailPub = tail.RunWith(Sink.AsPublisher<int>(false), Materializer);
            s.SendComplete();

            tailPub.Subscribe(sub);
            sub.ExpectSubscriptionAndComplete();
        }
    }