Esempio n. 1
0
        public void ServiceDispatcher_RoutTest()
        {
            var messenger      = new MessengerMock();
            var channelFactory = new ChannelConnectNotifierMock(messenger);
            var service        = new TestService();
            var dispatcher     = new Router(new Multiplexer(channelFactory));

            dispatcher.AddRoute("Test/route", service);

            channelFactory.ConnectPipe();

            var msg           = Message.CreateRequest("Test/route");
            var packedMessage = Envelope.Pack(msg, "TestService");

            messenger.ClientSend(packedMessage);

            Assert.AreEqual(msg.ToString(), service.RequestMessage.ToString());
            Assert.AreEqual(Envelope.Pack(service.ResponseMessage, string.Empty), messenger.SendMessage);
        }