Add a basic Database unit test

This commit is contained in:
Sébastien Rombauts 2014-03-05 21:15:14 +01:00
parent 7bfaafecba
commit 9a17223ede

View File

@ -13,6 +13,8 @@
#include <gtest/gtest.h>
#include <cstdio>
#ifdef SQLITECPP_ENABLE_ASSERT_HANDLER
namespace SQLite
{
@ -27,8 +29,22 @@ void assertion_failed(const char* apFile, const long apLine, const char* apFunc,
// Constructor
TEST(Database, ctor) {
SQLite::Database database("test.db3", SQLITE_OPEN_READWRITE|SQLITE_OPEN_CREATE);
remove("test.db3");
EXPECT_THROW(SQLite::Database unknow("_unknow.db3"), SQLite::Exception);
SQLite::Database db("test.db3", SQLITE_OPEN_READWRITE|SQLITE_OPEN_CREATE);
EXPECT_STREQ("test.db3", db.getFilename().c_str());
EXPECT_FALSE(db.tableExists("test"));
EXPECT_FALSE(db.tableExists(std::string("test")));
EXPECT_EQ(0, db.getLastInsertRowid());
EXPECT_EQ(0, db.exec("CREATE TABLE test (id INTEGER PRIMARY KEY, value TEXT)"));
EXPECT_TRUE(db.tableExists("test"));
EXPECT_TRUE(db.tableExists(std::string("test")));
EXPECT_EQ(0, db.getLastInsertRowid());
remove("test.db3");
// TODO test
// EXPECT_FALSE(database.hasEntity(entity1));
// EXPECT_EQ((size_t)0, database.unregisterEntity(entity1));
// EXPECT_FALSE(db.hasEntity(entity1));
// EXPECT_EQ((size_t)0, db.unregisterEntity(entity1));
}