@@ -330,7 +330,6 @@ static void firstchar(sqlite3_context *context, int argc, sqlite3_value **argv)
330330
331331TEST (Database, createFunction)
332332{
333- // Create a new database
334333 SQLite::Database db (" :memory:" , SQLite::OPEN_READWRITE);
335334 db.exec (" CREATE TABLE test (id INTEGER PRIMARY KEY, value TEXT)" );
336335
@@ -345,7 +344,15 @@ TEST(Database, createFunction)
345344 EXPECT_EQ (1 , db.exec (" SELECT firstchar(value) FROM test WHERE id=1" ));
346345}
347346
348- // TODO: test Database::loadExtension()
347+ TEST (Database, loadExtension)
348+ {
349+ SQLite::Database db (" :memory:" , SQLite::OPEN_READWRITE);
350+
351+ // Try to load a non-existing extension (no dynamic library found)
352+ EXPECT_THROW (db.loadExtension (" non-existing-extension" , " entry-point" ), SQLite::Exception);
353+
354+ // TODO: test a proper extension
355+ }
349356
350357#ifdef SQLITE_HAS_CODEC
351358TEST (Database, encryptAndDecrypt)
@@ -354,6 +361,8 @@ TEST(Database, encryptAndDecrypt)
354361 {
355362 // Try to open the non-existing database
356363 EXPECT_THROW (SQLite::Database not_found (" test.db3" ), SQLite::Exception);
364+ EXPECT_THROW (SQLite::Database::isUnencrypted (" test.db3" ), SQLite::Exception);
365+ EXPECT_THROW (SQLite::Database::isUnencrypted (" " ), SQLite::Exception);
357366
358367 // Create a new database
359368 SQLite::Database db (" test.db3" , SQLite::OPEN_READWRITE | SQLite::OPEN_CREATE);
@@ -399,6 +408,8 @@ TEST(Database, encryptAndDecrypt)
399408 {
400409 // Try to open the non-existing database
401410 EXPECT_THROW (SQLite::Database not_found (" test.db3" ), SQLite::Exception);
411+ EXPECT_THROW (SQLite::Database::isUnencrypted (" test.db3" ), SQLite::Exception);
412+ EXPECT_THROW (SQLite::Database::isUnencrypted (" " ), SQLite::Exception);
402413
403414 // Create a new database
404415 SQLite::Database db (" test.db3" , SQLite::OPEN_READWRITE | SQLite::OPEN_CREATE);
0 commit comments