Exemple #1
0
        public void DeckImplementationTest()
        {
            CardAndDeck.Deck d = new CardAndDeck.Deck();
            Assert.AreNotEqual(null, d);
            Assert.AreEqual(52, d.GetSize());

            d.Shuffle();
            int i = 0;

            for (; i < 52; i++)
            {
                if (!d.GetNormalList()[i].Equals(d.GetShuffledList()[i]))
                {
                    break;
                }
            }
            Assert.AreNotEqual(i, 52);

            List <Card> hand = d.Deal(5);

            Assert.AreEqual(47, d.GetSize());
            Assert.AreEqual(hand.Count, 5);

            i = 0;

            for (; i < hand.Count; i++)
            {
                Assert.AreNotEqual(true, d.CheckCard(hand[i]));
            }

            try
            {
                d.Deal(48);
                Assert.Fail();
            }
            catch (Exception)
            {
                //Could not deal that many cards, as we expect
                Assert.AreEqual(47, d.GetSize());
            }
        }