From 6f6953bcc8bc02056bf744fe26203e9497c093bc Mon Sep 17 00:00:00 2001 From: Vincent Rischmann Date: Wed, 30 Dec 2020 22:38:44 +0100 Subject: add more tests for failures * one for Db.init * one for Db.prepare --- sqlite.zig | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'sqlite.zig') diff --git a/sqlite.zig b/sqlite.zig index 5c0271d..0f901de 100644 --- a/sqlite.zig +++ b/sqlite.zig @@ -1258,6 +1258,27 @@ test "sqlite: statement iterator" { } } +test "sqlite: failing open" { + var db: Db = undefined; + const res = db.init(.{ + .open_flags = .{}, + .mode = .{ .File = "/tmp/not_existing.db" }, + }); + testing.expectError(error.CannotOpenDatabase, res); +} + +test "sqlite: failing prepare statement" { + var db: Db = undefined; + try db.init(initOptions()); + + const result = db.prepare("SELECT id FROM foobar"); + testing.expectError(error.CannotPrepareStatement, result); + + const detailed_err = db.getDetailedError(); + testing.expectEqual(@as(usize, 1), detailed_err.code); + testing.expectEqualStrings("no such table: foobar", detailed_err.message); +} + fn initOptions() InitOptions { return .{ .open_flags = .{ -- cgit v1.2.3