@@ -17,29 +17,35 @@ public void QueryVersionTest()
17
17
}
18
18
19
19
[ TestMethod ]
20
- [ Ignore ( "Bugfix is in v1.2.1" ) ]
21
- public void QueryNullTest ( )
20
+ public void QueryErrorTest ( )
22
21
{
23
22
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"));
27
23
// 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" ) ;
31
38
}
32
39
33
40
[ TestMethod ]
34
- [ Ignore ( "Bugfix is in v1.2.1" ) ]
35
41
public void NoDataTest ( )
36
42
{
37
43
var result = ChDb . Query ( "create table x(a UInt8, b UInt8, c UInt8) Engine=Memory" ) ;
38
44
Assert . IsNotNull ( result ) ;
39
45
Assert . AreEqual ( 0UL , result . RowsRead ) ;
40
46
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 ) ;
43
49
Assert . AreNotEqual ( TimeSpan . Zero , result . Elapsed ) ;
44
50
Assert . IsTrue ( 0.1 > result . Elapsed . TotalSeconds ) ;
45
51
}
@@ -93,7 +99,6 @@ public void InMemoryTest()
93
99
[ TestMethod ]
94
100
public void S3ParquetTest ( )
95
101
{
96
- //clickhouse local -q "DESCRIBE s3('https://datasets-documentation.s3.eu-west-3.amazonaws.com/house_parquet/house_0.parquet')"
97
102
var result = ChDb . Query ( "DESCRIBE s3('https://datasets-documentation.s3.eu-west-3.amazonaws.com/house_parquet/house_0.parquet')" ) ;
98
103
Assert . IsNotNull ( result ) ;
99
104
Assert . IsNull ( result . ErrorMessage ) ;
@@ -115,7 +120,6 @@ FROM s3('https://datasets-documentation.s3.eu-west-3.amazonaws.com/house_parquet
115
120
}
116
121
117
122
[ TestMethod ]
118
- [ Ignore ( "TODO" ) ]
119
123
public void CsvTest ( ) {
120
124
var csv = """
121
125
Name, Age, City
@@ -131,44 +135,67 @@ public void CsvTest() {
131
135
{
132
136
Format = "PrettyCompact" ,
133
137
DataPath = dataPath ,
134
- // UdfPath = "/tmp/chdb/udf",
135
138
LogLevel = "trace" ,
136
139
} ;
137
140
var result = session . Execute ( "SELECT * FROM 'test.csv'" , "CSVWithNamesAndTypes" ) ;
138
141
Assert . IsNotNull ( result ) ;
139
142
Assert . AreEqual ( 4UL , result . RowsRead ) ;
140
143
Assert . AreEqual ( 155UL , result . BytesRead ) ;
141
- Assert . AreEqual ( "Name\t String\n Age\t UInt8\n City\t String\n John\t 25\t New York\n Alice\t 30\t London\n Bob\t 22\t Tokyo\n Eva\t 28\t Paris\n " , result . Buf ) ;
142
- StringAssert . StartsWith ( result . Buf , """"Name","Age","City"""" ) ;
144
+ StringAssert . StartsWith ( result . Buf ,
145
+ """
146
+ "Name","Age","City"
147
+ """ ) ;
143
148
}
144
149
145
150
[ TestMethod ]
146
- [ Ignore ( "Bugfix is in v1.2.1" ) ]
147
151
public void SessionTest ( )
148
152
{
149
153
using var session = new Session
150
154
{
151
155
Format = "PrettyCompact" ,
152
156
LogLevel = "trace" ,
153
157
} ;
154
- // var r1 = session.Execute("select 1");
155
- // Assert.IsNotNull(r1);
156
- // Assert.AreEqual("1\n", r1.Buf);
157
-
158
158
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
+
159
169
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
+
163
179
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
+
165
184
var r5 = session . Execute ( $ "SELECT * FROM db_{ nr } .log_table_{ nr } ", "TabSeparatedWithNames" ) ;
166
185
Assert . IsNotNull ( r5 ) ;
167
186
Assert . AreEqual ( "x\t y\n a\t 1\n b\t 3\n c\t 2\n d\t 5\n " , r5 . Buf ) ;
187
+ Assert . IsNull ( r5 . ErrorMessage ) ;
188
+
168
189
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
+
170
194
var r7 = session . Execute ( $ "SELECT * FROM db_{ nr } .view_{ nr } ", "TabSeparatedWithNames" ) ;
171
195
Assert . IsNotNull ( r7 ) ;
172
196
Assert . AreEqual ( "x\t y\n a\t 1\n b\t 3\n c\t 2\n d\t 5\n " , r7 . Buf ) ;
197
+ Assert . IsNull ( r7 . ErrorMessage ) ;
198
+
199
+ session . Execute ( $ "DROP DATABASE IF EXISTS db_{ nr } ") ;
173
200
}
174
201
}
0 commit comments