From 5caf80875067aab69c83f84e40d84e5307b24b01 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 14 Oct 2022 18:02:13 +0200 Subject: [PATCH] SQL/tests: fix tst_qsqlquery MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix two tests which got broken due to the latest changes without notifying because those tests are not run automatically. Change-Id: Ibe9d9601f0a2ad4ce8f06ca21e7503e77fa55781 Reviewed-by: Fredrik Ă…lund Reviewed-by: Volker Hilsheimer --- .../auto/sql/kernel/qsqldatabase/tst_databases.h | 16 ++++++++++++++++ .../auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp | 8 ++++---- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h index 5b0283d285..55b11bf7c6 100644 --- a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h +++ b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h @@ -437,6 +437,22 @@ public: return QLatin1String("datetime"); } + static QString timeTypeName(QSqlDatabase db) + { + const QSqlDriver::DbmsType dbType = tst_Databases::getDatabaseType(db); + if (dbType == QSqlDriver::Oracle && getOraVersion(db) >= 9) + return QLatin1String("timestamp(0)"); + return QLatin1String("time"); + } + + static QString dateTypeName(QSqlDatabase db) + { + const QSqlDriver::DbmsType dbType = tst_Databases::getDatabaseType(db); + if (dbType == QSqlDriver::Oracle && getOraVersion(db) >= 9) + return QLatin1String("timestamp(0)"); + return QLatin1String("date"); + } + static QString autoFieldName( QSqlDatabase db ) { const QSqlDriver::DbmsType dbType = tst_Databases::getDatabaseType(db); diff --git a/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp b/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp index 510945e8b6..7379e19ff8 100644 --- a/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp +++ b/tests/auto/sql/kernel/qsqlquery/tst_qsqlquery.cpp @@ -1785,9 +1785,9 @@ void tst_QSqlQuery::writeNull() QMultiHash nullableTypes = { {"varchar(20)", u"not null"_s}, {"varchar(20)", "not null"_ba}, - {"date", QDateTime::currentDateTime()}, - {"date", QDate::currentDate()}, - {"date", QTime::currentTime()}, + {tst_Databases::dateTimeTypeName(db), QDateTime::currentDateTime()}, + {tst_Databases::dateTypeName(db), QDate::currentDate()}, + {tst_Databases::timeTypeName(db), QTime::currentTime()}, }; if (dbType == QSqlDriver::PostgreSQL) nullableTypes["uuid"] = QUuid::createUuid(); @@ -3827,7 +3827,7 @@ void tst_QSqlQuery::QTBUG_5251() tst_Databases::safeDropTable(db, timetest); QSqlQuery q(db); QVERIFY_SQL(q, exec(QLatin1String("CREATE TABLE %1 (t TIME)").arg(timetest))); - QVERIFY_SQL(q, exec(QLatin1String("INSERT INTO VALUES ('1:2:3.666')").arg(timetest))); + QVERIFY_SQL(q, exec(QLatin1String("INSERT INTO %1 VALUES ('1:2:3.666')").arg(timetest))); QSqlTableModel timetestModel(0, db); timetestModel.setEditStrategy(QSqlTableModel::OnManualSubmit);