public void CardCollection_AdditionTest()
        {
            CardCollection left = new CardCollection();

            ColorettoCard card1 = new ColorettoCard(ColorettoCardColors.Blue);
            ColorettoCard card2 = new ColorettoCard(ColorettoCardColors.Brown);
            ColorettoCard card3 = new ColorettoCard(ColorettoCardColors.Gray);

            left = left.Add(card1);
            left = left.Add(card2);
            left = left.Add(card3);

            CardCollection right = new CardCollection();

            card1 = new ColorettoCard(ColorettoCardColors.Blue);
            card2 = new ColorettoCard(ColorettoCardColors.Brown);
            card3 = new ColorettoCard(ColorettoCardColors.Gray);

            right = right.Add(card1);
            right = right.Add(card2);
            right = right.Add(card3);

            CardCollection added = left + right;
            Assert.AreEqual<int>(6, added.Count);
            Assert.AreEqual<int>(9, added.Score);
        }
        public void CardCollection_AddTest()
        {
            CardCollection target = new CardCollection();

            ColorettoCard card1 = new ColorettoCard(ColorettoCardColors.Blue);
            ColorettoCard card2 = new ColorettoCard(ColorettoCardColors.Brown);
            ColorettoCard card3 = new ColorettoCard(ColorettoCardColors.Gray);

            target = target.Add(card1);
            target = target.Add(card2);
            target = target.Add(card3);

            Assert.AreEqual<ColorettoCard>(card1, target[0]);
            Assert.AreEqual<ColorettoCard>(card2, target[1]);
            Assert.AreEqual<ColorettoCard>(card3, target[2]);
        }
        public void CardCollection_BasicScoreCheck()
        {
            CardCollection target = new CardCollection();

            ColorettoCard card1 = new ColorettoCard(ColorettoCardColors.Blue);
            ColorettoCard card2 = new ColorettoCard(ColorettoCardColors.Brown);
            ColorettoCard card3 = new ColorettoCard(ColorettoCardColors.Gray);

            target = target.Add(card1);
            Assert.AreEqual<int>(1, target.Score);

            target = target.Add(card2);
            Assert.AreEqual<int>(2, target.Score);

            target = target.Add(card3);
            Assert.AreEqual<int>(3, target.Score);

            target = target.Add((ColorettoCard)card1.Clone());
            Assert.AreEqual<int>(5, target.Score);

            target = target.Add((ColorettoCard)card1.Clone());
            Assert.AreEqual<int>(8, target.Score);

            target = target.Add((ColorettoCard)card2.Clone());
            Assert.AreEqual<int>(10, target.Score);
        }
        public void CardCollection_WildCardScores()
        {
            CardCollection target = new CardCollection();

            ColorettoCard card1 = new ColorettoCard(ColorettoCardColors.Blue);
            ColorettoCard card2 = new ColorettoCard(ColorettoCardColors.Brown);
            ColorettoCard card3 = new ColorettoCard(ColorettoCardColors.Gray);

            ColorettoCard wild = new ColorettoCard( ColorettoCardTypes.Wild);

            target = target.Add(card1);
            target = target.Add((ColorettoCard)card1.Clone());
            target = target.Add((ColorettoCard)card1.Clone());
            target = target.Add(wild);

            target = target.Add(card2);
            target = target.Add(card3);

            Assert.AreEqual<int>(12, target.Score);
        }
        public void CardCollection_UnEqualityTest()
        {
            CardCollection left = new CardCollection();

            ColorettoCard card1 = new ColorettoCard(ColorettoCardColors.Blue);
            ColorettoCard card2 = new ColorettoCard(ColorettoCardColors.Brown);
            ColorettoCard card3 = new ColorettoCard(ColorettoCardColors.Gray);

            left = left.Add(card1);
            left = left.Add(card2);
            left = left.Add(card3);

            CardCollection right = new CardCollection();

            card1 = new ColorettoCard(ColorettoCardColors.Blue);
            card2 = new ColorettoCard(ColorettoCardColors.Blue);
            card3 = new ColorettoCard(ColorettoCardColors.Gray);

            right = right.Add(card1);
            right = right.Add(card2);
            right = right.Add(card3);

            bool areEqual = left == right;
            Assert.IsFalse(areEqual);
        }
        public void CardCollection_TooManyPiles()
        {
            CardCollection target = new CardCollection();

            ColorettoCard card1 = new ColorettoCard(ColorettoCardColors.Blue);
            ColorettoCard card2 = new ColorettoCard(ColorettoCardColors.Brown);
            ColorettoCard card3 = new ColorettoCard(ColorettoCardColors.Gray);
            ColorettoCard card4 = new ColorettoCard(ColorettoCardColors.Green);
            ColorettoCard card5 = new ColorettoCard(ColorettoCardColors.Orange);

            ColorettoCard wild = new ColorettoCard(ColorettoCardTypes.Wild);

            target = target.Add(card1);
            target = target.Add((ColorettoCard)card1.Clone());
            target = target.Add((ColorettoCard)card1.Clone());
            target = target.Add(wild);

            target = target.Add(card2);
            target = target.Add((ColorettoCard)card2.Clone());
            target = target.Add((ColorettoCard)card2.Clone());

            target = target.Add(card3);
            target = target.Add(card4);

            Assert.AreEqual<int>(16, target.Score);
        }
示例#7
0
 /// <summary>
 /// Clone this card.
 /// </summary>
 /// <returns></returns>
 public override Card Clone()
 {
     ColorettoCard clone = new ColorettoCard();
     base.InternalClone(clone);
     clone.Color = Color;
     clone.CardType = CardType;
     clone.FixedDeckPosition = FixedDeckPosition;
     return clone;
 }
 public void ColorettoCard_ConstructorTest3()
 {
     ColorettoCard target = new ColorettoCard(ColorettoCardTypes.Color);
     Assert.Fail("An invalid ColorettoCard was allowed to be created.");
 }