Akka.Streams.Tests.Dsl.GraphMatValueSpec.A_Graph_with_materialized_value_must_expose_the_materialized_value_as_source_multiple_times C# (CSharp) Метод

A_Graph_with_materialized_value_must_expose_the_materialized_value_as_source_multiple_times() приватный Метод

        public void A_Graph_with_materialized_value_must_expose_the_materialized_value_as_source_multiple_times()
        {
            var sub = TestSubscriber.CreateManualProbe<int>(this);
            var f = RunnableGraph.FromGraph(GraphDsl.Create(FoldSink, (b, fold) =>
            {
                var zip = b.Add(new ZipWith<int, int, int>((i, i1) => i + i1));
                var source = Source.From(Enumerable.Range(1, 10)).MapMaterializedValue(_ => Task.FromResult(0));
                b.From(source).To(fold);
                b.From(b.MaterializedValue)
                    .Via(Flow.Create<Task<int>>().SelectAsync(4, x => x))
                    .To(zip.In0);
                b.From(b.MaterializedValue)
                    .Via(Flow.Create<Task<int>>().SelectAsync(4, x => x))
                    .To(zip.In1);

                b.From(zip.Out).To(Sink.FromSubscriber(sub).MapMaterializedValue(_ => Task.FromResult(0)));
                return ClosedShape.Instance;
            })).Run(Materializer);

            f.Wait(TimeSpan.FromSeconds(3)).Should().BeTrue();
            var r1 = f.Result;
            sub.ExpectSubscription().Request(1);
            var r2 = sub.ExpectNext();
            r1.Should().Be(r2/2);
        }