public void TestLobbyCountAfterRemovingInactivePlayerBreak()
        {
            if (this.connectPolicy.IsOnline)
            {
                Assert.Ignore("This is an offline test");
            }

            if (string.IsNullOrEmpty(this.Player1))
            {
                Assert.Ignore("this tests requires userId to be set");
            }

            Thread.Sleep(1000);// to finish everything from perv tests

            var connPolicy = (OfflineConnectPolicy)this.connectPolicy;

            var masterServer = (ITestMasterApplication)connPolicy.MasterServer.Application;

            masterServer.ResetStats();

            UnifiedTestClient masterClient1 = null;
            UnifiedTestClient masterClient2 = null;
            UnifiedTestClient masterClient3 = null;

            try
            {
                string roomName = this.GenerateRandomizedRoomName(MethodBase.GetCurrentMethod().Name);

                masterClient1 = this.CreateMasterClientAndAuthenticate(this.Player1);
                var createGameRequest = new CreateGameRequest
                {
                    GameId          = roomName,
                    PlayerTTL       = 3000,
                    CheckUserOnJoin = !string.IsNullOrEmpty(this.Player1),
                };
                var createGameResponse = masterClient1.CreateGame(createGameRequest);

                this.ConnectAndAuthenticate(masterClient1, createGameResponse.Address);

                //createGameRequest.AddUsers = new string[] { "Player3", "Player5", "Player6", "Player7" };

                masterClient1.CreateGame(createGameRequest);
                Thread.Sleep(300);

                masterClient2 = this.CreateMasterClientAndAuthenticate(this.Player2);
                masterClient3 = this.CreateMasterClientAndAuthenticate(this.Player3);

                var response = masterClient2.JoinGame(roomName, ErrorCode.Ok);
                masterClient3.JoinGame(roomName, ErrorCode.Ok);

                this.ConnectAndAuthenticate(masterClient3, response.Address);

                masterClient3.JoinGame(roomName, ErrorCode.Ok);

                Thread.Sleep(300);

                masterClient3.Disconnect();

                Thread.Sleep(4000);

                masterClient1.Disconnect();

                Thread.Sleep(1000);
                this.ConnectAndAuthenticate(masterClient2, this.MasterAddress);
                var getLobbyStatsResponse = masterClient2.GetLobbyStats(null, null);

                masterClient2.Disconnect();

                Assert.That(getLobbyStatsResponse.PeerCount[0], Is.EqualTo(0));
            }
            finally
            {
                DisposeClients(masterClient1, masterClient2, masterClient3);
            }
        }