public void CalculatesHighCard() { var deck = Card.Deck.ToList(); var playerHand = Card.ConvertToHandOfCards( "2H AD KC JD 5S", ref deck ).ToList(); var expectedResponse = new Hand { PlayedCards = playerHand.Where(card => card.Value == "A"), Score = 14, Type = Hand.Types.HighCard }; var response = _calculator.BestHand(playerHand); response.Should().BeEquivalentTo(expectedResponse); }
public void StoresTheBestHand() { var deck = Card.Deck.ToList(); var player = new Player { Hand = "2H 3D 9C KD 5S", Name = "Alice" }; var calculator = new HandCalculator(); var outcomeDeck = Card.Deck.ToList(); var playedCards = Card.ConvertToHandOfCards(player.Hand, ref outcomeDeck).ToList(); var expectedOutcome = calculator.BestHand(playedCards); var playerHand = new PlayerHand(player, ref deck); playerHand.Best.Should().BeEquivalentTo(expectedOutcome); }