diff options
| author | Christian Ehrlicher <ch.ehrlicher@gmx.de> | 2023-04-07 17:48:14 +0200 |
|---|---|---|
| committer | Christian Ehrlicher <ch.ehrlicher@gmx.de> | 2023-04-15 13:56:21 +0200 |
| commit | d9bd46b2b833ce7cf026e1cd462885bde22f5552 (patch) | |
| tree | 560321a8aa22cccdb51a161370ecedcb524f11d0 /tests/auto/sql/kernel/qsqldatabase/tst_databases.h | |
| parent | db346e711c9af50566c234cfc21199680e6cb499 (diff) | |
SQL/Tests: make sure created procedures are cleaned up on exit
Similar to TableScope - create a helper class to make sure the
procedures are cleaned up on exit so they don't affect the result during
the next test run.
Change-Id: Ic5b02ca63e03f330392797ed22313767557fc548
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 | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h index 4c02a196c83..0debe5d5495 100644 --- a/tests/auto/sql/kernel/qsqldatabase/tst_databases.h +++ b/tests/auto/sql/kernel/qsqldatabase/tst_databases.h @@ -495,5 +495,33 @@ private: QString m_tableName; }; +class ProcScope +{ +public: + ProcScope(const QSqlDatabase &db, const char *procName, const char *file) + : m_db(db), + m_procName(qTableName(procName, file, db)) + { + cleanup(); + } + ~ProcScope() + { + cleanup(); + } + QString name() const + { + return m_procName; + } +protected: + void cleanup() + { + QSqlQuery q(m_db); + q.exec("DROP PROCEDURE IF EXISTS " + m_procName); + } +private: + QSqlDatabase m_db; + const QString m_procName; +}; + #endif |
