Skip to content

Commit 06def08

Browse files
committed
v1.2.1
1 parent a9bd00a commit 06def08

File tree

1 file changed

+53
-26
lines changed

1 file changed

+53
-26
lines changed

test/ChDbTest/ChDbTest.cs

Lines changed: 53 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -17,29 +17,35 @@ public void QueryVersionTest()
1717
}
1818

1919
[TestMethod]
20-
[Ignore("Bugfix is in v1.2.1")]
21-
public void QueryNullTest()
20+
public void QueryErrorTest()
2221
{
2322
Assert.ThrowsException<ArgumentNullException>(() => ChDb.Query(null!));
24-
//Assert.ThrowsException<ArgumentException>(() => ChDb.Query("wrong_query"));
25-
//Assert.ThrowsException<ArgumentException>(() => ChDb.Query("wrong_query", "PrettyCompact"));
26-
//Assert.ThrowsException<ArgumentException>(() => ChDb.Query("select version()", "wrong_format"));
2723
// TODO behavior changed in 1.2.1
28-
Assert.IsNull(ChDb.Query("wrong_query"));
29-
Assert.IsNull(ChDb.Query("wrong_query", "PrettyCompact"));
30-
Assert.IsNull(ChDb.Query("select version()", "wrong_format"));
24+
var r1 = ChDb.Query("wrong_query");
25+
Assert.IsNotNull(r1);
26+
Assert.IsNull(r1.Buf);
27+
Assert.IsNotNull(r1.ErrorMessage);
28+
29+
var r2 = ChDb.Query("wrong_query", "PrettyCompact");
30+
Assert.IsNotNull(r2);
31+
Assert.IsNull(r2.Buf);
32+
Assert.IsNotNull(r2.ErrorMessage);
33+
34+
var r3 = ChDb.Query("select version()", "wrong_format");
35+
Assert.IsNotNull(r3);
36+
Assert.IsNull(r3.Buf);
37+
StringAssert.Contains(r3.ErrorMessage, "Unknown output format");
3138
}
3239

3340
[TestMethod]
34-
[Ignore("Bugfix is in v1.2.1")]
3541
public void NoDataTest()
3642
{
3743
var result = ChDb.Query("create table x(a UInt8, b UInt8, c UInt8) Engine=Memory");
3844
Assert.IsNotNull(result);
3945
Assert.AreEqual(0UL, result.RowsRead);
4046
Assert.AreEqual(0UL, result.BytesRead);
41-
Assert.AreEqual("", result.Buf);
42-
Assert.IsNotNull(result.ErrorMessage);
47+
Assert.IsNull(result.Buf);
48+
Assert.IsNull(result.ErrorMessage);
4349
Assert.AreNotEqual(TimeSpan.Zero, result.Elapsed);
4450
Assert.IsTrue(0.1 > result.Elapsed.TotalSeconds);
4551
}
@@ -93,7 +99,6 @@ public void InMemoryTest()
9399
[TestMethod]
94100
public void S3ParquetTest()
95101
{
96-
//clickhouse local -q "DESCRIBE s3('https://datasets-documentation.s3.eu-west-3.amazonaws.com/house_parquet/house_0.parquet')"
97102
var result = ChDb.Query("DESCRIBE s3('https://datasets-documentation.s3.eu-west-3.amazonaws.com/house_parquet/house_0.parquet')");
98103
Assert.IsNotNull(result);
99104
Assert.IsNull(result.ErrorMessage);
@@ -115,7 +120,6 @@ FROM s3('https://datasets-documentation.s3.eu-west-3.amazonaws.com/house_parquet
115120
}
116121

117122
[TestMethod]
118-
[Ignore("TODO")]
119123
public void CsvTest() {
120124
var csv = """
121125
Name, Age, City
@@ -131,44 +135,67 @@ public void CsvTest() {
131135
{
132136
Format = "PrettyCompact",
133137
DataPath = dataPath,
134-
// UdfPath = "/tmp/chdb/udf",
135138
LogLevel = "trace",
136139
};
137140
var result = session.Execute("SELECT * FROM 'test.csv'", "CSVWithNamesAndTypes");
138141
Assert.IsNotNull(result);
139142
Assert.AreEqual(4UL, result.RowsRead);
140143
Assert.AreEqual(155UL, result.BytesRead);
141-
Assert.AreEqual("Name\tString\nAge\tUInt8\nCity\tString\nJohn\t25\tNew York\nAlice\t30\tLondon\nBob\t22\tTokyo\nEva\t28\tParis\n", result.Buf);
142-
StringAssert.StartsWith(result.Buf, """"Name","Age","City"""");
144+
StringAssert.StartsWith(result.Buf,
145+
"""
146+
"Name","Age","City"
147+
""");
143148
}
144149

145150
[TestMethod]
146-
[Ignore("Bugfix is in v1.2.1")]
147151
public void SessionTest()
148152
{
149153
using var session = new Session
150154
{
151155
Format = "PrettyCompact",
152156
LogLevel = "trace",
153157
};
154-
// var r1 = session.Execute("select 1");
155-
// Assert.IsNotNull(r1);
156-
// Assert.AreEqual("1\n", r1.Buf);
157-
158158
var nr = "xyz";
159+
160+
Assert.IsTrue(session.Execute($"SHOW DATABASES")?.Buf?.Contains("_local")); // there is _local database instead of default
161+
Assert.AreEqual("", session.Execute($"SHOW TABLES")?.Buf);
162+
StringAssert.Contains(session.Execute($"SELECT currentDatabase()")?.Buf, "_local");
163+
164+
var r1 = session.Execute($"DROP DATABASE IF EXISTS db_{nr}");
165+
Assert.IsNotNull(r1);
166+
Assert.IsNull(r1.Buf);
167+
Assert.IsNull(r1.ErrorMessage);
168+
159169
var r2 = session.Execute($"CREATE DATABASE IF NOT EXISTS db_{nr} ENGINE = Atomic");
160-
//Assert.IsNotNull(r2);
161-
var r3 = session.Execute($"CREATE TABLE IF NOT EXISTS db_{nr}.log_table_xxx (x String, y Int) ENGINE = Log;");
162-
// Assert.IsNotNull(r3);
170+
Assert.IsNotNull(r2);
171+
Assert.IsNull(r2.Buf);
172+
Assert.IsNull(r2.ErrorMessage);
173+
174+
var r3 = session.Execute($"CREATE TABLE IF NOT EXISTS db_{nr}.log_table_{nr} (x String, y Int) ENGINE = Log;");
175+
Assert.IsNotNull(r3);
176+
Assert.IsNull(r3.Buf);
177+
Assert.IsNull(r3.ErrorMessage);
178+
163179
var r4 = session.Execute($"INSERT INTO db_{nr}.log_table_{nr} VALUES ('a', 1), ('b', 3), ('c', 2), ('d', 5);");
164-
// Assert.IsNotNull(r4);
180+
Assert.IsNotNull(r4);
181+
Assert.IsNull(r4.Buf);
182+
Assert.IsNull(r4.ErrorMessage);
183+
165184
var r5 = session.Execute($"SELECT * FROM db_{nr}.log_table_{nr}", "TabSeparatedWithNames");
166185
Assert.IsNotNull(r5);
167186
Assert.AreEqual("x\ty\na\t1\nb\t3\nc\t2\nd\t5\n", r5.Buf);
187+
Assert.IsNull(r5.ErrorMessage);
188+
168189
var r6 = session.Execute($"CREATE VIEW db_{nr}.view_{nr} AS SELECT * FROM db_{nr}.log_table_{nr} LIMIT 4;");
169-
// Assert.IsNotNull(r6);
190+
Assert.IsNotNull(r6);
191+
Assert.IsNull(r6.Buf);
192+
Assert.IsNull(r6.ErrorMessage);
193+
170194
var r7 = session.Execute($"SELECT * FROM db_{nr}.view_{nr}", "TabSeparatedWithNames");
171195
Assert.IsNotNull(r7);
172196
Assert.AreEqual("x\ty\na\t1\nb\t3\nc\t2\nd\t5\n", r7.Buf);
197+
Assert.IsNull(r7.ErrorMessage);
198+
199+
session.Execute($"DROP DATABASE IF EXISTS db_{nr}");
173200
}
174201
}

0 commit comments

Comments
 (0)