public void CanAssignPairs() { //assemble for (var i = 0; i < 100; i++) { Dealer dealer = new Dealer(); int randomRank = TestMethods.RandomRank(); var randomPair = dealer.Deck.Where(card => (int)card.Rank == randomRank).ToArray(); Random random = new Random(); while (randomPair.Length > 2) { int removeCard = random.Next(0, randomPair.Length); randomPair[removeCard] = null; randomPair = randomPair.Where(card => card != null).ToArray(); } var smallTestDeck = TestMethods.OneOfEachRankDeck(); smallTestDeck = smallTestDeck.Where(card => (int)card.Rank != randomRank).ToArray(); smallTestDeck = TestMethods.Shuffle(smallTestDeck); Player player = new Player("Gustav"); player.DrawCards(randomPair); player.DrawCards(TestMethods.DealTopCards(3, smallTestDeck)); player.SortHand(); //act player.IdentifyHand(); //assert Assert.IsTrue(player.HandType == HandType.Pair); } }
public void CanAssignTwoPairs() { for (var i = 0; i < 100; i++) { Dealer dealer = new Dealer(); Random random = new Random(); List <int> randomNumbers = new List <int>(); for (var j = 0; j < 2; j++) { while (true) { int tempNum = TestMethods.RandomRank(); if (!randomNumbers.Contains(tempNum)) { randomNumbers.Add(tempNum); break; } } } int randomRank1 = randomNumbers[0]; int randomRank2 = randomNumbers[1]; var randomPair1 = dealer.Deck.Where(card => (int)card.Rank == randomRank1).ToArray(); var randomPair2 = dealer.Deck.Where(card => (int)card.Rank == randomRank2).ToArray(); while (randomPair1.Length > 2) { int removeCard1 = random.Next(0, randomPair1.Length); int removeCard2 = random.Next(0, randomPair2.Length); randomPair1[removeCard1] = null; randomPair2[removeCard2] = null; randomPair1 = randomPair1.Where(card => card != null).ToArray(); randomPair2 = randomPair2.Where(card => card != null).ToArray(); } var smallTestDeck = TestMethods.OneOfEachRankDeck(); smallTestDeck = smallTestDeck.Where(card => (int)card.Rank != randomRank1).ToArray(); smallTestDeck = smallTestDeck.Where(card => (int)card.Rank != randomRank2).ToArray(); smallTestDeck = TestMethods.Shuffle(smallTestDeck); Player player = new Player("Gustav"); player.DrawCards(randomPair1); player.DrawCards(randomPair2); player.DrawCards(TestMethods.DealTopCards(1, smallTestDeck)); player.SortHand(); //act player.IdentifyHand(); //assert Assert.IsTrue(player.HandType == HandType.TwoPairs); } }
public void CanAssignFourOfAKind() { for (var i = 0; i < 100; i++) { Dealer dealer = new Dealer(); int randomRank = TestMethods.RandomRank(); var randomFOK = dealer.Deck.Where(card => (int)card.Rank == randomRank).ToArray(); var smallTestDeck = TestMethods.OneOfEachRankDeck(); smallTestDeck = smallTestDeck.Where(card => (int)card.Rank != randomRank).ToArray(); smallTestDeck = TestMethods.Shuffle(smallTestDeck); Player player = new Player("Gustav"); player.DrawCards(randomFOK); player.DrawCards(TestMethods.DealTopCards(1, smallTestDeck)); player.SortHand(); //act player.IdentifyHand(); //assert Assert.IsTrue(player.HandType == HandType.FourOfAKind); } }