diff options
| author | 2017-02-09 04:36:04 -0500 | |
|---|---|---|
| committer | 2017-02-09 04:36:04 -0500 | |
| commit | d9aa870e5d509cc7309ab82dd102a937ab58613a (patch) | |
| tree | d92d03d76b5c390b335f1cfd761f1a0b59ec8496 /SQLiteStudio3/Tests/UtilsTest/tst_utilssqltest.cpp | |
| parent | 68ee4cbcbe424b95969c70346283a9f217f63825 (diff) | |
Imported Upstream version 3.1.1+dfsg1upstream/3.1.1+dfsg1
Diffstat (limited to 'SQLiteStudio3/Tests/UtilsTest/tst_utilssqltest.cpp')
| -rw-r--r-- | SQLiteStudio3/Tests/UtilsTest/tst_utilssqltest.cpp | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/SQLiteStudio3/Tests/UtilsTest/tst_utilssqltest.cpp b/SQLiteStudio3/Tests/UtilsTest/tst_utilssqltest.cpp new file mode 100644 index 0000000..97c9234 --- /dev/null +++ b/SQLiteStudio3/Tests/UtilsTest/tst_utilssqltest.cpp @@ -0,0 +1,75 @@ +#include <QString>
+#include <QtTest>
+#include "common/utils_sql.h"
+
+class UtilsSqlTest : public QObject
+{
+ Q_OBJECT
+
+public:
+ UtilsSqlTest();
+
+private Q_SLOTS:
+ void testCaseDefault();
+ void testRemoveEmpties();
+ void testRemoveComments();
+ void testRemoveCommentsAndEmpties();
+};
+
+UtilsSqlTest::UtilsSqlTest()
+{
+}
+
+void UtilsSqlTest::testCaseDefault()
+{
+ QString sql = "select 'dfgh ;sdg '' dfga' from aa; insert into x values ('sdg', ';drghd;;;''', 4); select 1, ''; select 2;";
+ QStringList sp = quickSplitQueries(sql);
+
+ QString failure = "Failure, got: \"%1\"";
+
+ QVERIFY2(sp.size() == 4, failure.arg(sp.size()).toLatin1().data());
+ QVERIFY2(sp[0] == "select 'dfgh ;sdg '' dfga' from aa;", failure.arg(sp[0]).toLatin1().data());
+ QVERIFY2(sp[1] == " insert into x values ('sdg', ';drghd;;;''', 4);", failure.arg(sp[1]).toLatin1().data());
+ QVERIFY2(sp[2] == " select 1, '';", failure.arg(sp[2]).toLatin1().data());
+ QVERIFY2(sp[3] == " select 2;", failure.arg(sp[3]).toLatin1().data());
+}
+
+void UtilsSqlTest::testRemoveEmpties()
+{
+ QString sql = "select 'dfgh ;sdg '' dfga' from aa; ; select 1, '';";
+ QStringList sp = quickSplitQueries(sql, false);
+
+ QString failure = "Failure, got: \"%1\"";
+
+ QVERIFY2(sp.size() == 2, failure.arg(sp.size()).toLatin1().data());
+ QVERIFY2(sp[0] == "select 'dfgh ;sdg '' dfga' from aa;", failure.arg(sp[0]).toLatin1().data());
+ QVERIFY2(sp[1] == " select 1, '';", failure.arg(sp[1]).toLatin1().data());
+}
+
+void UtilsSqlTest::testRemoveComments()
+{
+ QString sql = "select 'dfgh ;sdg '' dfga' from aa; select 1/*, ''*/;--select 1\nselect 2;";
+ QStringList sp = quickSplitQueries(sql, true, true);
+
+ QString failure = "Failure, got: \"%1\"";
+
+ QVERIFY2(sp.size() == 3, failure.arg(sp.size()).toLatin1().data());
+ QVERIFY2(sp[0] == "select 'dfgh ;sdg '' dfga' from aa;", failure.arg(sp[0]).toLatin1().data());
+ QVERIFY2(sp[1] == " select 1;", failure.arg(sp[1]).toLatin1().data());
+ QVERIFY2(sp[2] == "select 2;", failure.arg(sp[2]).toLatin1().data());
+}
+
+void UtilsSqlTest::testRemoveCommentsAndEmpties()
+{
+ QString sql = "select 'dfgh ;sdg /*''*/ dfga' from aa; /*select 1, ''*/;--select 1\n--select 2;";
+ QStringList sp = quickSplitQueries(sql, false, true);
+
+ QString failure = "Failure, got: \"%1\"";
+
+ QVERIFY2(sp.size() == 1, failure.arg(sp.size()).toLatin1().data());
+ QVERIFY2(sp[0] == "select 'dfgh ;sdg /*''*/ dfga' from aa;", failure.arg(sp[0]).toLatin1().data());
+}
+
+QTEST_APPLESS_MAIN(UtilsSqlTest)
+
+#include "tst_utilssqltest.moc"
|
