Example #1
0
        public void TestReturnNullEmptyCalculation()
        {
            //arrange
            var calc = new PolishCalculate(new Token[] { });

            //act
            float result = calc.Calculate();
        }
        public void CalaculateTest()
        {
            var str      = "5 * ((1 * 2) * 4) - 3";
            var expected = 14;
            var actual   = PolishCalculate.Calaculate(str);

            Assert.AreEqual(expected, actual);
        }
Example #3
0
        public void TestReturnNullNotEnoughNumerics()
        {
            //arrange
            var calc = new PolishCalculate(new Token[] { new NumericToken(1), new OperatorToken('+') });

            //act
            float result = calc.Calculate();

            //assert
            calc.Should().BeNull();
        }
Example #4
0
        public void TestDivByZeroCalculation()
        {
            //arrange
            bool flag = true;
            var  calc = new PolishCalculate(new Token[] { new NumericToken(14), new NumericToken(0), new OperatorToken('/') });

            //act
            float result = calc.Calculate();

            //assert
            flag.Should().Be(float.IsInfinity(result));
        }
Example #5
0
        public void TestDivCalculation()
        {
            //arrange
            float expected = 3;
            var   calc     = new PolishCalculate(new Token[] { new NumericToken(21), new NumericToken(7), new OperatorToken('/') });

            //act
            float result = calc.Calculate();

            //assert
            expected.Should().Be(result);
        }
Example #6
0
        public void TestComplexCalculation()
        {
            //arrange
            float expected = 0.5f;
            var   calc     = new PolishCalculate(new Token[] { new NumericToken(4), new NumericToken(3), new NumericToken(11), new NumericToken(22), new OperatorToken('/'), new OperatorToken('+'), new OperatorToken('-') });

            //act
            float result = calc.Calculate();

            //assert
            expected.Should().Be(result);
        }
Example #7
0
        public void TestNegativeParameterAndResoult()
        {
            //arrange
            float expected = -4;
            var   calc     = new PolishCalculate(new Token[] { new NumericToken(-14), new NumericToken(3.5f), new OperatorToken('/') });

            //act
            float result = calc.Calculate();

            //assert
            expected.Should().Be(result);
        }
Example #8
0
        public void TestReturnsToTopIfOnlyNumbers()
        {
            //arrange
            float expected = 1;
            var   calc     = new PolishCalculate(new Token[] { new NumericToken(6), new NumericToken(5), new NumericToken(1) });

            //act
            float result = calc.Calculate();

            //assert
            expected.Should().Be(result);
        }
Example #9
0
        public void TestFloatResoult()
        {
            //arrange
            float expected = 2.5f;
            var   calc     = new PolishCalculate(new Token[] { new NumericToken(10), new NumericToken(4), new OperatorToken('/') });

            //act
            float result = calc.Calculate();

            //assert
            expected.Should().Be(result);
        }