コード例 #1
0
        public void CalculateTest()
        {
            //Arrange
            var              token           = Token.CreateToken("1");
            Stack <double>   stack           = new Stack <double>();
            ITokenCalculator tokenCalculator = token as ITokenCalculator;

            //Act
            tokenCalculator.Calculate(stack);
            //Assert
            Assert.AreEqual(token.Value, stack.Pop().ToString());
        }
コード例 #2
0
        public void Calculate_DivideByZeroTest()
        {
            //Arrange
            var            token = Token.CreateToken("/");
            Stack <double> stack = new Stack <double>();

            stack.Push(2);
            stack.Push(0);
            ITokenCalculator tokenCalculator = token as ITokenCalculator;

            //Act
            //Assert
            Assert.ThrowsException <DivideByZeroException>(() => tokenCalculator.Calculate(stack));
        }
コード例 #3
0
        public void CalculateTest(double operand1, string @operator, double operand2, double result)
        {
            //Arrange
            var            token = Token.CreateToken(@operator);
            Stack <double> stack = new Stack <double>();

            stack.Push(operand1);
            stack.Push(operand2);
            ITokenCalculator tokenCalculator = token as ITokenCalculator;

            //Act
            tokenCalculator.Calculate(stack);
            //Assert
            Assert.AreEqual(result, stack.Pop());
        }