summaryrefslogtreecommitdiffstats
path: root/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp
diff options
context:
space:
mode:
authorMatt Broadstone <mbroadstone@devonit.com>2014-09-16 10:03:14 -0400
committerMark Brand <mabrand@mabrand.nl>2014-09-24 14:44:49 +0200
commitf84b00c6d26eb7a3a6802210d2a8b12ddbf815aa (patch)
treed21bb67ce89e136da1ae6be66a7d005f84c0cd93 /tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp
parenteef1e51f97a652907bda29357c20388ab36f26ec (diff)
Expose QSqlDriverPrivate dbmsType in public QSqlDriver api
dbmsType was previously kept as a private variable in QSqlDriverPrivate, however it's particularly useful for QODBC users. [ChangeLog][QtSql][QSqlDriver] Add support for determining DBMS type from SQL driver. Change-Id: If1c221520da9ac4ccef85a02db078679d76eac92 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Diffstat (limited to 'tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp')
-rw-r--r--tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp44
1 files changed, 22 insertions, 22 deletions
diff --git a/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp b/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp
index b5c45cd987..fa0f7eaf34 100644
--- a/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp
+++ b/tests/auto/sql/kernel/qsqldriver/tst_qsqldriver.cpp
@@ -71,8 +71,8 @@ void tst_QSqlDriver::recreateTestTables(QSqlDatabase db)
QSqlQuery q(db);
const QString relTEST1(qTableName("relTEST1", __FILE__, db));
- QSqlDriverPrivate::DBMSType dbType = tst_Databases::getDatabaseType(db);
- if (dbType == QSqlDriverPrivate::PostgreSQL)
+ QSqlDriver::DBMSType dbType = tst_Databases::getDatabaseType(db);
+ if (dbType == QSqlDriver::PostgreSQL)
QVERIFY_SQL( q, exec("set client_min_messages='warning'"));
tst_Databases::safeDropTable( db, relTEST1 );
@@ -122,24 +122,24 @@ void tst_QSqlDriver::record()
QSqlRecord rec = db.driver()->record(tablename);
QCOMPARE(rec.count(), 4);
- QSqlDriverPrivate::DBMSType dbType = tst_Databases::getDatabaseType(db);
+ QSqlDriver::DBMSType dbType = tst_Databases::getDatabaseType(db);
// QTBUG-1363: QSqlField::length() always return -1 when using QODBC3 driver and QSqlDatabase::record()
- if (dbType == QSqlDriverPrivate::MSSqlServer && db.driverName().startsWith("QODBC"))
+ if (dbType == QSqlDriver::MSSqlServer && db.driverName().startsWith("QODBC"))
QCOMPARE(rec.field(1).length(), 20);
- if (dbType == QSqlDriverPrivate::Interbase || dbType == QSqlDriverPrivate::Oracle || dbType == QSqlDriverPrivate::DB2)
+ if (dbType == QSqlDriver::Interbase || dbType == QSqlDriver::Oracle || dbType == QSqlDriver::DB2)
for(int i = 0; i < fields.count(); ++i)
fields[i] = fields[i].toUpper();
for (int i = 0; i < fields.count(); ++i)
QCOMPARE(rec.fieldName(i), fields[i]);
- if (dbType == QSqlDriverPrivate::Interbase || dbType == QSqlDriverPrivate::Oracle || dbType == QSqlDriverPrivate::DB2)
+ if (dbType == QSqlDriver::Interbase || dbType == QSqlDriver::Oracle || dbType == QSqlDriver::DB2)
tablename = tablename.toUpper();
- else if (dbType == QSqlDriverPrivate::PostgreSQL)
+ else if (dbType == QSqlDriver::PostgreSQL)
tablename = tablename.toLower();
- if (dbType != QSqlDriverPrivate::PostgreSQL && !db.driverName().startsWith("QODBC")) {
+ if (dbType != QSqlDriver::PostgreSQL && !db.driverName().startsWith("QODBC")) {
//check we can get records using a properly quoted table name
rec = db.driver()->record(db.driver()->escapeIdentifier(tablename,QSqlDriver::TableName));
QCOMPARE(rec.count(), 4);
@@ -148,15 +148,15 @@ void tst_QSqlDriver::record()
for (int i = 0; i < fields.count(); ++i)
QCOMPARE(rec.fieldName(i), fields[i]);
- if (dbType == QSqlDriverPrivate::Interbase || dbType == QSqlDriverPrivate::Oracle || dbType == QSqlDriverPrivate::DB2)
+ if (dbType == QSqlDriver::Interbase || dbType == QSqlDriver::Oracle || dbType == QSqlDriver::DB2)
tablename = tablename.toLower();
- else if (dbType == QSqlDriverPrivate::PostgreSQL)
+ else if (dbType == QSqlDriver::PostgreSQL)
tablename = tablename.toUpper();
//check that we can't get records using incorrect tablename casing that's been quoted
rec = db.driver()->record(db.driver()->escapeIdentifier(tablename,QSqlDriver::TableName));
- if (dbType == QSqlDriverPrivate::MySqlServer || dbType == QSqlDriverPrivate::SQLite || dbType == QSqlDriverPrivate::Sybase
- || dbType == QSqlDriverPrivate::MSSqlServer || tst_Databases::isMSAccess(db))
+ if (dbType == QSqlDriver::MySqlServer || dbType == QSqlDriver::SQLite || dbType == QSqlDriver::Sybase
+ || dbType == QSqlDriver::MSSqlServer || tst_Databases::isMSAccess(db))
QCOMPARE(rec.count(), 4); //mysql, sqlite and tds will match
else
QCOMPARE(rec.count(), 0);
@@ -174,24 +174,24 @@ void tst_QSqlDriver::primaryIndex()
QSqlIndex index = db.driver()->primaryIndex(tablename);
QCOMPARE(index.count(), 1);
- QSqlDriverPrivate::DBMSType dbType = tst_Databases::getDatabaseType(db);
- if (dbType == QSqlDriverPrivate::Interbase || dbType == QSqlDriverPrivate::Oracle || dbType == QSqlDriverPrivate::DB2)
+ QSqlDriver::DBMSType dbType = tst_Databases::getDatabaseType(db);
+ if (dbType == QSqlDriver::Interbase || dbType == QSqlDriver::Oracle || dbType == QSqlDriver::DB2)
QCOMPARE(index.fieldName(0), QString::fromLatin1("ID"));
else
QCOMPARE(index.fieldName(0), QString::fromLatin1("id"));
//check that we can get the primary index using a quoted tablename
- if (dbType == QSqlDriverPrivate::Interbase || dbType == QSqlDriverPrivate::Oracle || dbType == QSqlDriverPrivate::DB2)
+ if (dbType == QSqlDriver::Interbase || dbType == QSqlDriver::Oracle || dbType == QSqlDriver::DB2)
tablename = tablename.toUpper();
- else if (dbType == QSqlDriverPrivate::PostgreSQL)
+ else if (dbType == QSqlDriver::PostgreSQL)
tablename = tablename.toLower();
- if (dbType != QSqlDriverPrivate::PostgreSQL && !db.driverName().startsWith("QODBC")) {
+ if (dbType != QSqlDriver::PostgreSQL && !db.driverName().startsWith("QODBC")) {
index = db.driver()->primaryIndex(db.driver()->escapeIdentifier(tablename, QSqlDriver::TableName));
QCOMPARE(index.count(), 1);
}
- if (dbType == QSqlDriverPrivate::Interbase || dbType == QSqlDriverPrivate::Oracle || dbType == QSqlDriverPrivate::DB2)
+ if (dbType == QSqlDriver::Interbase || dbType == QSqlDriver::Oracle || dbType == QSqlDriver::DB2)
QCOMPARE(index.fieldName(0), QString::fromLatin1("ID"));
else
QCOMPARE(index.fieldName(0), QString::fromLatin1("id"));
@@ -199,14 +199,14 @@ void tst_QSqlDriver::primaryIndex()
//check that we can not get the primary index using a quoted but incorrect table name casing
- if (dbType == QSqlDriverPrivate::Interbase || dbType == QSqlDriverPrivate::Oracle || dbType == QSqlDriverPrivate::DB2)
+ if (dbType == QSqlDriver::Interbase || dbType == QSqlDriver::Oracle || dbType == QSqlDriver::DB2)
tablename = tablename.toLower();
- else if (dbType == QSqlDriverPrivate::PostgreSQL)
+ else if (dbType == QSqlDriver::PostgreSQL)
tablename = tablename.toUpper();
index = db.driver()->primaryIndex(db.driver()->escapeIdentifier(tablename, QSqlDriver::TableName));
- if (dbType == QSqlDriverPrivate::MySqlServer || dbType == QSqlDriverPrivate::SQLite || dbType == QSqlDriverPrivate::Sybase
- || dbType == QSqlDriverPrivate::MSSqlServer || tst_Databases::isMSAccess(db))
+ if (dbType == QSqlDriver::MySqlServer || dbType == QSqlDriver::SQLite || dbType == QSqlDriver::Sybase
+ || dbType == QSqlDriver::MSSqlServer || tst_Databases::isMSAccess(db))
QCOMPARE(index.count(), 1); //mysql will always find the table name regardless of casing
else
QCOMPARE(index.count(), 0);