Deveel.Data.LoopTests.SimpleForLoop C# (CSharp) Method

SimpleForLoop() private method

private SimpleForLoop ( ) : void
return void
        public void SimpleForLoop()
        {
            var loop = new ForLoopStatement("i", SqlExpression.Constant(0), SqlExpression.Constant(200));
            loop.Statements.Add(new DeclareVariableStatement("a", PrimitiveTypes.String()));
            loop.Statements.Add(new AssignVariableStatement(SqlExpression.VariableReference("a"),
                SqlExpression.FunctionCall("cast",
                    new SqlExpression[] {SqlExpression.VariableReference("i"), SqlExpression.Constant("varchar")})));
            loop.Statements.Add(
                new ConditionStatement(SqlExpression.Equal(SqlExpression.VariableReference("i"), SqlExpression.Constant(200)),
                    new SqlStatement[] {new ReturnStatement(SqlExpression.VariableReference("a"))}));

             var result = AdminQuery.ExecuteStatement(loop);

            Assert.IsNotNull(result);
            Assert.AreEqual(StatementResultType.Result, result.Type);

            var value = result.Result.GetValue(0, 0);
            Assert.IsNotNull(value);
            Assert.IsFalse(Field.IsNullField(value));
            // TODO: the context should return the value of RETURN statement
        }