public void TestSelectThrowsCrateException() { try { using (var conn = new CrateConnection()) { conn.Open(); using (var cmd = conn.CreateCommand()) { cmd.CommandText = "invalid sql statement"; using (var reader = cmd.ExecuteReader()) reader.Read(); } } } catch (CrateException) { // ignore } catch (Exception) { Assert.Fail(); } }
public void TestSelectWithParameter() { using (var conn = new CrateConnection()) { conn.Open(); using (var cmd = conn.CreateCommand()) { cmd.CommandText = "select name from sys.cluster where name = @name"; var param = cmd.CreateParameter(); param.ParameterName = "@name"; param.Value = "crate"; cmd.Parameters.Add(param); using (var reader = cmd.ExecuteReader()) { reader.Read(); var clusterName = reader.GetString(0); Assert.AreEqual("crate", clusterName); } } } }
public void TestWithDapper() { using (var conn = new CrateConnection()) { conn.Open(); var clusterName = conn.Query <string>("select name from sys.cluster").First(); Assert.AreEqual(clusterName, "crate"); clusterName = conn.Query <string>( "select name from sys.cluster where name = ?", new { Name = "crate" }).First(); Assert.AreEqual(clusterName, "crate"); conn.Execute( "create table foo (id int primary key, name string) with (number_of_replicas='0-1')"); Assert.AreEqual(1, conn.Execute("insert into foo (id, name) values (?, ?)", new { id = 1, name = "foo" })); var rowsAffected = conn.Execute( "insert into foo (id, name) values (?, ?), (?, ?)", new { id1 = 2, name1 = "zwei", id2 = 3, name2 = "drei" } ); Assert.AreEqual(2, rowsAffected); conn.Execute("drop table foo"); } }
public void TestSelectServerRoundrobin() { using (var conn = new CrateConnection("Server=localhost,localhost;Port=9999,4200")) { conn.Open(); for (var i = 0; i < 10; i++) { var clusterName = conn.Query <string>("select name from sys.cluster").First(); Assert.AreEqual("crate", clusterName); } } }
public void TestSelect() { using (var conn = new CrateConnection()) { conn.Open(); using (var cmd = conn.CreateCommand()) { cmd.CommandText = "select name from sys.cluster"; using (var reader = cmd.ExecuteReader()) { reader.Read(); var clusterName = reader.GetString(0); Assert.AreEqual("crate", clusterName); } } } }
public async Task <string> QueryClusterName() { var stmt = @"select name from sys.cluster"; using (var conn = new CrateConnection("Server=vsdocker01;Port=4200")) { await conn.OpenAsync(); string result; using (var command = conn.CreateCommand()) { command.CommandText = stmt; result = (string)await command.ExecuteScalarAsync(); } conn.Close(); return(result); } }
public void TestSchemaTable() { using (var conn = new CrateConnection()) { conn.Open(); var query = @"SELECT NULL AS ""undefined"" , TRUE AS ""boolean"" , CAST(0 AS BYTE) AS ""byte"" , CAST(0 AS SHORT) AS ""short"" , CAST(0 AS INTEGER) AS ""integer"" , CAST(0 AS LONG) AS ""long"" , CAST(0 AS FLOAT) AS ""float"" , CAST(0 AS DOUBLE) AS ""double"" , 'string' AS ""string"" , CAST('127.0.0.1' AS IP) AS ""ip"" , CURRENT_TIMESTAMP AS ""timestamp"" , [1, 2, 3] AS ""array"" , CAST('POINT (5 5)' AS geo_point) AS ""geo_point"" , CAST('POLYGON ((5 5, 10 5, 10 10, 5 10, 5 5))' AS geo_shape) AS ""geo_shape"" , {} AS ""object"" FROM sys.cluster" ; using (var cmd = conn.CreateCommand()) { cmd.CommandText = query; var reader = cmd.ExecuteReader(); var table = reader.GetSchemaTable(); Assert.IsNotNull(table); Assert.IsTrue(table.Rows.Count == 15); } } }