예제 #1
0
        //Executes a unit test of class Deck.
        static void testDeck()
        {
            //Creates a deck and prints out the first 20 cards dealt.
            Console.WriteLine("\nTest Deck (prints first 20 cards):");
            Deck deck = new Deck();
            for (int i = 0; i < 20; i++)
            {
                Card newcard = deck.deal();
                Console.WriteLine(newcard.ToString());
            }
            Console.WriteLine();

            //Test the acceptDiscards method, and print out the discard pile.
            Hand newHand = new Hand();
            for (int i = 0; i < 3; i++)
            {
                newHand.add(deck.deal());
            }
            deck.acceptDiscards(newHand.surrenderCards());
            Console.WriteLine("Test collecting cards from players (prints 0 if the hand is empty and received)");
            if (newHand.ToString().CompareTo("") == 0)
            {
                Console.WriteLine("0");
            }
            else
            {
                Console.WriteLine("ERROR.");
            }
            Console.WriteLine("(The above cards were sucsessfully dealt, and recieved by the dealer, and added to the discard pile.)");
        }
예제 #2
0
        /// <summary>
        /// Runs unit tests for the Android class.
        /// </summary>
        static void TestAndroid()
        {
            Hand h = new Hand();
            Console.WriteLine("Tests for the Android class:\n");
            Android c3po = new Android("c3po", h);
            //Console.WriteLine("Output Window with 'c3po' as banner should have popped up."); //Not applicable in Blackjack3
            Deck d = new Deck();

            //Test getCard() and showHand().
            c3po.getsCard(d.deal());
            c3po.getsCard(d.deal());
            Console.WriteLine("Current Hand after having been dealt two cards: \n");
            h = c3po.showHand();
            Console.WriteLine(h.ToString());

            //Tests outcomeOfRound()
            Console.WriteLine("Test a win by pressing enter.");
            Console.ReadLine();
            c3po.outcomeOfRound(Outcome.Win);
            Console.WriteLine("Sucsess.");

            //Tests wantsCard()
            Console.WriteLine("Test wantsCard() by pressing enter.");
            Console.ReadLine();
            c3po.wantsCard();
            Console.WriteLine("Success.\n");
        }
예제 #3
0
        //Executes a unit test of class Hand.
        static void testHand()
        {
            Console.WriteLine("\nTest Hand:");
            Deck deck = new Deck();
            Hand currentHand = new Hand();

            for (int i = 0; i < 2; i++)
            {
                currentHand.add(deck.deal());
            }
            Console.WriteLine(currentHand.ToString());

            //Test the hand score.
            Console.WriteLine("\nTest Hand Score:");
            Console.WriteLine(currentHand.BJscore());

            //Test for giving cards back to dealer.
            Console.WriteLine("\nTest Giving cards to dealer (end of round action): ");
            foreach (Card c in currentHand.surrenderCards())
            {
                Console.WriteLine(c.ToString());
            }
            Console.WriteLine("(The above cards have been sucsessfully returned to the dealer.)");
        }
예제 #4
0
        //Excecutes a unit test of class Hand.
        static void testHand()
        {
            Console.WriteLine("\nTest Hand:");
              Deck deck = new Deck();
              Hand currentHand = new Hand();

              for (int i = 0; i < 2; i++)
              {
              currentHand.add(deck.deal());
              }
              Console.WriteLine(currentHand.ToString());

              //Test the hand score.

              Console.WriteLine("\nTest Hand Score:");
              Console.WriteLine(currentHand.BJscore());

              //Test for the first card Dealt.
              Console.WriteLine("\nTest first card dealt:");
              Console.WriteLine(currentHand.firstCardDealt().ToString());

              //Test for giving cards back to dealer.
              Console.WriteLine("\nTest Giving cards to dealer (end of round action): ");
              foreach (Card c in currentHand.giveCardsBackToDealer())
              {
              Console.WriteLine(c.ToString());
              }
              Console.WriteLine("(The above cards have been sucsessfully returned to the dealer.)");

              //NO TEST FOR THE REMOVE METHOD, AS IT IS NOT USED IN MY PROGRAM
        }
예제 #5
0
        /// <summary>
        /// Runs unit tests for the Human class.
        /// </summary>
        static void TestHuman()
        {
            Hand h = new Hand();
            Console.WriteLine("Tests for the Human class:\n");
            Human Christian = new Human("Christian", h);
            //Console.WriteLine("Output Window with 'Christian' as banner should have popped up."); //Not Applicable in Blackjack3
            Deck d = new Deck();

            //Test getCard() and showHand().
            Christian.getsCard(d.deal());
            Christian.getsCard(d.deal());
            Console.WriteLine("Current Hand after having been dealt two cards: \n");
            h = Christian.showHand();
            Console.WriteLine(h.ToString());

            //Tests outcomeOfRound()
            Console.WriteLine("Test a win by pressing enter.");
            Console.ReadLine();
            Christian.outcomeOfRound(Outcome.Win);
            Console.WriteLine("Sucsess.");

            //Tests wantsCard() NOT USED IN Blackjack3
            Console.WriteLine("Test wantsCard() by pressing enter.");
            Console.ReadLine();
            Christian.wantsCard();
            Console.WriteLine("Success.\n");
        }