diff options
| author | Andy Shaw <andy.shaw@qt.io> | 2020-07-31 13:07:09 +0200 |
|---|---|---|
| committer | Andy Shaw <andy.shaw@qt.io> | 2020-08-23 00:22:04 +0200 |
| commit | 7ec818e74ad1d346f40b17c338de424a0f45fa12 (patch) | |
| tree | e05ac9025e84156abc602d65e780c28a616c554e /tests/auto/sql/kernel/qsqldatabase/tst_databases.h | |
| parent | aa2c6690fdf44422ae1a5edebb35e46d6ffda83c (diff) | |
Interbase: Fix tests when running against Firebird
Change-Id: Ibfcf6b557aed3b0cd2e0ece5cf122819a1acc0c1
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
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, 11 insertions, 7 deletions
diff --git a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h index 174db2863ef..d17c47879d5 100644 --- a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h +++ b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h @@ -67,9 +67,6 @@ static QString qGetHostName() return hostname; } -// to prevent nameclashes on our database server, each machine -// will use its own set of table names. Call this function to get -// "tablename_hostname" inline QString fixupTableName(const QString &tableName, QSqlDatabase db) { QString tbName = tableName; @@ -77,16 +74,21 @@ inline QString fixupTableName(const QString &tableName, QSqlDatabase db) QSqlDriverPrivate *d = static_cast<QSqlDriverPrivate *>(QObjectPrivate::get(db.driver())); if (d && d->dbmsType == QSqlDriver::Oracle) tbName.truncate(30); + // On Interbase we are limited to 31 character tablenames + if (d && d->dbmsType == QSqlDriver::Interbase) + tbName.truncate(31); return tbName; } +// to prevent nameclashes on our database server, each machine +// will use its own set of table names. Call this function to get +// "tablename_hostname" inline static QString qTableName(const QString &prefix, const char *sourceFileName, QSqlDatabase db, bool escape = true) { - const auto tableStr = fixupTableName(QString(QLatin1String("dbtst") + db.driverName() + - QString::number(qHash(QLatin1String(sourceFileName) + - "_" + qGetHostName().replace("-", "_")), 16) + - "_" + prefix), db); + const auto tableStr = fixupTableName(QString(QLatin1String("dbtst") + db.driverName() + "_" + + prefix + QString::number(qHash(QLatin1String(sourceFileName) + + "_" + qGetHostName().replace("-", "_")), 16)), db); return escape ? db.driver()->escapeIdentifier(tableStr, QSqlDriver::TableName) : tableStr; } @@ -452,6 +454,8 @@ public: return QLatin1String("timestamptz"); if (dbType == QSqlDriver::Oracle && getOraVersion(db) >= 9) return QLatin1String("timestamp(0)"); + if (dbType == QSqlDriver::Interbase) + return QLatin1String("timestamp"); return QLatin1String("datetime"); } |
