public override Task <IConnection> ConnectAsync(Uri uri)
        {
            (IConnection c1, IConnection c2) = PipeConnection.CreatePipe();
            AcceptConnections.Enqueue(c2);

            return(Task.FromResult(c1));
        }
Exemple #2
0
        public void AddAllReadyServerConnectionsToObservers()
        {
            var connection1 = new NetworkConnection(tconn42)
            {
                IsReady = true
            };
            var connection2 = new NetworkConnection(tconn43)
            {
                IsReady = false
            };

            // add some server connections
            server.connections.Add(connection1);
            server.connections.Add(connection2);

            // add a host connection
            (_, IConnection localConnection) = PipeConnection.CreatePipe();

            server.SetLocalConnection(client, localConnection);
            server.LocalConnection.IsReady = true;

            // call OnStartServer so that observers dict is created
            identity.StartServer();

            // add all to observers. should have the two ready connections then.
            identity.AddAllReadyServerConnectionsToObservers();
            Assert.That(identity.observers, Is.EquivalentTo(new[] { connection1, server.LocalConnection }));

            // clean up
            server.Disconnect();
        }
Exemple #3
0
        public static (NetworkConnection, NetworkConnection) PipedConnections()
        {
            (IConnection c1, IConnection c2) = PipeConnection.CreatePipe();
            var toServer = new NetworkConnection(c2);
            var toClient = new NetworkConnection(c1);

            return(toServer, toClient);
        }
Exemple #4
0
        public void SetupNetworkManager()
        {
            gameObject = new GameObject();
            gameObject.AddComponent <LoopbackTransport>();
            manager = gameObject.AddComponent <NetworkManager>();
            manager.startOnHeadless = false;
            manager.client          = gameObject.GetComponent <NetworkClient>();
            manager.server          = gameObject.GetComponent <NetworkServer>();

            (tconn1, tconn2) = PipeConnection.CreatePipe();
        }
Exemple #5
0
        public static (NetworkConnectionToServer, NetworkConnectionToClient) PipedConnections(bool authenticated = false)
        {
            (IConnection c1, IConnection c2) = PipeConnection.CreatePipe();
            var toServer = new NetworkConnectionToServer(c2);
            var toClient = new NetworkConnectionToClient(c1);

            toServer.isAuthenticated = authenticated;
            toClient.isAuthenticated = authenticated;

            return(toServer, toClient);
        }
Exemple #6
0
        static NetworkPlayer CreateNetworkConnection(GameObject player)
        {
            (IConnection conn1, IConnection _) = PipeConnection.CreatePipe();

            var connection = new NetworkPlayer(conn1)
            {
                Identity = player.GetComponent <NetworkIdentity>()
            };

            connection.Identity.ConnectionToClient = connection;
            connection.IsReady = true;
            return(connection);
        }
Exemple #7
0
 public override Task <IConnection> ConnectAsync(Uri uri)
 {
     (IConnection c1, IConnection c2) = PipeConnection.CreatePipe();
     if (AcceptCompletionSource == null)
     {
         return(Task.FromException <IConnection>(new SocketException((int)SocketError.ConnectionRefused)));
     }
     else
     {
         AcceptCompletionSource?.SetResult(c2);
         return(Task.FromResult(c1));
     }
 }
        internal void ConnectHost(NetworkServer server)
        {
            logger.Log("Client Connect Host to Server");

            connectState = ConnectState.Connected;

            InitializeAuthEvents();

            // create local connection objects and connect them
            (IConnection c1, IConnection c2) = PipeConnection.CreatePipe();

            server.SetLocalConnection(this, c2);
            hostServer = server;
            Connection = GetNewConnection(c1);
            RegisterHostHandlers();

            OnConnected().Forget();
        }
        public void AddAllReadyServerConnectionsToObservers()
        {
            player1.IsReady = true;
            player2.IsReady = false;
            // add some server connections
            server.Players.Add(player1);
            server.Players.Add(player2);

            // add a host connection
            (_, IConnection localConnection) = PipeConnection.CreatePipe();

            server.SetLocalConnection(client, localConnection);
            server.LocalPlayer.IsReady = true;

            // call OnStartServer so that observers dict is created
            identity.StartServer();

            // add all to observers. should have the two ready connections then.
            identity.AddAllReadyServerConnectionsToObservers();
            Assert.That(identity.observers, Is.EquivalentTo(new[] { player1, server.LocalPlayer }));

            // clean up
            server.Stop();
        }
Exemple #10
0
 public override UniTask <IConnection> ConnectAsync(Uri uri)
 {
     (IConnection c1, IConnection c2) = PipeConnection.CreatePipe();
     Connected.Invoke(c2);
     return(UniTask.FromResult(c1));
 }
Exemple #11
0
 public void Setup()
 {
     (c1, c2) = PipeConnection.CreatePipe();
 }