public void CheckPlayerHand_EnsurePlayersHasCorrectNumberOfCards() { var hand1 = new Hand { new Card { Rank = Rank.Two, Suit = Suit.Diamond } }; var hand2 = new Hand { new Card { Rank = Rank.Two, Suit = Suit.Spades }, new Card { Rank = Rank.Six, Suit = Suit.Spades }, new Card { Rank = Rank.Jack, Suit = Suit.Spades } }; var player1 = new Player { Name = "Alice", Hand = hand1 }; var player2 = new Player { Name = "Joe", Hand = hand2 }; var playerList = new List <Player> { player1, player2 }; var engine = new PokerEngine(_dealer, playerList); engine.CheckPlayerHand(); Assert.Multiple(() => { playerList.ForEach(player => { Assert.IsTrue(player.Hand.Count == 5); }); }); }
public static void CompleteRound(List <Player> players) { if (players.Count != 4) { var names = new string[4] { "Joe", "Jen", "Bob", "Alice" }; for (int i = players.Count; i < 4; i++) { var player = new Player { Name = names[i - 1], Hand = _dealer.FillHand() }; players.Add(player); } } _engine = new PokerEngine(_dealer, players); _engine.CheckPlayerHand(); var winners = _engine.GetWinningPlayers(); DisplayWinners(winners); }