示例#1
0
        public SendAndAwait_for_a_single_message()
        {
            Website1.Registry.Channel(x => x.Service1)
            .AcceptsMessage <OneMessage>();

            Service1.Handles <OneMessage>();

            Website1.SendAndAwait <OneMessage>();
        }
示例#2
0
        public Request_a_reply_for_a_single_message()
        {
            Website1.Registry.Channel(x => x.Service1)
            .AcceptsMessage <OneMessage>();

            Service1.Handles <OneMessage>()
            .Raises <TwoMessage>();

            Website1.Requests <OneMessage>("original request")
            .ExpectReply <TwoMessage>().From(Service1);
        }
        public Send_a_single_message_to_the_correct_node()
        {
            Website1.Registry.Channel(x => x.Service1)
            .AcceptsMessage <OneMessage>();

            Service1.Handles <OneMessage>();

            Service2.Handles <OneMessage>();
            Service3.Handles <OneMessage>();

            Website1.Sends <OneMessage>("first message").ShouldBeReceivedBy(Service1);
        }
示例#4
0
        public Send_a_single_message_to_multiple_listening_nodes()
        {
            Website1.Registry.Channel(x => x.Service1)
            .AcceptsMessage <OneMessage>();

            Website1.Registry.Channel(x => x.Service3)
            .AcceptsMessage <OneMessage>();


            Service1.Handles <OneMessage>();
            Service2.Handles <OneMessage>();
            Service3.Handles <OneMessage>();
            Service4.Handles <OneMessage>();

            Website1.Sends <OneMessage>("first message")
            .ShouldBeReceivedBy(Service1)
            .ShouldBeReceivedBy(Service3);
        }
        public Send_a_message_that_raises_events()
        {
            Website1.Registry.Channel(x => x.Service1)
            .AcceptsMessage <OneMessage>();

            Service1.Handles <OneMessage>()
            .Raises <TwoMessage>()
            .Raises <ThreeMessage>();

            Service1.Handles <TwoMessage>();
            Service1.Handles <ThreeMessage>();

            // TODO -- super hokey
            Service1.Registry.Channel(x => x.Service1)
            .AcceptsMessage <TwoMessage>().AcceptsMessage <ThreeMessage>();

            // Assuming that if the events raised can be handled locally, they are
            // handled here. Corey/Ryan to review
            Website1.Sends <OneMessage>("original message")
            .ShouldBeReceivedBy(Service1)
            .MatchingMessageIsReceivedBy <TwoMessage>(Service1)
            .MatchingMessageIsReceivedBy <ThreeMessage>(Service1);
        }