示例#1
0
        public void TestEmptyColorBonus()
        {
            var s = new Logic.Stats();

            Assert.AreEqual(0, s.TotalNumEmptyColorBonuses);
            s.AddEmptyColorBonus();
            Assert.AreEqual(1, s.TotalNumEmptyColorBonuses);
        }
示例#2
0
        public void TestSingleColorBonus()
        {
            var s = new Logic.Stats();

            Assert.AreEqual(0, s.TotalNumSingleColorBonuses);
            s.AddSingleColorBonus();
            Assert.AreEqual(1, s.TotalNumSingleColorBonuses);
        }
示例#3
0
        public void TestEmptyColorBonusEventTriggered()
        {
            var  s         = new Logic.Stats();
            bool triggered = false;

            s.OnEmptyBonus += () => triggered = true;
            s.AddEmptyColorBonus();
            Assert.IsTrue(triggered);
        }
示例#4
0
        public void TestEquality()
        {
            var s1 = new Logic.Stats();
            var s2 = new Logic.Stats();

            Assert.AreEqual(s1, s2);
            Assert.AreEqual(s1, s1);
            Assert.AreNotEqual(null, s2);
            Assert.AreNotEqual(1, s2);
        }
示例#5
0
        public void TestSquareBonus()
        {
            var s = new Logic.Stats
            {
                FrameSquaresRemoved = Logic.Stats.NumSquaresForBonus + 1
            };

            s.IncrementFrame();
            Assert.AreEqual(1, s.NumPrevBonuses);
            Assert.AreEqual(160, s.TotalSquaresBonuses);
        }
示例#6
0
        public void TestHasCode()
        {
            var s1 = new Logic.Stats
            {
                TotalSquaresBonuses = 100
            };
            var s2 = new Logic.Stats
            {
                TotalSquaresBonuses = 200
            };

            Assert.AreNotEqual(s1.GetHashCode(), s2.GetHashCode());
        }
示例#7
0
        public void TestAddCompletedSquare()
        {
            var s = new Logic.Stats();

            Assert.AreEqual(0, s.FrameSquaresRemoved);
            Assert.AreEqual(0, s.TotalSquaresRemoved);
            s.AddCompletedSquare();
            Assert.AreEqual(1, s.FrameSquaresRemoved);
            Assert.AreEqual(1, s.TotalSquaresRemoved);
            s.IncrementFrame();
            Assert.AreEqual(0, s.FrameSquaresRemoved);
            Assert.AreEqual(1, s.TotalSquaresRemoved);
        }
示例#8
0
        public void TestDeepClone()
        {
            var s1 = new Logic.Stats
            {
                Frame = 1,
                FrameSquaresRemoved        = 2,
                NumPrevBonuses             = 3,
                TotalSquaresRemoved        = 4,
                TotalSquaresBonuses        = 5,
                TotalNumSingleColorBonuses = 6,
                TotalNumEmptyColorBonuses  = 7
            };

            var s2 = s1.DeepClone();

            Assert.AreNotSame(s1, s2);
            Assert.AreEqual(s1, s2);
        }