summaryrefslogtreecommitdiff
path: root/sqlite.zig
diff options
context:
space:
mode:
Diffstat (limited to 'sqlite.zig')
-rw-r--r--sqlite.zig20
1 files changed, 16 insertions, 4 deletions
diff --git a/sqlite.zig b/sqlite.zig
index 20f6677..cd192a2 100644
--- a/sqlite.zig
+++ b/sqlite.zig
@@ -2344,16 +2344,22 @@ test "sqlite: db init" {
2344test "sqlite: exec multi" { 2344test "sqlite: exec multi" {
2345 var db = try getTestDb(); 2345 var db = try getTestDb();
2346 defer db.deinit(); 2346 defer db.deinit();
2347 try db.execMulti("create table a(b int);\n\n--test comment\ncreate table b(c int);", .{}); 2347
2348 const val = try db.one(i32, "select max(c) from b", .{}, .{}); 2348 try db.execMulti("DROP TABLE IF EXISTS a;\nDROP TABLE IF EXISTS b;", .{});
2349 try db.execMulti("CREATE TABLE a(b int);\n\n--test comment\nCREATE TABLE b(c int);", .{});
2350
2351 const val = try db.one(i32, "SELECT max(c) FROM b", .{}, .{});
2349 try testing.expectEqual(@as(?i32, 0), val); 2352 try testing.expectEqual(@as(?i32, 0), val);
2350} 2353}
2351 2354
2352test "sqlite: exec multi with single statement" { 2355test "sqlite: exec multi with single statement" {
2353 var db = try getTestDb(); 2356 var db = try getTestDb();
2354 defer db.deinit(); 2357 defer db.deinit();
2355 try db.execMulti("create table a(b int);", .{}); 2358
2356 const val = try db.one(i32, "select max(b) from a", .{}, .{}); 2359 try db.exec("DROP TABLE IF EXISTS a", .{}, .{});
2360 try db.execMulti("CREATE TABLE a(b int);", .{});
2361
2362 const val = try db.one(i32, "SELECT max(b) FROM a", .{}, .{});
2357 try testing.expectEqual(@as(?i32, 0), val); 2363 try testing.expectEqual(@as(?i32, 0), val);
2358} 2364}
2359 2365
@@ -3095,6 +3101,7 @@ test "sqlite: blob open, reopen" {
3095 const blob_data2 = "\xCA\xFE\xBA\xBEfoobar"; 3101 const blob_data2 = "\xCA\xFE\xBA\xBEfoobar";
3096 3102
3097 // Insert two blobs with a set length 3103 // Insert two blobs with a set length
3104 try db.exec("DROP TABLE IF EXISTS test_blob", .{}, .{});
3098 try db.exec("CREATE TABLE test_blob(id integer primary key, data blob)", .{}, .{}); 3105 try db.exec("CREATE TABLE test_blob(id integer primary key, data blob)", .{}, .{});
3099 3106
3100 try db.exec("INSERT INTO test_blob(data) VALUES(?)", .{}, .{ 3107 try db.exec("INSERT INTO test_blob(data) VALUES(?)", .{}, .{
@@ -3163,6 +3170,8 @@ test "sqlite: failing prepare statement" {
3163 3170
3164 var diags: Diagnostics = undefined; 3171 var diags: Diagnostics = undefined;
3165 3172
3173 try db.exec("DROP TABLE IF EXISTS foobar", .{}, .{});
3174
3166 const result = db.prepareWithDiags("SELECT id FROM foobar", .{ .diags = &diags }); 3175 const result = db.prepareWithDiags("SELECT id FROM foobar", .{ .diags = &diags });
3167 try testing.expectError(error.SQLiteError, result); 3176 try testing.expectError(error.SQLiteError, result);
3168 3177
@@ -3811,6 +3820,7 @@ test "sqlite: create aggregate function with no aggregate context" {
3811 3820
3812 // Initialize some data 3821 // Initialize some data
3813 3822
3823 try db.exec("DROP TABLE IF EXISTS view", .{}, .{});
3814 try db.exec("CREATE TABLE view(id integer PRIMARY KEY, nb integer)", .{}, .{}); 3824 try db.exec("CREATE TABLE view(id integer PRIMARY KEY, nb integer)", .{}, .{});
3815 var i: usize = 0; 3825 var i: usize = 0;
3816 var exp: usize = 0; 3826 var exp: usize = 0;
@@ -3864,6 +3874,7 @@ test "sqlite: create aggregate function with an aggregate context" {
3864 3874
3865 // Initialize some data 3875 // Initialize some data
3866 3876
3877 try db.exec("DROP TABLE IF EXISTS view", .{}, .{});
3867 try db.exec("CREATE TABLE view(id integer PRIMARY KEY, a integer, b integer)", .{}, .{}); 3878 try db.exec("CREATE TABLE view(id integer PRIMARY KEY, a integer, b integer)", .{}, .{});
3868 var i: usize = 0; 3879 var i: usize = 0;
3869 var exp_a: usize = 0; 3880 var exp_a: usize = 0;
@@ -3999,6 +4010,7 @@ test "tagged union" {
3999 age: usize, 4010 age: usize,
4000 }; 4011 };
4001 4012
4013 try db.exec("DROP TABLE IF EXISTS foobar", .{}, .{});
4002 try db.exec("CREATE TABLE foobar(key TEXT, value ANY)", .{}, .{}); 4014 try db.exec("CREATE TABLE foobar(key TEXT, value ANY)", .{}, .{});
4003 4015
4004 var foobar = Foobar{ .name = "hello" }; 4016 var foobar = Foobar{ .name = "hello" };