public void CheckSpecialHands2() { GamingTable gamingTable = new GamingTable(); Dictionary <int, HandWarGame <CardWarGame> > players = new Dictionary <int, HandWarGame <CardWarGame> >(); HandWarGame <CardWarGame> Hand1 = new HandWarGame <CardWarGame>(); HandWarGame <CardWarGame> Hand2 = new HandWarGame <CardWarGame>(); Hand2.AddCard(new CardWarGame(CardValueEnum.Five, CardColorEnum.Spade)); Hand2.AddCard(new CardWarGame(CardValueEnum.Six, CardColorEnum.Spade)); Hand2.AddCard(new CardWarGame(CardValueEnum.Seven, CardColorEnum.Spade)); Hand2.AddCard(new CardWarGame(CardValueEnum.Height, CardColorEnum.Spade)); HandWarGame <CardWarGame> Hand3 = new HandWarGame <CardWarGame>(); players.Add(1, Hand1); players.Add(2, Hand2); players.Add(3, Hand3); TableHistory tableHistory = gamingTable.PlayGameWhithGivenHand(players); Assert.AreEqual(2, tableHistory.GetHistories()[0].GetWinner()); }
public void TieBreakNotTheSameNumberOfCardTest() { Dictionary <int, HandWarGame <CardWarGame> > players = new Dictionary <int, HandWarGame <CardWarGame> >(); HandWarGame <CardWarGame> Hand1 = new HandWarGame <CardWarGame>(); Hand1.AddCard(new CardWarGame(CardValueEnum.Five, CardColorEnum.Spade)); Hand1.AddCard(new CardWarGame(CardValueEnum.Ace, CardColorEnum.Spade)); HandWarGame <CardWarGame> Hand2 = new HandWarGame <CardWarGame>(); Hand2.AddCard(new CardWarGame(CardValueEnum.Five, CardColorEnum.Clover)); Hand2.AddCard(new CardWarGame(CardValueEnum.Three, CardColorEnum.Clover)); Hand2.AddCard(new CardWarGame(CardValueEnum.King, CardColorEnum.Clover)); players.Add(1, Hand1); players.Add(2, Hand2); GameWar dealerWarGame = new GameWar(players); dealerWarGame.Play(); GameHistory history = dealerWarGame.GetHistory(); Assert.AreEqual(2, history.GetWinner()); }
public void SameCardInDifferentHandTest() { Dictionary <int, HandWarGame <CardWarGame> > players = new Dictionary <int, HandWarGame <CardWarGame> >(); HandWarGame <CardWarGame> Hand1 = new HandWarGame <CardWarGame>(); Hand1.AddCard(new CardWarGame(CardValueEnum.Five, CardColorEnum.Spade)); HandWarGame <CardWarGame> Hand2 = new HandWarGame <CardWarGame>(); Hand2.AddCard(new CardWarGame(CardValueEnum.Five, CardColorEnum.Spade)); players.Add(1, Hand1); players.Add(2, Hand2); GameWar dealerWarGame = new GameWar(players); dealerWarGame.Play(); }
public void CheckSpecialHands3() { IGamingTable gamingTable = new GamingTable(); Dictionary <int, HandWarGame <CardWarGame> > players = new Dictionary <int, HandWarGame <CardWarGame> >(); HandWarGame <CardWarGame> Hand1 = new HandWarGame <CardWarGame>(); HandWarGame <CardWarGame> Hand2 = new HandWarGame <CardWarGame>(); HandWarGame <CardWarGame> Hand3 = new HandWarGame <CardWarGame>(); players.Add(1, Hand1); players.Add(2, Hand2); players.Add(3, Hand3); TableHistory tableHistory = gamingTable.PlayGameWhithGivenHand(players); Assert.AreEqual(-1, tableHistory.GetHistories()[0].GetWinner()); //No winner }
public void HandOneCardEqualValueTest() { Dictionary <int, HandWarGame <CardWarGame> > players = new Dictionary <int, HandWarGame <CardWarGame> >(); HandWarGame <CardWarGame> Hand1 = new HandWarGame <CardWarGame>(); Hand1.AddCard(new CardWarGame(CardValueEnum.Five, CardColorEnum.Clover)); HandWarGame <CardWarGame> Hand2 = new HandWarGame <CardWarGame>(); Hand2.AddCard(new CardWarGame(CardValueEnum.Five, CardColorEnum.Spade)); players.Add(1, Hand1); players.Add(2, Hand2); GameWar dealerWarGame = new GameWar(players); dealerWarGame.Play(); GameHistory history = dealerWarGame.GetHistory(); Assert.AreEqual(-1, history.GetWinner()); }
public static void PlayGameWhithGivenHand() //NOT SAFE AT ALL. If wrong input exceptions not caught at all. { Console.WriteLine("You selected Play game with given hand"); Console.WriteLine("Select number of players : "); int numberPlayers = int.Parse(Console.ReadLine()); Dictionary <int, HandWarGame <CardWarGame> > players = new Dictionary <int, HandWarGame <CardWarGame> >(); for (int i = 1; i <= numberPlayers; i++) { Console.WriteLine("Select cards with an input like '4H 3S 1C 13D ...' for player " + i + " :"); List <String> cardsToConvert = Console.ReadLine().Split(" ").ToList(); //not safe HandWarGame <CardWarGame> cards = HandWarGame <CardWarGame> .ConvertStringsToCards(cardsToConvert); // should be done with a proper dsl players.Add(i, cards); } IGamingTable gamingTable = new GamingTable.GamingTable(); TableHistory tableHistory = gamingTable.PlayGameWhithGivenHand(players); tableHistory.PrintDetailledHistory(); }
internal void SetHand(HandWarGame <CardWarGame> hand) { this.Hand = hand; }
internal PlayerWar(int id, HandWarGame <CardWarGame> hand) : this(id) { this.Hand = hand; }