public static void Test_Player_New_Hand_Not_Same_As_Last() { Player player = new Player("Ben"); FiveCardPokerGame game = new FiveCardPokerGame(new List <Player> { player }); game.BeginRound(); List <ICard> hand1 = new List <ICard>(); hand1.AddRange(player.Hand); game.BeginRound(); List <ICard> hand2 = player.Hand; Assert.AreNotEqual(hand1, hand2); }
public static void Test_That_Deal_Hand_Creates_New_Deck_and_Doesnt_add_To_Old_Deck() { Player player = new Player("Player1"); List <Player> players = new List <Player>(); int deckOneCount = 0; int deckTwoCount = 0; players.Add(player); FiveCardPokerGame game = new FiveCardPokerGame(players); game.BeginRound(); deckOneCount = game.Deck.CompleteDeck.Count; game.BeginRound(); deckTwoCount = game.Deck.CompleteDeck.Count; Assert.AreEqual(deckOneCount, deckTwoCount); }
public static void Test_Deck_Removes_Cards_Once_Dealt_To_Players() { Player player = new Player("Player1"); List <Player> players = new List <Player>(); players.Add(player); FiveCardPokerGame game = new FiveCardPokerGame(players); game.BeginRound(); Assert.AreEqual(47, game.Deck.CompleteDeck.Count); }
public static void Test_Deck_Removed_Correct_Cards_Once_Dealt_To_Players() { Player player = new Player("Player1"); List <Player> players = new List <Player>(); players.Add(player); FiveCardPokerGame game = new FiveCardPokerGame(players); game.BeginRound(); foreach (var playerCard in player.Hand) { Assert.IsFalse(game.Deck.CompleteDeck.Contains(playerCard)); } }
public static void Test_Player_Hand_Has_5_Unique_Cards() { Player player = new Player("Ben"); List <Player> players = new List <Player> { player }; FiveCardPokerGame game = new FiveCardPokerGame(players); game.BeginRound(); // Get Unique Cards List <ICard> cards = player.Hand.Select(x => x).Distinct().ToList(); Assert.AreEqual(5, player.Hand.Count); Assert.AreEqual(5, cards.Count); }