Akka.Streams.Tests.Dsl.SinkSpec.A_Sink_must_be_composable_with_importing_3_modules C# (CSharp) Method

A_Sink_must_be_composable_with_importing_3_modules() private method

        public void A_Sink_must_be_composable_with_importing_3_modules()
        {
            var probes = CreateProbes();
            var sink =
                Sink.FromGraph(GraphDsl.Create(Sink.FromSubscriber(probes[0]),
                    Sink.FromSubscriber(probes[1]), Sink.FromSubscriber(probes[2]),
                    (_, __, ___) => NotUsed.Instance, (b, shape0, shape1, shape2) =>
                    {
                        var broadcast = b.Add(new Broadcast<int>(3));
                        b.From(broadcast.Out(0)).Via(Flow.Create<int>().Where(x => x == 0)).To(shape0.Inlet);
                        b.From(broadcast.Out(1)).Via(Flow.Create<int>().Where(x => x == 1)).To(shape1.Inlet);
                        b.From(broadcast.Out(2)).Via(Flow.Create<int>().Where(x => x == 2)).To(shape2.Inlet);
                        return new SinkShape<int>(broadcast.In);
                    }));
            Source.From(new[] { 0, 1, 2 }).RunWith(sink, Materializer);

            var subscriptions = probes.Select(p => p.ExpectSubscription()).ToList();
            subscriptions.ForEach(s => s.Request(3));
            for (var i = 0; i < probes.Length; i++)
                probes[i].ExpectNext(i);
            probes.ForEach(p => p.ExpectComplete());
        }