예제 #1
0
        public void Test_Game_PlayGame_TiePlayer2Wins()
        {
            List <Card> p1Cards = new List <Card>
            {
                new Card(CardSuit.DIAMOND, CardRank.RANK_JACK),
                new Card(CardSuit.CLUB, CardRank.RANK_KING),                //  Down card
                new Card(CardSuit.CLUB, CardRank.RANK_3)
            };

            List <Card> p2Cards = new List <Card>
            {
                new Card(CardSuit.SPADE, CardRank.RANK_JACK),
                new Card(CardSuit.HEART, CardRank.RANK_6)
            };

            Fake_PlayGame       fp  = new Fake_PlayGame();
            Fake_PlayGame_Model fpm = fp.Setup(p1Cards, p2Cards);

            GameResults gameResults = fpm.Game.PlayGame(fpm.Player1, fpm.Player2);

            Assert.True(0 == fpm.Player1.NumberOfCards);
            Assert.True(0 < fpm.Player2.NumberOfCards);
            Assert.Equal <Player>(gameResults.LosingPlayer, fpm.Player1);
            Assert.Equal <Player>(gameResults.WinningPlayer, fpm.Player2);
        }
예제 #2
0
        public void Test_Game_PlayGame_Player2Wins(int numberOfCards)
        {
            List <Card> p1Cards = Enumerable.Repeat(new Card(CardSuit.SPADE, CardRank.RANK_6), numberOfCards).ToList();
            List <Card> p2Cards = Enumerable.Repeat(new Card(CardSuit.SPADE, CardRank.RANK_10), numberOfCards).ToList();

            Fake_PlayGame       fp  = new Fake_PlayGame();
            Fake_PlayGame_Model fpm = fp.Setup(p1Cards, p2Cards);

            GameResults gameResults = fpm.Game.PlayGame(fpm.Player1, fpm.Player2);

            Assert.True(0 == fpm.Player1.NumberOfCards);
            Assert.True(numberOfCards * 2 == fpm.Player2.NumberOfCards);
            Assert.Equal <Player>(gameResults.LosingPlayer, fpm.Player1);
            Assert.Equal <Player>(gameResults.WinningPlayer, fpm.Player2);
        }
예제 #3
0
        public void Test_Game_PlayGame_Tie()
        {
            List <Card> cards = new List <Card>
            {
                new Card(CardSuit.CLUB, CardRank.RANK_KING),
                new Card(CardSuit.HEART, CardRank.RANK_10),
                new Card(CardSuit.SPADE, CardRank.RANK_4),
                new Card(CardSuit.DIAMOND, CardRank.RANK_2),
            };

            Fake_PlayGame       fp  = new Fake_PlayGame();
            Fake_PlayGame_Model fpm = fp.Setup(cards, cards);

            GameResults gameResults = fpm.Game.PlayGame(fpm.Player1, fpm.Player2);

            Assert.True(0 < gameResults.WinningPlayer.NumberOfCards);
            Assert.True(0 == gameResults.LosingPlayer.NumberOfCards);
        }