diff options
| author | Andy Shaw <andy.shaw@digia.com> | 2013-03-30 19:55:25 +0100 |
|---|---|---|
| committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-04-02 19:02:26 +0200 |
| commit | 406c8ef6e67da5505c7404a2517a8b4204d7c38a (patch) | |
| tree | 1257c680456e3fa4e386995f7703096982863ac0 /tests/auto/sql/kernel/qsqldatabase/tst_databases.h | |
| parent | dcf9c403ba8e903bb52a6fb656c7e2de23383c10 (diff) | |
Move the dbmstype to QSqlDriverPrivate so it can be used for all drivers
By moving it to QSqlDriverPrivate we make it easier to check what
database is actually connected which is particularly useful for the
autotests.
Change-Id: I54d1c2c998919c1d54efb1b6ac9303070ece54aa
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Diffstat (limited to 'tests/auto/sql/kernel/qsqldatabase/tst_databases.h')
| -rw-r--r-- | tests/auto/sql/kernel/qsqldatabase/tst_databases.h | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h index 9d3523576f7..0eb3ba8c220 100644 --- a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h +++ b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h @@ -52,7 +52,7 @@ #include <QVariant> #include <QDebug> #include <QSqlTableModel> - +#include <QtSql/private/qsqldriver_p.h> #include <QtTest/QtTest> #if defined (Q_OS_WIN) || defined (Q_OS_WIN32) @@ -510,11 +510,8 @@ public: static bool isSqlServer( QSqlDatabase db ) { - return db.databaseName().contains( "sql server", Qt::CaseInsensitive ) - || db.databaseName().contains( "sqlserver", Qt::CaseInsensitive ) - || db.databaseName().contains( "sql native client", Qt::CaseInsensitive ) - || db.databaseName().contains( "bq-winserv", Qt::CaseInsensitive ) - || db.hostName().contains( "bq-winserv", Qt::CaseInsensitive ); + QSqlDriverPrivate *d = static_cast<QSqlDriverPrivate *>(QObjectPrivate::get(db.driver())); + return d->dbmsType == QSqlDriverPrivate::MSSqlServer; } static bool isMSAccess( QSqlDatabase db ) @@ -524,16 +521,19 @@ public: static bool isPostgreSQL( QSqlDatabase db ) { - return db.driverName().startsWith("QPSQL") || (db.driverName().startsWith("QODBC") && ( db.databaseName().contains("PostgreSQL", Qt::CaseInsensitive) || db.databaseName().contains("pgsql", Qt::CaseInsensitive) ) ); + QSqlDriverPrivate *d = static_cast<QSqlDriverPrivate *>(QObjectPrivate::get(db.driver())); + return d->dbmsType == QSqlDriverPrivate::PostgreSQL; } static bool isMySQL( QSqlDatabase db ) { - return db.driverName().startsWith("QMYSQL") || (db.driverName().startsWith("QODBC") && db.databaseName().contains("MySQL", Qt::CaseInsensitive) ); + QSqlDriverPrivate *d = static_cast<QSqlDriverPrivate *>(QObjectPrivate::get(db.driver())); + return d->dbmsType == QSqlDriverPrivate::MySqlServer; } static bool isDB2( QSqlDatabase db ) { - return db.driverName().startsWith("QDB2") || (db.driverName().startsWith("QODBC") && db.databaseName().contains("db2", Qt::CaseInsensitive) ); + QSqlDriverPrivate *d = static_cast<QSqlDriverPrivate *>(QObjectPrivate::get(db.driver())); + return d->dbmsType == QSqlDriverPrivate::DB2; } // -1 on fail, else Oracle version |
