public void LuMengAbtestnomockBVA()
 {
     {
         Player p    = new ZhangFei(1);
         Attack card = new Attack(CardSuit.Club, 1);
         p.handCards.Add(card);
         Assert.IsFalse(p.handcardCount() == 0);
     }
 }
 public void LiuBeiAbtestnomockBVA()
 {
     {
         Player   p  = new LiuBei(0);
         Player[] ls = new Player[1];
         ls[0] = new ZhangFei(1);
         Attack card = new Attack(CardSuit.Heart, (byte)1);
         p.handCards.Add(card);
         Assert.IsFalse(p.handCards.Count == 0);
         Assert.IsFalse(ls[0].handCards.Count == 1);
     }
 }
Beispiel #3
0
        /// <summary>
        /// initialize players
        /// </summary>
        /// <param name="n"></param>
        /// <returns></returns>
        public static Player[] initializePlayers(int n)
        {
            Player[] players = new Player[n];

            players[0] = new LuMeng(0, PlayerType.King);
            players[1] = new SunQuan(1, PlayerType.Loyal);
            players[2] = new LiuBei(2, PlayerType.Rebel);
            players[3] = new ZhangFei(3, PlayerType.Rebel);
            players[4] = new CaoCao(4, PlayerType.Spy);

            return(players);
        }
 public void LiuBeiAbtestnomocknull()
 {
     {
         Player   p  = new LiuBei(0);
         Player[] ls = new Player[1];
         ls[0] = new ZhangFei(1);
         Attack card = new Attack(CardSuit.Heart, (byte)1);
         p.handCards.Add(card);
         p.ability(null, mocks.Stub <IGame>());
         Assert.IsTrue(p.handCards.Count == 0);
         Assert.IsTrue(ls[0].handCards.Count == 1);
     }
 }
 public void LiuBeiAbtestnomocknull2()
 {
     {
         Player   p  = new LiuBei(0);
         Player[] ls = new Player[1];
         ls[0] = new ZhangFei(1);
         Attack card = new Attack(CardSuit.Heart, (byte)1);
         p.handCards.Add(card);
         p.ability(new AbilityAction(card, ls), null);
         Assert.IsTrue(p.handCards.Count == 0);
         Assert.IsTrue(ls[0].handCards.Count == 1);
     }
 }
        public void ZhangFeiAbtestnomocknull1()
        {
            {
                IGame       game  = mocks.Stub <IGame>();
                Player      p     = new ZhangFei(1);
                Attack      card  = new Attack(CardSuit.Club, 1);
                ActionPhase acpha = new ActionPhase(p);
                Player[]    ls    = new Player[1];
                ls[0] = new LiuBei(2);

                AttackPhase pha = new AttackPhase(p, card, ls, acpha);
                pha.actionPhase.attackCount = 1;
                Assert.IsFalse(p.canNotAttack(null, game));
            }
        }
 public void LiuBeiAbtestmock()
 {
     {
         Player        p        = new LiuBei(0);
         Player[]      ls       = new Player[1];
         Attack        fakeCard = mocks.DynamicMock <Attack>(CardSuit.Club, (byte)1);
         IGame         fakeGame = mocks.DynamicMock <IGame>();
         AbilityAction fakeAb   = mocks.DynamicMock <AbilityAction>(fakeCard, ls);
         ls[0] = new ZhangFei(1);
         using (mocks.Ordered())
         {
             p.handCards.Remove(fakeCard);
         }
         mocks.ReplayAll();
         p.ability(fakeAb, fakeGame);
     }
 }
        public void autoAdvanceTest2()
        {
            ZhangFei p1     = new ZhangFei(0);
            Card     attack = new Attack(CardSuit.Spade, 1);
            Miss     miss   = new Miss(CardSuit.Diamond, 2);

            p1.handCards.Add(attack);
            p1.handCards.Add(miss);
            p1.health = 1;

            IGame game = mocks.Stub <IGame>();


            // ActionPhase produces attackPhase
            UserActionPhase a = new ActionPhase(p1);

            Assert.AreEqual(a.autoAdvance(game), null);
        }
        public void autoAdvanceTest()
        {
            ZhangFei p1     = new ZhangFei(0);
            Card     attack = new Attack(CardSuit.Spade, 1);
            Miss     miss   = new Miss(CardSuit.Diamond, 2);

            p1.handCards.Add(attack);
            p1.handCards.Add(miss);
            p1.health = 1;

            IGame game = mocks.Stub <IGame>();


            // ActionPhase produces attackPhase
            UserActionPhase a = new DiscardPhase(p1);

            Assert.IsInstanceOfType(a.autoAdvance(game), typeof(PhaseList));
        }
        public void resAdvanceTest3()
        {
            ZhangFei p1     = new ZhangFei(0);
            Card     attack = new Attack(CardSuit.Spade, 1);
            Miss     miss   = new Miss(CardSuit.Diamond, 2);

            p1.handCards.Add(attack);
            p1.handCards.Add(miss);
            p1.health = 1;

            IGame game = mocks.Stub <IGame>();


            // ActionPhase produces attackPhase
            UserActionPhase a  = new ActionPhase(p1);
            PhaseList       ls = a.timeOutAdvance(game);

            Assert.IsInstanceOfType(ls.pop(), typeof(DiscardPhase));
            Assert.IsTrue(ls.isEmpty());
        }
        public void CaoCaoAbtestmock()
        {
            Player    p        = new CaoCao(1);
            Player    p2       = new ZhangFei(2);
            int       harm     = 1;
            Attack    fakeCard = mocks.DynamicMock <Attack>(CardSuit.Club, (byte)1);
            IGame     fakeGame = mocks.DynamicMock <IGame>();
            HarmPhase fakeharm = mocks.DynamicMock <HarmPhase>(p, p2, harm, fakeCard);


            int old = p.handCards.Count;

            using (mocks.Ordered())
            {
                p.handCards.Add(fakeCard);
            }
            mocks.ReplayAll();
            PhaseList ret  = p.harm(new HarmPhase(p, null, harm, fakeCard), fakeGame);
            int       newc = p.handCards.Count;

            Assert.IsTrue(old != newc);
        }