From 81a21e6ce040e7740de86340c8ea4dba30e69bc3 Mon Sep 17 00:00:00 2001 From: Unit 193 Date: Thu, 16 Jan 2025 01:57:37 -0500 Subject: New upstream version 3.4.13+dfsg. --- SQLiteStudio3/Tests/ParserTest/tst_parsertest.cpp | 15 ++++++++++++++- .../Tests/TableModifierTest/tst_tablemodifiertest.cpp | 2 +- SQLiteStudio3/Tests/TestUtils/collationmanagermock.cpp | 5 +++++ SQLiteStudio3/Tests/TestUtils/collationmanagermock.h | 1 + SQLiteStudio3/Tests/TestUtils/dbmanagermock.cpp | 5 +++++ SQLiteStudio3/Tests/TestUtils/dbmanagermock.h | 1 + 6 files changed, 27 insertions(+), 2 deletions(-) (limited to 'SQLiteStudio3/Tests') 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(); + 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 CollationManagerMock::getAllCollations() c return QList(); } +CollationManager::CollationPtr CollationManagerMock::getCollation(const QString&) const +{ + return nullptr; +} + QList CollationManagerMock::getCollationsForDatabase(const QString&) const { return QList(); 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 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 getValidDbList(); QList getConnectedDbList(); QStringList getDbNames(); + QStringList getValidDbNames(); Db* getByName(const QString&, Qt::CaseSensitivity); Db* getByPath(const QString&); Db* createInMemDb(bool = false); -- cgit v1.2.3