public void Start_Listening_Should_Start_New_Listener_When_Port_Is_Valid(int port)
        {
            _tcpSocketServer = new TcpSocketServer(port);
            TcpListener tcpListener = _tcpSocketServer.StartListening();

            tcpListener.Server.IsBound.Should().Be(true);
            tcpListener.Stop();
        }
        private static void Process(ITcpSocketServer tcpSocketServer, TcpClient client)
        {
            while (true)
            {
                Console.WriteLine("Client Accepted");
                if (!IsClientConnected(client))
                {
                    break;
                }

                NetworkStream stream = tcpSocketServer.CreateNetworkStream(client);
                tcpSocketServer.ProcessRequest(client, stream, Room);
            }
        }
 public void Start_Listening_Should_Throw_Exception_When_Port_Is_InValid(int port)
 {
     _tcpSocketServer = new TcpSocketServer(port);
     _tcpSocketServer.Invoking(a => a.StartListening()).Should().Throw <ArgumentOutOfRangeException>();
 }