Example #1
0
        public void TestIsCategoryPair()
        {
            List <Player> Players   = new List <Player>();
            PokerGame     FirstGame = new PokerGame();//Create game object

            Players.Add(new Player("Joe", new List <Card>()
            {
                new Card {
                    Rank = Rank.Three, Suit = Suit.Heart
                },
                new Card {
                    Rank = Rank.Six, Suit = Suit.Heart
                },
                new Card {
                    Rank = Rank.Eight, Suit = Suit.Heart
                },
                new Card {
                    Rank = Rank.Jack, Suit = Suit.Heart
                },
                new Card {
                    Rank = Rank.King, Suit = Suit.Heart
                }
            }));

            List <Player> winners = FirstGame.GetWinner(Players);

            Assert.AreEqual("Joe", winners.First().PName);
        }
Example #2
0
        public void TestMorethenFiveCard()
        {
            List <Player> Players   = new List <Player>();
            PokerGame     FirstGame = new PokerGame();//Create game object

            Players.Add(new Player("Joe", new List <Card>()
            {
                new Card {
                    Rank = Rank.Three, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Four, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Nine, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Nine, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Nine, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Queen, Suit = Suit.Diamond
                }
            }));                                                                                                     //create poker player


            var ex = Assert.Throws <Exception>(() => FirstGame.GetWinner(Players));

            Assert.That(ex.Message, Is.EqualTo("Player in the List has more then 5 Cards"));
        }
Example #3
0
        public HttpResponseMessage GetWinner(GameViewModel game)
        {
            string message = "Error: ";
            HttpResponseMessage resp;

            if (game != null && game.Hand1 != null && game.Hand2 != null)
            {
                try
                {
                    PokerGame pokergame = new PokerGame();
                    pokergame.AddPlayer(new Player(game.Hand1.playername, game.Hand1.c1, game.Hand1.c2, game.Hand1.c3, game.Hand1.c4, game.Hand1.c5));
                    pokergame.AddPlayer(new Player(game.Hand2.playername, game.Hand2.c1, game.Hand2.c2, game.Hand2.c3, game.Hand2.c4, game.Hand2.c5));

                    message = pokergame.GetWinner();
                    resp    = Request.CreateResponse(HttpStatusCode.OK);
                }
                catch (Exception ex)
                {
                    message += ex.Message;
                    resp     = Request.CreateErrorResponse(HttpStatusCode.BadRequest, message);
                }
            }
            else
            {
                message += "Player game or hands not provided.";
                resp     = Request.CreateErrorResponse(HttpStatusCode.BadRequest, message);
            }

            resp.Content = new StringContent(message, System.Text.Encoding.Unicode);

            return(resp);
        }
Example #4
0
        public void TestTieGame()
        {
            PokerGame pokergame = new PokerGame();

            pokergame.AddPlayer(new Player("p1", "2H", "4h", "5s", "8d", "kc"));
            pokergame.AddPlayer(new Player("p2", "4c", "jc", "8d", "ks", "5s"));

            string winner = pokergame.GetWinner();

            Assert.AreEqual(winner, "Tie");
        }
Example #5
0
        public void TestFOAKBeatsFullHouse()
        {
            PokerGame pokergame = new PokerGame();

            pokergame.AddPlayer(new Player("p1", "ah", "as", "ac", "2h", "2d"));
            pokergame.AddPlayer(new Player("p2", "4c", "4d", "4s", "7s", "4h"));

            string winner = pokergame.GetWinner();

            Assert.AreEqual(winner, "p2");
        }
Example #6
0
        public void TestFlushBeatsStraight()
        {
            PokerGame pokergame = new PokerGame();

            pokergame.AddPlayer(new Player("p1", "2H", "4h", "5h", "8h", "kh"));
            pokergame.AddPlayer(new Player("p2", "4c", "6h", "8d", "7s", "5s"));

            string winner = pokergame.GetWinner();

            Assert.AreEqual(winner, "p1");
        }
Example #7
0
        public void CheckGame3()
        {
            List <Player> Players = new List <Player>();


            PokerGame FirstGame = new PokerGame();//Create game object

            Players.Add(new Player("Joe", new List <Card>()
            {
                new Card {
                    Rank = Rank.Three, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Four, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Nine, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Nine, Suit = Suit.Diamond
                },
                new Card {
                    Rank = Rank.Queen, Suit = Suit.Diamond
                }
            }));                                                                                                     //create poker player
            Players.Add(new Player("Jen", new List <Card>()
            {
                new Card {
                    Rank = Rank.Five, Suit = Suit.Clubs
                },
                new Card {
                    Rank = Rank.Queen, Suit = Suit.Clubs
                },
                new Card {
                    Rank = Rank.Queen, Suit = Suit.Clubs
                },
                new Card {
                    Rank = Rank.Queen, Suit = Suit.Clubs
                },
                new Card {
                    Rank = Rank.Queen, Suit = Suit.Clubs
                }
            }));
            Players.Add(new Player("Bob", new List <Card>()
            {
                new Card {
                    Rank = Rank.Two, Suit = Suit.Heart
                },
                new Card {
                    Rank = Rank.Two, Suit = Suit.Clubs
                },
                new Card {
                    Rank = Rank.Five, Suit = Suit.Spades
                },
                new Card {
                    Rank = Rank.Ten, Suit = Suit.Clubs
                },
                new Card {
                    Rank = Rank.Ace, Suit = Suit.Heart
                }
            }));


            List <Player> winners = FirstGame.GetWinner(Players);

            Assert.AreEqual("Jen", winners.First().PName);
        }