Пример #1
0
        public void ConnectionLimitRestartListening()
        {
            IServerConnection connection = null;

            provider.ConnectionMade += (sender, e) =>
            {
                if (connection == null)
                {
                    connection = e.Connection;
                }
            };

            ConnectionLimit();

            Assert.IsNotNull(connection);

            connection.DisconnectAsync();

            AsyncTest test = new AsyncTest();

            provider.ConnectionMade += test.PassHandler;

            IClientConnection client = GetNewClientConnection();

            client.Disconnected += test.FailHandler;
            client.ConnectAsync(Target, MessageTypes);

            test.Assert(10000);
        }
Пример #2
0
        public void DisconnectFromServerOnServer()
        {
            var test = new AsyncTest(2);

            var c = GetNewClientConnection();

            c.Disconnected += test.PassHandler;
            IServerConnection sc = null;

            var wait = new AutoResetEvent(false);

            this.provider.Start(MessageTypes);
            this.provider.ConnectionMade += (sender, e) =>
            {
                e.Connection.Disconnected += test.PassHandler;
                sc = e.Connection;
                wait.Set();
            };

            c.ConnectAsync(Target, MessageTypes);

            if (!wait.WaitOne(10000) || sc == null)
            {
                Assert.Fail("Failed to connect");
            }

            sc.DisconnectAsync();

            test.Assert(10000);
        }