summaryrefslogtreecommitdiffstats
path: root/tests/benchmarks
diff options
context:
space:
mode:
authorEdward Welbourne <edward.welbourne@qt.io>2021-07-20 16:13:30 +0200
committerEdward Welbourne <edward.welbourne@qt.io>2021-07-23 20:35:02 +0200
commit415457302b20e981354eefb880757305c6b5d629 (patch)
treed95fe099a98a26039a6214cf4489a89c40695006 /tests/benchmarks
parent54e50792da0a7e60893879e43a4adff93652ec57 (diff)
Select PostgreSQL-only data, rather than filtering in the test
Two QSqlRecord benchmarks that are only relevant for PostgreSQL were being run for all backends, without producing useful results for the others. Since the test is data-driven and the generic data-table code can take a backend-name to decide which to include, pass a suitable string to the generic data method instead, so that we now simply skip these tests (and say we're doing so) rather than "passing" them. Change-Id: I2223c16007a7095a9cadd13a9b2d46813507a35f Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Diffstat (limited to 'tests/benchmarks')
-rw-r--r--tests/benchmarks/sql/kernel/qsqlrecord/tst_bench_qsqlrecord.cpp36
1 files changed, 17 insertions, 19 deletions
diff --git a/tests/benchmarks/sql/kernel/qsqlrecord/tst_bench_qsqlrecord.cpp b/tests/benchmarks/sql/kernel/qsqlrecord/tst_bench_qsqlrecord.cpp
index 3b6ee93ff3..8bf4710cca 100644
--- a/tests/benchmarks/sql/kernel/qsqlrecord/tst_bench_qsqlrecord.cpp
+++ b/tests/benchmarks/sql/kernel/qsqlrecord/tst_bench_qsqlrecord.cpp
@@ -50,9 +50,9 @@ public slots:
private slots:
void benchmarkRecord_data() { generic_data(); }
void benchmarkRecord();
- void benchFieldName_data() { generic_data(); }
+ void benchFieldName_data() { generic_data("QPSQL"); }
void benchFieldName();
- void benchFieldIndex_data() { generic_data(); }
+ void benchFieldIndex_data() { generic_data("QPSQL"); }
void benchFieldIndex();
private:
@@ -199,14 +199,13 @@ void tst_QSqlRecord::benchFieldName()
{
QFETCH(QString, dbName);
QSqlDatabase db = QSqlDatabase::database(dbName);
- if (tst_Databases::getDatabaseType(db) == QSqlDriver::PostgreSQL) {
- QSqlQuery qry(db);
- QVERIFY_SQL(qry, exec("SELECT GENERATE_SERIES(1,5000) AS r"));
- QBENCHMARK {
- while (qry.next())
- qry.value("r");
- QVERIFY(qry.seek(0));
- }
+ QCOMPARE(tst_Databases::getDatabaseType(db), QSqlDriver::PostgreSQL);
+ QSqlQuery qry(db);
+ QVERIFY_SQL(qry, exec("SELECT GENERATE_SERIES(1,5000) AS r"));
+ QBENCHMARK {
+ while (qry.next())
+ qry.value("r");
+ QVERIFY(qry.seek(0));
}
}
@@ -214,15 +213,14 @@ void tst_QSqlRecord::benchFieldIndex()
{
QFETCH(QString, dbName);
QSqlDatabase db = QSqlDatabase::database(dbName);
- if (tst_Databases::getDatabaseType(db) == QSqlDriver::PostgreSQL) {
- QSqlQuery qry(db);
- QVERIFY_SQL(qry, exec("SELECT GENERATE_SERIES(1,5000) AS r"));
- qry = db.exec("SELECT GENERATE_SERIES(1,5000) AS r");
- QBENCHMARK {
- while (qry.next())
- qry.value(0);
- QVERIFY(qry.seek(0));
- }
+ QCOMPARE(tst_Databases::getDatabaseType(db), QSqlDriver::PostgreSQL);
+ QSqlQuery qry(db);
+ QVERIFY_SQL(qry, exec("SELECT GENERATE_SERIES(1,5000) AS r"));
+ qry = db.exec("SELECT GENERATE_SERIES(1,5000) AS r");
+ QBENCHMARK {
+ while (qry.next())
+ qry.value(0);
+ QVERIFY(qry.seek(0));
}
}