diff options
Diffstat (limited to 'sqlite.zig')
| -rw-r--r-- | sqlite.zig | 20 |
1 files changed, 16 insertions, 4 deletions
| @@ -2344,16 +2344,22 @@ test "sqlite: db init" { | |||
| 2344 | test "sqlite: exec multi" { | 2344 | test "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 | ||
| 2352 | test "sqlite: exec multi with single statement" { | 2355 | test "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" }; |