protected override void OnAfterSetup(string testName)
{
var tableName = ObjectName.Parse("APP.test_table");
AdminQuery.Access().CreateTable(tableBuilder => tableBuilder
.Named(tableName)
.WithColumn("a", PrimitiveTypes.Integer())
.WithColumn("b", PrimitiveTypes.String()));
var table = AdminQuery.Access().GetMutableTable(tableName);
for (int i = 0; i < 10; i++) {
var row = table.NewRow();
row.SetValue(0, i);
row.SetValue(1, String.Format("ID: {0}", i));
table.AddRow(row);
}
var query = (SqlQueryExpression)SqlExpression.Parse("SELECT * FROM APP.test_table");
var cursorInfo = new CursorInfo("c1", query);
cursorInfo.Flags = CursorFlags.Scroll;
AdminQuery.Access().CreateObject(cursorInfo);
var c1 = (Cursor)AdminQuery.Access().GetObject(DbObjectType.Cursor, new ObjectName("c1"));
c1.Open(AdminQuery);
if (testName.StartsWith("FetchInto")) {
var query2 = (SqlQueryExpression)SqlExpression.Parse("SELECT a FROM APP.test_table");
var cursorInfo2 = new CursorInfo("c2", query2);
cursorInfo2.Flags = CursorFlags.Scroll;
AdminQuery.Access().CreateObject(cursorInfo2);
var c2 = (Cursor)AdminQuery.Access().GetObject(DbObjectType.Cursor, new ObjectName("c2"));
c2.Open(AdminQuery);
AdminQuery.Access().CreateObject(new VariableInfo("var1", PrimitiveTypes.BigInt(), false));
AdminQuery.Access().CreateObject(new VariableInfo("var2", PrimitiveTypes.String(), false));
}
}