diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/sql/kernel/qsqlresult/qsqlresult.pro | 2 | ||||
-rw-r--r-- | tests/auto/sql/kernel/qsqlresult/testsqldriver.h | 9 | ||||
-rw-r--r-- | tests/auto/sql/kernel/qsqlresult/tst_qsqlresult.cpp | 20 |
3 files changed, 26 insertions, 5 deletions
diff --git a/tests/auto/sql/kernel/qsqlresult/qsqlresult.pro b/tests/auto/sql/kernel/qsqlresult/qsqlresult.pro index ef6c7a7e09..114327effb 100644 --- a/tests/auto/sql/kernel/qsqlresult/qsqlresult.pro +++ b/tests/auto/sql/kernel/qsqlresult/qsqlresult.pro @@ -1,7 +1,7 @@ TARGET = tst_qsqlresult CONFIG += testcase -QT = core sql testlib +QT = core core-private sql sql-private testlib SOURCES += tst_qsqlresult.cpp HEADERS += testsqldriver.h diff --git a/tests/auto/sql/kernel/qsqlresult/testsqldriver.h b/tests/auto/sql/kernel/qsqlresult/testsqldriver.h index 9d435a0f7c..eda0658b41 100644 --- a/tests/auto/sql/kernel/qsqlresult/testsqldriver.h +++ b/tests/auto/sql/kernel/qsqlresult/testsqldriver.h @@ -45,6 +45,7 @@ #include <QtSql/QSqlResult> #include <QtSql/QSqlDriver> #include <QtSql/QSqlRecord> +#include <private/qsqldriver_p.h> class TestSqlDriverResult : public QSqlResult { @@ -77,6 +78,8 @@ protected: class TestSqlDriver : public QSqlDriver { + Q_DECLARE_PRIVATE(QSqlDriver) + public: TestSqlDriver() {} ~TestSqlDriver() {} @@ -96,6 +99,12 @@ public: int /* port */, const QString & /* options */) { return false; } void close() {} + QSqlDriverPrivate::DBMSType dbmsType() const + { + Q_D(const QSqlDriver); + return d->dbmsType; + } + QSqlResult *createResult() const { return new TestSqlDriverResult(this); } }; diff --git a/tests/auto/sql/kernel/qsqlresult/tst_qsqlresult.cpp b/tests/auto/sql/kernel/qsqlresult/tst_qsqlresult.cpp index ba6b4d1fbf..2462fab879 100644 --- a/tests/auto/sql/kernel/qsqlresult/tst_qsqlresult.cpp +++ b/tests/auto/sql/kernel/qsqlresult/tst_qsqlresult.cpp @@ -79,18 +79,30 @@ void tst_QSqlResult::parseOfBoundValues() QVERIFY(result.savePrepare("SELECT :1 AS ':2'")); QCOMPARE(result.boundValues().count(), 1); QVERIFY(result.savePrepare("SELECT :1 AS [:2]")); - QCOMPARE(result.boundValues().count(), 1); + if (testDriver.dbmsType() == QSqlDriverPrivate::PostgreSQL) + QCOMPARE(result.boundValues().count(), 2); + else + QCOMPARE(result.boundValues().count(), 1); QVERIFY(result.savePrepare("SELECT :1 AS [:2]]]")); - QCOMPARE(result.boundValues().count(), 1); + if (testDriver.dbmsType() == QSqlDriverPrivate::PostgreSQL) + QCOMPARE(result.boundValues().count(), 2); + else + QCOMPARE(result.boundValues().count(), 1); QVERIFY(result.savePrepare("SELECT :1 AS [:2]]]]]")); - QCOMPARE(result.boundValues().count(), 1); + if (testDriver.dbmsType() == QSqlDriverPrivate::PostgreSQL) + QCOMPARE(result.boundValues().count(), 2); + else + QCOMPARE(result.boundValues().count(), 1); QVERIFY(result.savePrepare("SELECT ? AS \"?\"")); QCOMPARE(result.boundValues().count(), 1); QVERIFY(result.savePrepare("SELECT ? AS '?'")); QCOMPARE(result.boundValues().count(), 1); QVERIFY(result.savePrepare("SELECT ? AS [?]")); - QCOMPARE(result.boundValues().count(), 1); + if (testDriver.dbmsType() == QSqlDriverPrivate::PostgreSQL) + QCOMPARE(result.boundValues().count(), 2); + else + QCOMPARE(result.boundValues().count(), 1); QVERIFY(result.savePrepare("SELECT ? AS \"'?\"")); QCOMPARE(result.boundValues().count(), 1); |