summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Vincent Rischmann2021-12-26 18:42:59 +0100
committerGravatar Vincent Rischmann2021-12-31 01:52:49 +0100
commitf2c1a20538e5f31b96858b8ad369e411a2bb6e62 (patch)
treec2bf19435fb632cce8bbe641e8b116c4a0a7a75d
parentuse StatementType (diff)
downloadzig-sqlite-f2c1a20538e5f31b96858b8ad369e411a2bb6e62.tar.gz
zig-sqlite-f2c1a20538e5f31b96858b8ad369e411a2bb6e62.tar.xz
zig-sqlite-f2c1a20538e5f31b96858b8ad369e411a2bb6e62.zip
query: also test the number of bind markers
-rw-r--r--query.zig10
1 files changed, 10 insertions, 0 deletions
diff --git a/query.zig b/query.zig
index 8af0494..d56329e 100644
--- a/query.zig
+++ b/query.zig
@@ -314,20 +314,29 @@ test "parsed query: query bind identifier" {
314 const testCase = struct { 314 const testCase = struct {
315 query: []const u8, 315 query: []const u8,
316 expected_query: []const u8, 316 expected_query: []const u8,
317 expected_nb_bind_markers: usize,
317 }; 318 };
318 319
319 const testCases = &[_]testCase{ 320 const testCases = &[_]testCase{
320 .{ 321 .{
321 .query = "INSERT INTO user(id, name, age) VALUES(@id{usize}, :name{[]const u8}, $age{u32})", 322 .query = "INSERT INTO user(id, name, age) VALUES(@id{usize}, :name{[]const u8}, $age{u32})",
322 .expected_query = "INSERT INTO user(id, name, age) VALUES(@id, :name, $age)", 323 .expected_query = "INSERT INTO user(id, name, age) VALUES(@id, :name, $age)",
324 .expected_nb_bind_markers = 3,
325 },
326 .{
327 .query = "INSERT INTO user(id, name, age) VALUES($id, $name, $age)",
328 .expected_query = "INSERT INTO user(id, name, age) VALUES($id, $name, $age)",
329 .expected_nb_bind_markers = 3,
323 }, 330 },
324 .{ 331 .{
325 .query = "SELECT id, name, age FROM user WHER age > :ageGT{u32} AND age < @ageLT{u32}", 332 .query = "SELECT id, name, age FROM user WHER age > :ageGT{u32} AND age < @ageLT{u32}",
326 .expected_query = "SELECT id, name, age FROM user WHER age > :ageGT AND age < @ageLT", 333 .expected_query = "SELECT id, name, age FROM user WHER age > :ageGT AND age < @ageLT",
334 .expected_nb_bind_markers = 2,
327 }, 335 },
328 .{ 336 .{
329 .query = "SELECT id, name, age FROM user WHER age > :ageGT AND age < $ageLT", 337 .query = "SELECT id, name, age FROM user WHER age > :ageGT AND age < $ageLT",
330 .expected_query = "SELECT id, name, age FROM user WHER age > :ageGT AND age < $ageLT", 338 .expected_query = "SELECT id, name, age FROM user WHER age > :ageGT AND age < $ageLT",
339 .expected_nb_bind_markers = 2,
331 }, 340 },
332 }; 341 };
333 342
@@ -335,6 +344,7 @@ test "parsed query: query bind identifier" {
335 @setEvalBranchQuota(100000); 344 @setEvalBranchQuota(100000);
336 comptime var parsed_query = ParsedQuery.from(tc.query); 345 comptime var parsed_query = ParsedQuery.from(tc.query);
337 try testing.expectEqualStrings(tc.expected_query, parsed_query.getQuery()); 346 try testing.expectEqualStrings(tc.expected_query, parsed_query.getQuery());
347 try testing.expectEqual(tc.expected_nb_bind_markers, parsed_query.nb_bind_markers);
338 } 348 }
339} 349}
340 350