diff options
author | Christian Ehrlicher <ch.ehrlicher@gmx.de> | 2023-02-28 21:33:46 +0100 |
---|---|---|
committer | Christian Ehrlicher <ch.ehrlicher@gmx.de> | 2023-03-12 17:21:17 +0100 |
commit | 18bd15a9eac88adb1de1f877b112e255b19353b6 (patch) | |
tree | f85cd9bd37e8cdebc23511e813df16b727d5e8fd /tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp | |
parent | f19320748d282b1e68fc2e3de2b0cf9ec44b49ef (diff) |
SQL/Tests: remove safeDropTable() / add helper class
Add a helper class which makes sure that the used table does not exist
before usage (e.g. due to leftovers from previous tests) and is properly
cleaned up on exit. This also allows to remove all usages of
safeDropTable().
Change-Id: Iefeffbd10e2f2f67985183ea822d7b6dd2b80be7
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp')
-rw-r--r-- | tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp b/tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp index 2a9bc05294..56bc32d2b0 100644 --- a/tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp +++ b/tests/auto/sql/models/qsqltablemodel/tst_qsqltablemodel.cpp @@ -1939,14 +1939,16 @@ void tst_QSqlTableModel::sqlite_attachedDatabase() attachedDb.setDatabaseName(db.databaseName()+QLatin1String("attached.dat")); QVERIFY_SQL(attachedDb, open()); QSqlQuery q(attachedDb); - tst_Databases::safeDropTables(attachedDb, QStringList() << "atest" << "atest2"); + TableScope ts(db, "atest", __FILE__); + TableScope tsAttached(attachedDb, "atest", __FILE__); + TableScope tsAttached2(attachedDb, "atest2", __FILE__); + QVERIFY_SQL( q, exec("CREATE TABLE atest(id int, text varchar(20))")); QVERIFY_SQL( q, exec("CREATE TABLE atest2(id int, text varchar(20))")); QVERIFY_SQL( q, exec("INSERT INTO atest VALUES(1, 'attached-atest')")); QVERIFY_SQL( q, exec("INSERT INTO atest2 VALUES(2, 'attached-atest2')")); QSqlQuery q2(db); - tst_Databases::safeDropTable(db, "atest"); QVERIFY_SQL(q2, exec("CREATE TABLE atest(id int, text varchar(20))")); QVERIFY_SQL(q2, exec("INSERT INTO atest VALUES(3, 'main')")); QVERIFY_SQL(q2, exec("ATTACH DATABASE \""+attachedDb.databaseName()+"\" as adb")); @@ -2137,29 +2139,27 @@ void tst_QSqlTableModel::sqlite_selectFromIdentifierWithDot() { QFETCH(QString, dbName); QSqlDatabase db = QSqlDatabase::database(dbName); + TableScope fieldDot(db, "fieldDot", __FILE__); + TableScope tableDot(db, u'[' + qTableName("table.dot", __FILE__, db) + u']'); CHECK_DATABASE(db); { - const auto fieldDot = qTableName("fieldDot", __FILE__, db); - tst_Databases::safeDropTable(db, fieldDot); QSqlQuery qry(db); - QVERIFY_SQL(qry, exec("create table " + fieldDot + " (id int primary key, " + QVERIFY_SQL(qry, exec("create table " + fieldDot.tableName() + " (id int primary key, " "\"person.firstname\" varchar(20))")); - QVERIFY_SQL(qry, exec("insert into " + fieldDot + " values(1, 'Andy')")); + QVERIFY_SQL(qry, exec("insert into " + fieldDot.tableName() + " values(1, 'Andy')")); QSqlTableModel model(0, db); - model.setTable(fieldDot); + model.setTable(fieldDot.tableName()); QVERIFY_SQL(model, select()); QCOMPARE(model.data(model.index(0, 0)).toInt(), 1); QCOMPARE(model.data(model.index(0, 1)).toString(), QString("Andy")); } - const auto tableDot = QLatin1Char('[') + qTableName("table.dot", __FILE__, db) + QLatin1Char(']'); { - tst_Databases::safeDropTable(db, tableDot); QSqlQuery qry(db); - QVERIFY_SQL(qry, exec("create table " + tableDot + " (id int primary key, " + QVERIFY_SQL(qry, exec("create table " + tableDot.tableName() + " (id int primary key, " "\"person.firstname\" varchar(20))")); - QVERIFY_SQL(qry, exec("insert into " + tableDot + " values(1, 'Andy')")); + QVERIFY_SQL(qry, exec("insert into " + tableDot.tableName() + " values(1, 'Andy')")); QSqlTableModel model(0, db); - model.setTable(tableDot); + model.setTable(tableDot.tableName()); QVERIFY_SQL(model, select()); QCOMPARE(model.data(model.index(0, 0)).toInt(), 1); QCOMPARE(model.data(model.index(0, 1)).toString(), QString("Andy")); @@ -2171,7 +2171,7 @@ void tst_QSqlTableModel::sqlite_selectFromIdentifierWithDot() QSqlQuery qry(attachedDb); QVERIFY_SQL(qry, exec(QString("attach '%1' AS 'attached'").arg(db.databaseName()))); QSqlTableModel model(0, attachedDb); - model.setTable(QString("attached.%1").arg(tableDot)); + model.setTable(QString("attached.%1").arg(tableDot.tableName())); QVERIFY_SQL(model, select()); QCOMPARE(model.data(model.index(0, 0)).toInt(), 1); QCOMPARE(model.data(model.index(0, 1)).toString(), QString("Andy")); |