예제 #1
0
        public void HandFourOfAKindTestDuplicate()
        {
            //Arrange
            List <Card> cards = new List <Card>();

            cards.Add(new Card(Suits.Clubes, "A"));
            cards.Add(new Card(Suits.Clubes, "A"));

            //Act
            TreeOfAKind hand = new TreeOfAKind();

            //Assert
            Assert.ThrowsException <InvalidOperationException>(() => hand.IsMatch(cards));
        }
예제 #2
0
        public void HandIsNotTreeOfAKind()
        {
            //Arrange
            List <Card> cards = new List <Card>();

            cards.Add(new Card(Suits.Hearts, 3));
            cards.Add(new Card(Suits.Hearts, "A"));
            cards.Add(new Card(Suits.Spades, 4));
            cards.Add(new Card(Suits.Clubes, 3));
            cards.Add(new Card(Suits.Hearts, "K"));
            cards.Add(new Card(Suits.Dimensions, "K"));
            cards.Add(new Card(Suits.Hearts, "J"));

            //Act
            TreeOfAKind threeOfAKind = new TreeOfAKind();

            //Assert
            Assert.IsFalse(threeOfAKind.IsMatch(cards).HasValue);
        }
예제 #3
0
        public void HandIsHandTreeOfAKind()
        {
            //Arrange
            List <Card> cards = new List <Card>();

            cards.Add(new Card(Suits.Hearts, 2));
            cards.Add(new Card(Suits.Hearts, "A"));
            cards.Add(new Card(Suits.Spades, 3));
            cards.Add(new Card(Suits.Clubes, 3));
            cards.Add(new Card(Suits.Hearts, "K"));
            cards.Add(new Card(Suits.Dimensions, 3));
            cards.Add(new Card(Suits.Hearts, "J"));

            //Act
            TreeOfAKind h            = new TreeOfAKind();
            Hand        threeOfAKind = h.IsMatch(cards).Value;

            //Assert
            Assert.IsNotNull(threeOfAKind);
            Assert.AreEqual(5, threeOfAKind.CardsInTheHand.Count);
            Assert.AreEqual <int>(14, threeOfAKind.CardsInTheHand[3].Value);
            Assert.AreEqual <int>(13, threeOfAKind.CardsInTheHand[4].Value);
            Assert.AreEqual(Constancts.HandRanks.ThreeOfAKind, threeOfAKind.Rank);
        }