Akka.Streams.Tests.Dsl.FlowBufferSpec.Buffer_must_accept_elements_that_fit_in_the_buffer_while_downstream_is_silent C# (CSharp) Method

Buffer_must_accept_elements_that_fit_in_the_buffer_while_downstream_is_silent() private method

        public void Buffer_must_accept_elements_that_fit_in_the_buffer_while_downstream_is_silent()
        {
            var publisher = TestPublisher.CreateProbe<int>(this);
            var subscriber = TestSubscriber.CreateManualProbe<int>(this);

            Source.FromPublisher(publisher)
                .Buffer(100, OverflowStrategy.Backpressure)
                .To(Sink.FromSubscriber(subscriber))
                .Run(Materializer);

            var sub = subscriber.ExpectSubscription();

            // Fill up buffer
            Enumerable.Range(1, 100).ForEach(i => publisher.SendNext(i));

            // drain
            Enumerable.Range(1, 100).ForEach(i =>
            {
                sub.Request(1);
                subscriber.ExpectNext(i);
            });

            sub.Cancel();
        }