Ejemplo n.º 1
0
        public void AICanPassMove()
        {
            gm = GameControllerTestHelper.InitDemoGame(5);
            GameControllerTestHelper.PassStroke(gm);

            //Внимание: при усовершенствование AI данный тест может измениться, .т.к. комп уже осознано будет выбирать какую карту сбросить
            Assert.AreEqual(gm.logCard.LastOrDefault(x => x.player.type == TypePlayer.AI && x.gameEvent == GameEvent.Droped).card.id, 2, "AI должен сбросить карту 2");
        }
Ejemplo n.º 2
0
        public void AICanGetAnotherCard()
        {
            //Внимание: при усовершенствование AI данный тест может измениться, .т.к. комп уже осознано будет выбирать какую карту сбросить
            gm = GameControllerTestHelper.InitDemoGame(4);
            GameControllerTestHelper.PassStroke(gm);

            Assert.AreEqual(gm.logCard.LastOrDefault(x => x.player.type == TypePlayer.AI && x.gameEvent == GameEvent.Used).card.id, 6,
                            "AI должен был использовать карту 6");

            Assert.AreEqual(gm.logCard.FirstOrDefault(x => x.player.type == TypePlayer.AI && x.gameEvent == GameEvent.Used).card.id, 55,
                            "AI должен был использовать карту 55");

            Assert.AreEqual(gm.GetAIUsedCard().Count, 2, "AI должен был использовать 2 карты");
        }
Ejemplo n.º 3
0
        public void ComputerMustWin()
        {
            gm = GameControllerTestHelper.InitDemoGame(3);
            GameControllerTestHelper.PassStroke(gm);

            gm.SendGameNotification(new Dictionary <string, object>()
            {
                { "CurrentAction", CurrentAction.AIMoveIsAnimated }
            });
            Assert.AreEqual(gm.Status, CurrentAction.UpdateStatAI, "Текущий статус должен быть равным обновлению статистики компьютера");

            gm.SendGameNotification(new Dictionary <string, object>()
            {
                { "CurrentAction", CurrentAction.EndAIMove }
            });
            Assert.AreEqual(gm.GetPlayerParams(SelectPlayer.First)[Attributes.Tower], 0, "Башня врага должна быть уничтожена");
            Assert.AreEqual(gm.Winner, "AI", "Компьютер не может проиграть!");
        }
Ejemplo n.º 4
0
 public void WhichCardUseAI()
 {
     gm = GameControllerTestHelper.InitDemoGame();
     GameControllerTestHelper.PassStroke(gm);
     Assert.AreEqual(gm.GetAIUsedCard().LastOrDefault().id, 2, "Компьютер должен использовать карту id 2");
 }