Akka.Streams.Tests.Dsl.FlowExpandSpec.Expand_musst_do_not_drop_last_element C# (CSharp) Method

Expand_musst_do_not_drop_last_element() private method

private Expand_musst_do_not_drop_last_element ( ) : void
return void
        public void Expand_musst_do_not_drop_last_element()
        {
            var publisher = TestPublisher.CreateProbe<int>(this);
            var subscriber = TestSubscriber.CreateProbe<int>(this);

            // Simply repeat the last element as an extrapolation step
            Source.FromPublisher(publisher)
                .Expand(i => Enumerable.Repeat(i, 200).GetEnumerator())
                .To(Sink.FromSubscriber(subscriber))
                .Run(Materializer);

            publisher.SendNext(1);
            subscriber.RequestNext(1);

            publisher.SendNext(2);
            publisher.SendComplete();

            // The request below is otherwise in race with the above sendNext(2) (and completion)
            subscriber.ExpectNoMsg(TimeSpan.FromMilliseconds(500));

            subscriber.RequestNext(2);
            subscriber.ExpectComplete();
        }