summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/sql/kernel/qsqlresult/qsqlresult.pro2
-rw-r--r--tests/auto/sql/kernel/qsqlresult/testsqldriver.h9
-rw-r--r--tests/auto/sql/kernel/qsqlresult/tst_qsqlresult.cpp20
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);