Esempio n. 1
0
        public void AstShiftTest2() {
            AstRoot ast = RParser.Parse(new TextStream(" a()"));
            var scope = ast.Children[0].Should().BeAssignableTo<IScope>().Which;
            scope.Children[0].Start.Should().Be(1);

            var expression = scope.Children[0].Should().BeAssignableTo<IStatement>()
                .Which.Children[0].Should().BeAssignableTo<IExpression>()
                .Which;

            expression.Children[0].Start.Should().Be(1);
            var func = expression.Children[0].Should().BeAssignableTo<IFunction>()
                .Which;

            func.OpenBrace.Start.Should().Be(2);

            ast.ShiftStartingFrom(2, 1);

            func.OpenBrace.Start.Should().Be(3);
        }