public void SetUp() { // transport is needed by server and client. // it needs to be on a gameobject because client.connect enables it, // which throws a NRE if not on a gameobject transportGO = new GameObject(); Transport.activeTransport = transport = transportGO.AddComponent <MemoryTransport>(); transport.OnClientDataReceived = (message, channelId) => { byte[] array = new byte[message.Count]; Buffer.BlockCopy(message.Array, message.Offset, array, 0, message.Count); clientReceived.Add(array); }; transport.ServerStart(); transport.ClientConnect("localhost"); Assert.That(transport.ServerActive, Is.True); Assert.That(transport.ClientConnected, Is.True); }
public void SetUp() { // need a transport to send & receive Transport.activeTransport = transport = new GameObject().AddComponent <MemoryTransport>(); transport.ServerStart(); transport.ClientConnect("localhost"); // eat transport connect messages transport.clientIncoming.Clear(); transport.serverIncoming.Clear(); // need a connection to client with batching enabled connection = new NetworkConnectionToClient(42, true, 0); // need a batch too batch = new NetworkConnectionToClient.Batch(); }
public void ShutdownCleanupTest() { // listen NetworkServer.Listen(1); Assert.That(NetworkServer.active, Is.True); // set local connection NetworkServer.SetLocalConnection(new LocalConnectionToClient()); Assert.That(NetworkServer.localClientActive, Is.True); // connect a client transport.ClientConnect("localhost"); UpdateTransport(); Assert.That(NetworkServer.connections.Count, Is.EqualTo(1)); // shutdown NetworkServer.Shutdown(); // state cleared? Assert.That(NetworkServer.connections.Count, Is.EqualTo(0)); Assert.That(NetworkServer.active, Is.False); Assert.That(NetworkServer.localConnection, Is.Null); Assert.That(NetworkServer.localClientActive, Is.False); }