/// <summary> /// Creates a new Deck with 52 Cards. The first card /// will be the top of the Deck. /// </summary> public Deck() { int i = 0; for (Suit s = Suit.CLUB; s <= Suit.SPADE; s++) { for (Rank r = Rank.ACE; r <= Rank.KING; r++) { Card c = new Card(r, s); _cards[i] = c; i++; } } _topCard = 0; }
public void TestCardTurnOver() { Card c = new Card(Rank.ACE, Suit.DIAMOND); Assert.AreEqual ("**", c.ToString ()); c.TurnOver(); Assert.AreEqual ("AD", c.ToString ()); c.TurnOver(); Assert.AreEqual ("**", c.ToString ()); c = new Card(Rank.FOUR, Suit.HEART); Assert.AreEqual ("**", c.ToString ()); c.TurnOver(); Assert.AreEqual ("4H", c.ToString ()); }
public void TestCardToString() { Card c = new Card (Rank.ACE, Suit.SPADE); c.TurnOver(); Assert.AreEqual ("AS", c.ToString ()); c = new Card (Rank.TEN, Suit.CLUB); c.TurnOver(); Assert.AreEqual ("TC", c.ToString ()); c = new Card (Rank.THREE, Suit.DIAMOND); c.TurnOver(); Assert.AreEqual ("3D", c.ToString ()); c = new Card (Rank.JACK, Suit.HEART); c.TurnOver(); Assert.AreEqual ("JH", c.ToString ()); }
public void TestCardIndex() { Card c = new Card (Rank.ACE, Suit.SPADE); Assert.AreEqual (52, c.CardIndex); c.TurnOver(); Assert.AreEqual (0, c.CardIndex); c = new Card (Rank.KING, Suit.CLUB); Assert.AreEqual (52, c.CardIndex); c.TurnOver(); Assert.AreEqual (51, c.CardIndex); }
public void TestCardCreation() { Card c = new Card (Rank.KING, Suit.HEART); c.TurnOver(); Assert.AreEqual (Rank.KING, c.Rank); Assert.AreEqual (Suit.HEART, c.Suit); c = new Card (Rank.TWO, Suit.DIAMOND); c.TurnOver(); Assert.AreEqual (Rank.TWO, c.Rank); Assert.AreEqual (Suit.DIAMOND, c.Suit); }
/// <summary> /// Create and return a new card with randomised Rank and Suit. /// </summary> public static Card RandomCard() { Rank randomRank = (Rank)( SwinGame.Rnd ((int)Rank.KING) + 1); Suit randomSuit = (Suit)( SwinGame.Rnd ((int)Suit.SPADE + 1)); Card randomCard = new Card (randomRank, randomSuit); return randomCard; }