diff options
| -rw-r--r-- | sqlite.zig | 19 |
1 files changed, 19 insertions, 0 deletions
| @@ -3137,6 +3137,25 @@ test "sqlite: oneDynamic" { | |||
| 3137 | } | 3137 | } |
| 3138 | } | 3138 | } |
| 3139 | 3139 | ||
| 3140 | test "sqlite: one with all named parameters" { | ||
| 3141 | var db = try getTestDb(); | ||
| 3142 | defer db.deinit(); | ||
| 3143 | try addTestData(&db); | ||
| 3144 | |||
| 3145 | var diags = Diagnostics{}; | ||
| 3146 | |||
| 3147 | // Mix bind marker prefix for good measure | ||
| 3148 | |||
| 3149 | const id = try db.one( | ||
| 3150 | usize, | ||
| 3151 | "SELECT id FROM user WHERE age = $age AND weight < :weight and id < @id", | ||
| 3152 | .{ .diags = &diags }, | ||
| 3153 | .{ .id = 400, .age = 33, .weight = 200 }, | ||
| 3154 | ); | ||
| 3155 | try testing.expect(id != null); | ||
| 3156 | try testing.expectEqual(@as(usize, 20), id.?); | ||
| 3157 | } | ||
| 3158 | |||
| 3140 | test "sqlite: empty slice" { | 3159 | test "sqlite: empty slice" { |
| 3141 | var arena = std.heap.ArenaAllocator.init(testing.allocator); | 3160 | var arena = std.heap.ArenaAllocator.init(testing.allocator); |
| 3142 | defer arena.deinit(); | 3161 | defer arena.deinit(); |