public IEnumerator ClientDisconnect_ShouldCallback() { bool disconnected = false; NewClientServer(); serverWorld.Listen(); yield return(new WaitForSeconds(0.1f)); clientWorld.Connect(); int maxCount = 60; while (maxCount >= 0 && !(clientConnected || clientConnectFailed)) { yield return(new WaitForSeconds(0.1f)); maxCount--; } yield return(ShouldConnect()); clientWorld.Disconnected += () => disconnected = true; clientWorld.Connected += e => clientWorld.Disconnect(); maxCount = 60; while (maxCount >= 0 && !disconnected) { yield return(new WaitForSeconds(0.1f)); maxCount--; } Assert.IsTrue(disconnected); }