Akka.Streams.Tests.Dsl.GraphBackedFlowSpec.FlowGraphs_when_used_together_should_allow_connecting_source_to_sink_directly C# (CSharp) Method

FlowGraphs_when_used_together_should_allow_connecting_source_to_sink_directly() private method

        public void FlowGraphs_when_used_together_should_allow_connecting_source_to_sink_directly()
        {
            var probe = TestSubscriber.CreateManualProbe<int>(this);
            var inSource = Source.AsSubscriber<int>();
            var outSink = Sink.AsPublisher<int>(false);

            var source = Source.FromGraph(GraphDsl.Create(inSource, (b, src) => new SourceShape<int>(src.Outlet)));

            var sink = Sink.FromGraph(GraphDsl.Create(outSink, (b, s) => new SinkShape<int>(s.Inlet)));

            var t = RunnableGraph.FromGraph(GraphDsl.Create(source, sink, Keep.Both, (b, src, snk) =>
            {
                b.From(src.Outlet).To(snk.Inlet);
                return ClosedShape.Instance;
            })).Run(Materializer);

            var subscriber = t.Item1;
            var publisher = t.Item2;

            Source1.RunWith(Sink.AsPublisher<int>(false), Materializer).Subscribe(subscriber);
            publisher.Subscribe(probe);

            ValidateProbe(probe, 4, new[] {0, 1, 2, 3});
        }
    }