async protected Task TestSimpleConnectionAsync() { var FastcgiServerAsync = new TestFastcgiServerAsync(); FastcgiServerAsync.Debug = true; var ServerPort = NetworkUtilities.GetAvailableTcpPort(); FastcgiServerAsync.ListenAsync(ServerPort, "127.0.0.1"); var Client = new TcpClient(); await Client.ConnectAsync("127.0.0.1", ServerPort); var ClientStream = Client.GetStream(); await new FastcgiPacket() { Version = 1, Type = CSharpUtils.Web._45.Fastcgi.Fastcgi.PacketType.FCGI_BEGIN_REQUEST, RequestId = 1, Content = new ArraySegment <byte>(new byte[] { 0, 0, 0 }), }.WriteToAsync(ClientStream); await new FastcgiPacket() { Version = 1, Type = CSharpUtils.Web._45.Fastcgi.Fastcgi.PacketType.FCGI_PARAMS, RequestId = 1, //Content = new ArraySegment<byte>(new byte[] { 0, 0 }), Content = new ArraySegment <byte>(new byte[] { }), }.WriteToAsync(ClientStream); await new FastcgiPacket() { Version = 1, Type = CSharpUtils.Web._45.Fastcgi.Fastcgi.PacketType.FCGI_STDIN, RequestId = 1, //Content = new ArraySegment<byte>(new byte[] { 0, 0 }), Content = new ArraySegment <byte>(new byte[] { }), }.WriteToAsync(ClientStream); await ClientStream.FlushAsync(); for (int n = 0; n < 10; n++) { if (!Client.Connected) { return; } Thread.Sleep(TimeSpan.FromMilliseconds(10)); } throw (new Exception("Socket not disconnected")); }
async protected Task TestSimpleConnectionAsync() { var FastcgiServerAsync = new TestFastcgiServerAsync(); FastcgiServerAsync.Debug = true; var ServerPort = NetworkUtilities.GetAvailableTcpPort(); FastcgiServerAsync.ListenAsync(ServerPort, "127.0.0.1"); var Client = new TcpClient(); await Client.ConnectAsync("127.0.0.1", ServerPort); var ClientStream = Client.GetStream(); await new FastcgiPacket() { Version = 1, Type = CSharpUtils.Web._45.Fastcgi.Fastcgi.PacketType.FCGI_BEGIN_REQUEST, RequestId = 1, Content = new ArraySegment<byte>(new byte[] { 0, 0, 0 }), }.WriteToAsync(ClientStream); await new FastcgiPacket() { Version = 1, Type = CSharpUtils.Web._45.Fastcgi.Fastcgi.PacketType.FCGI_PARAMS, RequestId = 1, //Content = new ArraySegment<byte>(new byte[] { 0, 0 }), Content = new ArraySegment<byte>(new byte[] { }), }.WriteToAsync(ClientStream); await new FastcgiPacket() { Version = 1, Type = CSharpUtils.Web._45.Fastcgi.Fastcgi.PacketType.FCGI_STDIN, RequestId = 1, //Content = new ArraySegment<byte>(new byte[] { 0, 0 }), Content = new ArraySegment<byte>(new byte[] { }), }.WriteToAsync(ClientStream); await ClientStream.FlushAsync(); for (int n = 0; n < 10; n++) { if (!Client.Connected) return; Thread.Sleep(TimeSpan.FromMilliseconds(10)); } throw (new Exception("Socket not disconnected")); }