Пример #1
0
 public void JoinNonExistingGameTest()
 {
     try
     {
         GameAccess.JoinGame("asd9d0sa00dasmmdsq");
         Assert.Fail();
     }
     catch
     {
     }
 }
Пример #2
0
 public void JoinEmptyStringGameTest()
 {
     try
     {
         GameAccess.JoinGame("");
         Assert.Fail();
     }
     catch
     {
     }
 }
Пример #3
0
        public void DisconnectAndReconnectTest()
        {
            FrontEndAccess.UserToken.Token = Token;
            var game = GameAccess.CreateGame(DefaultGame);

            try
            {
                //Other player
                FrontEndAccess.UserToken.Token = OtherUserToken;
                GameAccess.JoinGame(game.HashId);

                // Since the game is not starter should not be puit  disconnect
                GameAccess.QuitGame(game.HashId);
                game = GameAccess.GetGameInfo(game.HashId);
                Assert.AreEqual(1, game.CurrentPlayerCount);
                Assert.AreEqual(1, game.ParticipantsHashId.Count);
                Assert.AreEqual(0, game.DisconnectedHashId.Count);

                //Other player join again
                GameAccess.JoinGame(game.HashId);

                // Host start the game
                FrontEndAccess.UserToken.Token = Token;
                GameAccess.StartGame(game.HashId);

                //Other player disconnect
                FrontEndAccess.UserToken.Token = OtherUserToken;
                GameAccess.QuitGame(game.HashId);

                // Should be in the disconnect list
                game = GameAccess.GetGameInfo(game.HashId);
                Assert.AreEqual(1, game.CurrentPlayerCount);
                Assert.AreEqual(1, game.ParticipantsHashId.Count);
                Assert.AreEqual(1, game.DisconnectedHashId.Count);

                // SHould be able to reconnect
                GameAccess.ReconnectGame(game.HashId);
                game = GameAccess.GetGameInfo(game.HashId);
                Assert.AreEqual(2, game.CurrentPlayerCount);
                Assert.AreEqual(2, game.ParticipantsHashId.Count);
                Assert.AreEqual(0, game.DisconnectedHashId.Count);
            }
            catch (Exception)
            {
            }
            finally
            {
                FrontEndAccess.UserToken.Token = Token;
                GameAccess.DeleteGame(game.HashId);
            }
        }
Пример #4
0
        public void JoinGameTest()
        {
            FrontEndAccess.UserToken.Token = OtherUserToken;
            var game = GameAccess.CreateGame(DefaultGame);

            FrontEndAccess.UserToken.Token = Token;
            var joinedGame = GameAccess.JoinGame(game.HashId);

            Assert.AreEqual(game.HashId, joinedGame.HashId);
            Assert.AreEqual(2, joinedGame.CurrentPlayerCount);
            Assert.IsTrue(joinedGame.ParticipantsHashId.Contains(CurrentUserToken.UserId));

            FrontEndAccess.UserToken.Token = OtherUserToken;
            GameAccess.DeleteGame(game.HashId);
        }
Пример #5
0
        public void JoinAGameYouAlreadyAreInTest()
        {
            var game = GameAccess.CreateGame(DefaultGame);

            try
            {
                GameAccess.JoinGame(game.HashId);
                Assert.Fail();
            }
            catch
            {
            }

            GameAccess.DeleteGame(game.HashId);
        }
Пример #6
0
        public void JoinFullGameTest()
        {
            FrontEndAccess.UserToken.Token = OtherUserToken;
            DefaultGame.MaxPlayersCount    = 1;
            var game = GameAccess.CreateGame(DefaultGame);

            try
            {
                FrontEndAccess.UserToken.Token = Token;
                GameAccess.JoinGame(game.HashId);
                Assert.Fail();
            }
            catch
            {
            }
            FrontEndAccess.UserToken.Token = OtherUserToken;
            GameAccess.DeleteGame(game.HashId);
        }
Пример #7
0
        public void JoinPrivateGameWrongPassTest()
        {
            FrontEndAccess.UserToken.Token = OtherUserToken;
            DefaultGame.IsPrivate          = true;
            DefaultGame.Password           = "******";
            var game = GameAccess.CreateGame(DefaultGame);

            try
            {
                FrontEndAccess.UserToken.Token = Token;
                GameAccess.JoinGame(game.HashId, DefaultGame.Password + "1");
                Assert.Fail();
            }
            catch
            {
            }
            FrontEndAccess.UserToken.Token = OtherUserToken;
            GameAccess.DeleteGame(game.HashId);
        }
Пример #8
0
        public void QuitGameTest()
        {
            var firstCount = GameAccess.GetAllGames().Count;

            FrontEndAccess.UserToken.Token = OtherUserToken;
            var game = GameAccess.CreateGame(DefaultGame);

            FrontEndAccess.UserToken.Token = Token;
            GameAccess.JoinGame(game.HashId);
            GameAccess.QuitGame(game.HashId);

            game = GameAccess.GetGameInfo(game.HashId);
            Assert.AreEqual(1, game.CurrentPlayerCount);
            Assert.AreEqual(1, game.ParticipantsHashId.Count);

            var secondCount = GameAccess.GetAllGames().Count;

            Assert.AreEqual(firstCount + 1, secondCount);

            FrontEndAccess.UserToken.Token = OtherUserToken;
            GameAccess.DeleteGame(game.HashId);
        }
Пример #9
0
        public void JoinPrivateGameNoPassTest()
        {
            // login as another user to create a new game
            FrontEndAccess.UserToken.Token = OtherUserToken;
            DefaultGame.IsPrivate          = true;
            DefaultGame.Password           = "******";
            var game = GameAccess.CreateGame(DefaultGame);

            try
            {
                // login as default user to join
                FrontEndAccess.UserToken.Token = Token;
                GameAccess.JoinGame(game.HashId);
                Assert.Fail();
            }
            catch
            {
            }

            FrontEndAccess.UserToken.Token = OtherUserToken;
            GameAccess.DeleteGame(game.HashId);
        }