Пример #1
0
        public IEnumerator TcpConnectTest()
        {
            try
            {
                _serverThread = new Thread(MyTcpListener.Start);
                _serverThread.Start();

                _tcpLayer = new TcpLayer();
                _tcpLayer.Connect("127.0.0.1", 13000, b =>
                {
                    _connectState = b;
                });

                for (int i = 0; i < 20; i++)
                {
                    _tcpLayer.Update();
                    yield return(null);
                }

                yield return(null);
            }
            finally
            {
                _tcpLayer.Dispose();
                _serverThread.Interrupt();
                _serverThread.Abort();
            }

            Assert.AreEqual(true, _connectState);
        }
Пример #2
0
        public IEnumerator TcpSendAndRecvTest()
        {
            try
            {
                _serverThread = new Thread(MyTcpListener.Start);
                _serverThread.Start();

                _tcpLayer = new TcpLayer();
                _tcpLayer.Connect("127.0.0.1", 13000, ok =>
                {
                    if (ok)
                    {
                        _tcpLayer.Send(DataPackPool.GetDataPack(0, Encoding.ASCII.GetBytes("abcdefg")));
                    }
                });

                _tcpLayer.Recv += pack =>
                {
                    _tcpLayerRecv = Encoding.ASCII.GetString(pack.ReadAllBytes());
                };



                for (var i = 0; i < 50; i++)
                {
                    _tcpLayer.Update();
                    yield return(null);
                }
            }
            finally
            {
                _tcpLayer.Dispose();
                _serverThread.Interrupt();
                _serverThread.Abort();
            }

            Assert.AreEqual("ABCDEFG", _tcpLayerRecv);
        }