Akka.Streams.Tests.Dsl.GraphBroadcastSpec.A_Broadcast_must_work_with_n_way_braodcast C# (CSharp) Méthode

A_Broadcast_must_work_with_n_way_braodcast() private méthode

private A_Broadcast_must_work_with_n_way_braodcast ( ) : void
Résultat void
        public void A_Broadcast_must_work_with_n_way_braodcast()
        {
            this.AssertAllStagesStopped(() =>
            {
                var headSink = Sink.First<IEnumerable<int>>();

                var t = RunnableGraph.FromGraph(GraphDsl.Create(headSink, headSink, headSink, headSink, headSink,Tuple.Create,
                    (b, p1, p2, p3, p4, p5) =>
                    {
                        var broadcast = b.Add(new Broadcast<int>(5));
                        var source = b.Add(Source.From(Enumerable.Range(1, 3)));

                        b.From(source).To(broadcast.In);
                        b.From(broadcast.Out(0)).Via(Flow.Create<int>().Grouped(5)).To(p1.Inlet);
                        b.From(broadcast.Out(1)).Via(Flow.Create<int>().Grouped(5)).To(p2.Inlet);
                        b.From(broadcast.Out(2)).Via(Flow.Create<int>().Grouped(5)).To(p3.Inlet);
                        b.From(broadcast.Out(3)).Via(Flow.Create<int>().Grouped(5)).To(p4.Inlet);
                        b.From(broadcast.Out(4)).Via(Flow.Create<int>().Grouped(5)).To(p5.Inlet);
                        return ClosedShape.Instance;
                    })).Run(Materializer);

                var task = Task.WhenAll(t.Item1, t.Item2, t.Item3, t.Item4, t.Item5);
                task.Wait(TimeSpan.FromSeconds(3)).Should().BeTrue();
                foreach (var list in task.Result)
                    list.ShouldAllBeEquivalentTo(new[] { 1, 2, 3 });             
            }, Materializer);
        }