コード例 #1
0
        public void OnePairShouldWinAgainstHighCard()
        {
            var hand1 = new PokerHand(new List <ICard>()
            {
                new PlayingCard(6, "Club"),
                new PlayingCard(1, "Heart"),
                new PlayingCard(5, "Club"),
                new PlayingCard(7, "Club"),
                new PlayingCard(9, "Club"),
            });
            var hand2 = new PokerHand(new List <ICard>()
            {
                new PlayingCard(1, "Club"),
                new PlayingCard(1, "Heart"),
                new PlayingCard(5, "Club"),
                new PlayingCard(7, "Club"),
                new PlayingCard(9, "Club"),
            });

            var handList = new List <IHand>()
            {
                hand1, hand2
            };
            var handEvaluator = new HandEvaluator();

            handEvaluator.Evaluate(handList);

            var winnerSelector = new WinnerSelector();

            winnerSelector.SelectWinner(handList);

            Assert.IsTrue(hand2.IsWinner);
        }
コード例 #2
0
        public void HighCardHandWithLargerHighCardShouldWin()
        {
            var hand1 = new PokerHand(new List <ICard>()
            {
                new PlayingCard(11, "Club"),
                new PlayingCard(1, "Heart"),
                new PlayingCard(5, "Club"),
                new PlayingCard(7, "Club"),
                new PlayingCard(9, "Club"),
            });
            var hand2 = new PokerHand(new List <ICard>()
            {
                new PlayingCard(2, "Club"),
                new PlayingCard(1, "Heart"),
                new PlayingCard(5, "Club"),
                new PlayingCard(7, "Club"),
                new PlayingCard(9, "Club"),
            });

            var hand3 = new PokerHand(new List <ICard>()
            {
                new PlayingCard(12, "Club"),
                new PlayingCard(1, "Heart"),
                new PlayingCard(5, "Club"),
                new PlayingCard(7, "Club"),
                new PlayingCard(9, "Club"),
            });

            var handList = new List <IHand>()
            {
                hand1, hand2, hand3
            };

            var handEvaluator = new HandEvaluator();

            handEvaluator.Evaluate(handList);

            var winnerSelector = new WinnerSelector();

            winnerSelector.SelectWinner(handList);

            Assert.IsTrue(hand3.IsWinner);
        }
コード例 #3
0
        public void OnePairShouldWinInASinglePlayerGame()
        {
            var hand1 = new PokerHand(new List <ICard>()
            {
                new PlayingCard(1, "Club"),
                new PlayingCard(1, "Heart"),
                new PlayingCard(5, "Club"),
                new PlayingCard(7, "Club"),
                new PlayingCard(9, "Club"),
            });

            var handList = new List <IHand>()
            {
                hand1
            };
            var winnerSelector = new WinnerSelector();

            winnerSelector.SelectWinner(handList);

            Assert.IsTrue(hand1.IsWinner);
        }