2 using System.Collections.Generic;
13 [Trait(
"Category",
"Integration")]
21 var typeDef =
@"{""type"":""record"",""name"":""test"",""fields"":[{""name"":""id"",""type"":""int""}]}";
22 var typeResp = ctx.Kinetica.createType(typeDef,
"test_type",
new Dictionary<
string, IList<string>>(),
new Dictionary<string, string>());
24 var tableName = ctx.QualifiedTable(
"test_table");
25 var resp = ctx.Kinetica.createTable(tableName, typeResp.type_id,
new Dictionary<string, string>());
27 Assert.Equal(tableName, resp.table_name);
28 Assert.Equal(typeResp.type_id, resp.type_id);
36 var typeDef =
@"{""type"":""record"",""name"":""opts"",""fields"":[{""name"":""id"",""type"":""int""}]}";
37 var typeResp = ctx.Kinetica.createType(typeDef,
"opts_type",
new Dictionary<
string, IList<string>>(),
new Dictionary<string, string>());
39 var tableName = ctx.QualifiedTable(
"opts_table");
40 var options =
new Dictionary<string, string>
42 {
"is_replicated",
"true" }
45 var resp = ctx.Kinetica.createTable(tableName, typeResp.type_id, options);
47 Assert.Equal(tableName, resp.table_name);
55 var typeDef =
@"{""type"":""record"",""name"":""exists"",""fields"":[{""name"":""id"",""type"":""int""}]}";
56 var typeResp = ctx.Kinetica.createType(typeDef,
"exists_type",
new Dictionary<
string, IList<string>>(),
new Dictionary<string, string>());
58 var tableName = ctx.QualifiedTable(
"exists_table");
59 ctx.Kinetica.createTable(tableName, typeResp.type_id,
new Dictionary<string, string>());
61 var hasResp = ctx.Kinetica.hasTable(tableName,
new Dictionary<string, string>());
63 Assert.True(hasResp.table_exists);
64 Assert.Equal(tableName, hasResp.table_name);
72 var tableName = ctx.QualifiedTable(
"nonexistent");
73 var hasResp = ctx.Kinetica.hasTable(tableName,
new Dictionary<string, string>());
75 Assert.False(hasResp.table_exists);
84 var tableName = ctx.QualifiedTable(
"clear_table");
85 ctx.Kinetica.executeSql($
"CREATE TABLE {tableName} (id INT NOT NULL, PRIMARY KEY (id))");
88 ctx.Kinetica.executeSql($
"INSERT INTO {tableName} (id) VALUES (1)");
89 ctx.Kinetica.executeSql($
"INSERT INTO {tableName} (id) VALUES (2)");
90 ctx.Kinetica.executeSql($
"INSERT INTO {tableName} (id) VALUES (3)");
93 var getBefore = ctx.Kinetica.executeSql($
"SELECT * FROM {tableName}", 0, -9999);
94 Assert.Equal(3, getBefore.total_number_of_records);
97 var clearResp = ctx.Kinetica.clearTable(tableName,
null,
new Dictionary<string, string>());
98 Assert.Equal(tableName, clearResp.table_name);
101 var hasAfter = ctx.Kinetica.hasTable(tableName,
new Dictionary<string, string>());
102 Assert.False(hasAfter.table_exists);
110 var typeDef =
@"{""type"":""record"",""name"":""shared"",""fields"":[{""name"":""id"",""type"":""int""}]}";
111 var typeResp = ctx.Kinetica.createType(typeDef,
"shared_type",
new Dictionary<
string, IList<string>>(),
new Dictionary<string, string>());
114 var table1 = ctx.QualifiedTable(
"table1");
115 var table2 = ctx.QualifiedTable(
"table2");
116 var table3 = ctx.QualifiedTable(
"table3");
118 ctx.Kinetica.createTable(table1, typeResp.type_id,
new Dictionary<string, string>());
119 ctx.Kinetica.createTable(table2, typeResp.type_id,
new Dictionary<string, string>());
120 ctx.Kinetica.createTable(table3, typeResp.type_id,
new Dictionary<string, string>());
123 foreach (var table
in new[] { table1, table2, table3 })
125 var hasResp = ctx.Kinetica.hasTable(table,
new Dictionary<string, string>());
126 Assert.True(hasResp.table_exists);
Tests for table management endpoints.
void TestCreateTableWithOptions()
void TestCreateTableBasic()
void TestHasTableExists()
Test context that manages schema and cleanup for integration tests.
void TestCreateMultipleTablesSameType()
void TestHasTableNotExists()