コード例 #1
0
        public void GenericMessageHandlingGlobalOrder()
        {
            IServerConnection connection = null;

            var test = new AsyncTest(e =>
            {
                var me = (MessageEventArgs <MockMessage>)e;
                Assert.AreSame(connection, me.Connection);
                Assert.AreEqual("hi", me.Message.Content);
            });

            var server = new TempestServer(MessageTypes.Reliable);

            server.AddConnectionProvider(provider, ExecutionMode.GlobalOrder);
            server.Start();

            Action <MessageEventArgs <MockMessage> > handler = e => test.PassHandler(test, e);

            server.RegisterMessageHandler(handler);

            provider.ConnectionMade += (sender, e) => connection = e.Connection;

            var c = provider.GetClientConnection(protocol);

            c.ConnectAsync(new Target(Target.AnyIP, 0), MessageTypes.Reliable);
            c.SendAsync(new MockMessage {
                Content = "hi"
            });

            test.Assert(10000);
        }
コード例 #2
0
ファイル: TempestServerTests.cs プロジェクト: ermau/Tempest
        public void GenericMessageHandlingGlobalOrder()
        {
            IServerConnection connection = null;

            var test = new AsyncTest(e =>
            {
                var me = (MessageEventArgs<MockMessage>)e;
                Assert.AreSame (connection, me.Connection);
                Assert.AreEqual ("hi", me.Message.Content);
            });

            var server = new TempestServer (MessageTypes.Reliable);
            server.AddConnectionProvider (provider, ExecutionMode.GlobalOrder);
            server.Start();

            Action<MessageEventArgs<MockMessage>> handler = e => test.PassHandler (test, e);
            server.RegisterMessageHandler (handler);

            provider.ConnectionMade += (sender, e) => connection = e.Connection;

            var c = provider.GetClientConnection (protocol);
            c.ConnectAsync (new Target (Target.AnyIP, 0), MessageTypes.Reliable);
            c.SendAsync (new MockMessage { Content = "hi" });

            test.Assert (10000);
        }