Пример #1
0
        public void TCalculateSimpleTest()
        {
            var tree   = new BinaryExpressionTreeClass("2 * 2 + 2");
            var result = tree.Calculate();

            result.Should().Be(6);
            var tree2   = new BinaryExpressionTreeClass("2.5 * 9 + 8 ^ ( 7 - 6 )");
            var result2 = tree2.Calculate();

            result2.Should().Be(30.5);
        }
Пример #2
0
        public void TraverseSimpleTest()
        {
            var tree            = new BinaryExpressionTreeClass("2 * 2 + 2");
            var inOrderTraverse = tree.InOrderTraverse();

            inOrderTraverse.Should().Be("2 * 2 + 2");
            var postOrderTraverse = tree.PostOrderTraverse();

            postOrderTraverse.Should().Be("22*2+");
            var tree2            = new BinaryExpressionTreeClass("2.5 + 100 + (2*2)");
            var inOrderTraverse2 = tree2.InOrderTraverse();

            inOrderTraverse2.Should().Be("2.5 + 100 + 2 * 2");
            var postOrderTraverse2 = tree2.PostOrderTraverse();

            postOrderTraverse2.Should().Be("2.5100+22*+");
        }