forked from qt-creator/qt-creator
ClangRefactoring: Initialize sqlite database only once
Initializing the database is not cheap so it is better to initializing it only once. We simply check if the database file already exists and then skip the initializing step. Task-number: QTCREATORBUG-21174 Change-Id: I151090c5081c009f7913a30517065be2833791d8 Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
#include <utf8string.h>
|
||||
|
||||
#include <QSignalSpy>
|
||||
#include <QTemporaryFile>
|
||||
#include <QVariant>
|
||||
|
||||
namespace {
|
||||
@@ -105,6 +106,32 @@ TEST_F(SqliteDatabase, CloseDatabase)
|
||||
ASSERT_FALSE(database.isOpen());
|
||||
}
|
||||
|
||||
TEST_F(SqliteDatabase, DatabaseIsNotInitializedAfterOpening)
|
||||
{
|
||||
ASSERT_FALSE(database.isInitialized());
|
||||
}
|
||||
|
||||
TEST_F(SqliteDatabase, DatabaseIsIntializedAfterSettingItBeforeOpening)
|
||||
{
|
||||
database.setIsInitialized(true);
|
||||
|
||||
ASSERT_TRUE(database.isInitialized());
|
||||
}
|
||||
|
||||
TEST_F(SqliteDatabase, DatabaseIsInitializedIfDatabasePathExistsAtOpening)
|
||||
{
|
||||
Sqlite::Database database{TESTDATA_DIR "/sqlite_database.db"};
|
||||
|
||||
ASSERT_TRUE(database.isInitialized());
|
||||
}
|
||||
|
||||
TEST_F(SqliteDatabase, DatabaseIsNotInitializedIfDatabasePathDoesNotExistAtOpening)
|
||||
{
|
||||
Sqlite::Database database{Utils::PathString{QDir::tempPath() + "/database_does_not_exist.db"}};
|
||||
|
||||
ASSERT_FALSE(database.isInitialized());
|
||||
}
|
||||
|
||||
TEST_F(SqliteDatabase, AddTable)
|
||||
{
|
||||
auto sqliteTable = database.addTable();
|
||||
|
||||
Reference in New Issue
Block a user