aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/Tests
diff options
context:
space:
mode:
Diffstat (limited to 'SQLiteStudio3/Tests')
-rw-r--r--SQLiteStudio3/Tests/ParserTest/tst_parsertest.cpp15
-rw-r--r--SQLiteStudio3/Tests/TableModifierTest/tst_tablemodifiertest.cpp2
-rw-r--r--SQLiteStudio3/Tests/TestUtils/collationmanagermock.cpp5
-rw-r--r--SQLiteStudio3/Tests/TestUtils/collationmanagermock.h1
-rw-r--r--SQLiteStudio3/Tests/TestUtils/dbmanagermock.cpp5
-rw-r--r--SQLiteStudio3/Tests/TestUtils/dbmanagermock.h1
6 files changed, 27 insertions, 2 deletions
diff --git a/SQLiteStudio3/Tests/ParserTest/tst_parsertest.cpp b/SQLiteStudio3/Tests/ParserTest/tst_parsertest.cpp
index eec1e39..d936e2b 100644
--- a/SQLiteStudio3/Tests/ParserTest/tst_parsertest.cpp
+++ b/SQLiteStudio3/Tests/ParserTest/tst_parsertest.cpp
@@ -51,6 +51,7 @@ class ParserTest : public QObject
void testBigNum();
void testSelectWith();
void testInsertWithDoubleQuoteValues();
+ void testInsertIncompleteOnColumnName();
void testParseAndRebuildAlias();
void testRebuildTokensUpdate();
void testRebuildTokensInsertUpsert();
@@ -469,6 +470,18 @@ void ParserTest::testInsertWithDoubleQuoteValues()
QVERIFY(sql.replace(" ", "") == detokenized);
}
+void ParserTest::testInsertIncompleteOnColumnName()
+{
+ QString sql = "INSERT INTO tabName (";
+ bool res = parser3->parse(sql, true);
+ QVERIFY(res);
+ QVERIFY(parser3->getErrors().isEmpty());
+
+ const SqliteInsertPtr insert = parser3->getQueries().first().dynamicCast<SqliteInsert>();
+ QVERIFY(insert->table == "tabName");
+ QVERIFY(insert->columnNames.isEmpty());
+}
+
void ParserTest::testParseAndRebuildAlias()
{
QString sql = "SELECT x AS [\"abc\".\"def\"];";
@@ -569,7 +582,7 @@ void ParserTest::testWindowClause()
void ParserTest::testWindowKwAsColumn()
{
QString sql = "SELECT window FROM test_table;";
- parser3->setLemonDebug(true);
+ //parser3->setLemonDebug(true);
bool res = parser3->parse(sql);
QVERIFY(res);
QVERIFY(parser3->getErrors().isEmpty());
diff --git a/SQLiteStudio3/Tests/TableModifierTest/tst_tablemodifiertest.cpp b/SQLiteStudio3/Tests/TableModifierTest/tst_tablemodifiertest.cpp
index a5e0ad1..e631683 100644
--- a/SQLiteStudio3/Tests/TableModifierTest/tst_tablemodifiertest.cpp
+++ b/SQLiteStudio3/Tests/TableModifierTest/tst_tablemodifiertest.cpp
@@ -43,7 +43,7 @@ TableModifierTest::TableModifierTest()
void TableModifierTest::verifyRe(const QString& re, const QString& sql, Qt::CaseSensitivity cs)
{
QRegExp regExp(re, cs);
- QVERIFY2(regExp.exactMatch(sql), QString("Failed RegExp validation:\n%1\nfor SQL:\n%2").arg(re).arg(sql).toLatin1().data());
+ QVERIFY2(regExp.exactMatch(sql), QString("Failed RegExp validation:\n%1\nfor SQL:\n%2\n").arg(re, sql).toLatin1().data());
}
void TableModifierTest::testCase1()
diff --git a/SQLiteStudio3/Tests/TestUtils/collationmanagermock.cpp b/SQLiteStudio3/Tests/TestUtils/collationmanagermock.cpp
index 640a252..b9efa46 100644
--- a/SQLiteStudio3/Tests/TestUtils/collationmanagermock.cpp
+++ b/SQLiteStudio3/Tests/TestUtils/collationmanagermock.cpp
@@ -13,6 +13,11 @@ QList<CollationManager::CollationPtr> CollationManagerMock::getAllCollations() c
return QList<CollationManager::CollationPtr>();
}
+CollationManager::CollationPtr CollationManagerMock::getCollation(const QString&) const
+{
+ return nullptr;
+}
+
QList<CollationManager::CollationPtr> CollationManagerMock::getCollationsForDatabase(const QString&) const
{
return QList<CollationManager::CollationPtr>();
diff --git a/SQLiteStudio3/Tests/TestUtils/collationmanagermock.h b/SQLiteStudio3/Tests/TestUtils/collationmanagermock.h
index eb08b7b..0b273d9 100644
--- a/SQLiteStudio3/Tests/TestUtils/collationmanagermock.h
+++ b/SQLiteStudio3/Tests/TestUtils/collationmanagermock.h
@@ -13,6 +13,7 @@ class CollationManagerMock : public CollationManager
QList<CollationPtr> getCollationsForDatabase(const QString&) const;
int evaluate(const QString&, const QString&, const QString&);
int evaluateDefault(const QString&, const QString&);
+ CollationPtr getCollation(const QString &name) const;
};
#endif // COLLATIONMANAGERMOCK_H
diff --git a/SQLiteStudio3/Tests/TestUtils/dbmanagermock.cpp b/SQLiteStudio3/Tests/TestUtils/dbmanagermock.cpp
index 10caed4..1956c6b 100644
--- a/SQLiteStudio3/Tests/TestUtils/dbmanagermock.cpp
+++ b/SQLiteStudio3/Tests/TestUtils/dbmanagermock.cpp
@@ -47,6 +47,11 @@ QStringList DbManagerMock::getDbNames()
return QStringList();
}
+QStringList DbManagerMock::getValidDbNames()
+{
+ return QStringList();
+}
+
Db* DbManagerMock::getByName(const QString&, Qt::CaseSensitivity)
{
return nullptr;
diff --git a/SQLiteStudio3/Tests/TestUtils/dbmanagermock.h b/SQLiteStudio3/Tests/TestUtils/dbmanagermock.h
index ee69fa1..df39b65 100644
--- a/SQLiteStudio3/Tests/TestUtils/dbmanagermock.h
+++ b/SQLiteStudio3/Tests/TestUtils/dbmanagermock.h
@@ -16,6 +16,7 @@ class DbManagerMock : public DbManager
QList<Db*> getValidDbList();
QList<Db*> getConnectedDbList();
QStringList getDbNames();
+ QStringList getValidDbNames();
Db* getByName(const QString&, Qt::CaseSensitivity);
Db* getByPath(const QString&);
Db* createInMemDb(bool = false);