コード例 #1
0
        public void TestPopOptions()
        {
            IFancyCalculator x = new FancyCalculator();


            for (int i = 1; i <= 3; i++)
            {
                x.Push(i);
            }
            Assert.IsTrue(x.Size() == 3);
            Assert.IsTrue(x.Top() == 3);

            x.Pop();
            Assert.IsTrue(x.Top() == 2);

            for (int i = 1; i <= 3; i++)
            {
                x.Push(i + 3);
            }
            Assert.IsTrue(x.Top() == 6);
            Assert.IsTrue(x.Size() == 5);

            x.Pop();
            Assert.IsTrue(x.Size() == 4);

            x.Pop();
            Assert.IsTrue(x.Size() == 3);
            Assert.IsTrue(x.Top() == 4);
        }
コード例 #2
0
        public void TestTop()
        {
            IFancyCalculator x = new FancyCalculator();

            x.Push(45);
            Assert.AreEqual(x.Top(), 45);

            x.Push(25);
            Assert.AreNotEqual(x.Top(), 45);
        }
コード例 #3
0
        public void TestAddAll()
        {
            IFancyCalculator x = new FancyCalculator();

            x.Push(10);
            x.Push(10);
            x.Push(10);
            Assert.IsTrue(x.Top() == 10);
            x.AddAll();
            Assert.IsTrue(x.Top() == 30);
        }
コード例 #4
0
        public void TestDivision()
        {
            IFancyCalculator x = new FancyCalculator();

            x.Push(2);
            x.Push(4);
            x.Push(2);
            x.Divide();
            Assert.IsTrue(x.Top() == 0.5);
            x.Divide();
            Assert.IsTrue(x.Top() == 0.125);
        }
コード例 #5
0
        public void TestMultiplyAll()
        {
            IFancyCalculator x = new FancyCalculator();

            x.Push(10);
            x.Push(10);
            x.Push(10);
            x.Push(10);
            Assert.IsTrue(x.Top() == 10);
            x.MultiplyAll();
            Assert.IsTrue(x.Top() == 10000);
        }
コード例 #6
0
        public void TestPushOptions()
        {
            IFancyCalculator x = new FancyCalculator();

            x.Push(45);
            x.Push(35);
            x.Push(25);
            x.Push(15);
            Assert.IsTrue(x.Top() == 15);
            x.Pop();
            Assert.IsTrue(x.Top() == 25);
            x.Push(150);
            Assert.IsTrue(x.Top() == 150);
        }
コード例 #7
0
        public void TestMultiply()
        {
            IFancyCalculator x = new FancyCalculator();
            var calc           = x.GetStack();

            Assert.IsTrue(x.Size() == 0);
            x.Push(10);
            x.Push(20);
            x.Push(30);
            x.Push(40);
            x.Multiply();
            Assert.IsTrue(x.Top() == 1200);
            x.Multiply();
            Assert.IsTrue(x.Top() == 24000);
        }
コード例 #8
0
        public void TestSubtract()
        {
            IFancyCalculator x = new FancyCalculator();

            Assert.IsTrue(x.Size() == 0);
            x.Push(10);
            x.Push(20);
            x.Push(30);
            x.Push(40);
            x.Subtract();
            Assert.IsTrue(x.Top() == 10);
        }
コード例 #9
0
        public void TestAdd()
        {
            IFancyCalculator x = new FancyCalculator();
            var stack          = x.GetStack();

            Assert.IsTrue(stack.Count == 0);
            x.Push(10);
            x.Push(20);
            x.Push(30);
            x.Push(40);
            x.Add();
            Assert.IsTrue(x.Top() == 70);
        }
コード例 #10
0
        public void TestTopFailureToRespond()
        {
            IFancyCalculator x = new FancyCalculator();

            Assert.IsNull(x.Top());
        }