public void FourOfAKindIsNotThreeOfAKind()
 {
     var testHand = new PokerEntities.Hand(
         new List<PokerEntities.Card>
             {
                 new PokerEntities.Card(PokerEntities.CardSuit.Hearts, PokerEntities.CardRank.Ten),
                 new PokerEntities.Card(PokerEntities.CardSuit.Clubs, PokerEntities.CardRank.Ten),
                 new PokerEntities.Card(PokerEntities.CardSuit.Spades, PokerEntities.CardRank.Ten),
                 new PokerEntities.Card(PokerEntities.CardSuit.Diamonds, PokerEntities.CardRank.Nine),
                 new PokerEntities.Card(PokerEntities.CardSuit.Hearts, PokerEntities.CardRank.Ten),
             });
     var expected = new ReturnTypes.ThreeOfAKindReturn(false, null, null, null);
     Assert.AreEqual(expected, testHand.Cards.ThreeOfAKind());
 }
 public void ThreeOfAKind()
 {
     var testHand = new PokerEntities.Hand(
         new List<PokerEntities.Card>
             {
                 new PokerEntities.Card(PokerEntities.CardSuit.Hearts, PokerEntities.CardRank.Ace),
                 new PokerEntities.Card(PokerEntities.CardSuit.Clubs, PokerEntities.CardRank.King),
                 new PokerEntities.Card(PokerEntities.CardSuit.Spades, PokerEntities.CardRank.Ten),
                 new PokerEntities.Card(PokerEntities.CardSuit.Diamonds, PokerEntities.CardRank.Ten),
                 new PokerEntities.Card(PokerEntities.CardSuit.Hearts, PokerEntities.CardRank.Ten),
             });
     var expected = new ReturnTypes.ThreeOfAKindReturn(true, PokerEntities.CardRank.Ten, PokerEntities.CardRank.Ace, PokerEntities.CardRank.King);
     Assert.AreEqual(expected, testHand.Cards.ThreeOfAKind());
 }