From a2136a073e9884b17c2147218960c886b9d4b083 Mon Sep 17 00:00:00 2001 From: Ahmad Samir Date: Sun, 10 Mar 2024 12:06:00 +0200 Subject: [PATCH] QDir{Iterator,Listing}: fix unittest MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit QEXTRACTTESTDATA returns a QSharedPointer, so the member variable has to be of that type so that all code paths work. Amends 986b5b4f47cdac71bb66784abc50d4fff695984d (QDirIterator) and c39a0d1e8956e042139ce3065681e4c5d07412f3 (QDirListing). Change-Id: Ie4b76687125f0506a2c899acca222123f0b1c44a Reviewed-by: Edward Welbourne Reviewed-by: MÃ¥rten Nordheim --- .../corelib/io/qdiriterator/tst_qdiriterator.cpp | 12 ++++++------ .../auto/corelib/io/qdirlisting/tst_qdirlisting.cpp | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp b/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp index 8f842e7c11..e4d0b88d2d 100644 --- a/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp +++ b/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp @@ -87,13 +87,14 @@ private slots: #endif private: - QTemporaryDir m_dataDir; + QSharedPointer m_dataDir; }; void tst_QDirIterator::initTestCase() { + QString testdata_dir; #ifdef Q_OS_ANDROID - QString testdata_dir = QStandardPaths::writableLocation(QStandardPaths::CacheLocation); + testdata_dir = QStandardPaths::writableLocation(QStandardPaths::CacheLocation); QString resourceSourcePath = QStringLiteral(":/testdata"); QDirIterator it(resourceSourcePath, QDirIterator::Subdirectories); while (it.hasNext()) { @@ -116,11 +117,10 @@ void tst_QDirIterator::initTestCase() #elif defined(BUILTIN_TESTDATA) m_dataDir = QEXTRACTTESTDATA("/testdata"); QVERIFY2(!m_dataDir.isNull(), qPrintable("Could not extract test data")); - QString testdata_dir = m_dataDir->path(); + testdata_dir = m_dataDir->path(); #else - - // chdir into testdata directory, then find testdata by relative paths. - QString testdata_dir = m_dataDir.path(); + m_dataDir.reset(new QTemporaryDir); + testdata_dir = m_dataDir->path(); #endif QVERIFY(!testdata_dir.isEmpty()); diff --git a/tests/auto/corelib/io/qdirlisting/tst_qdirlisting.cpp b/tests/auto/corelib/io/qdirlisting/tst_qdirlisting.cpp index 839060bab5..04ba406831 100644 --- a/tests/auto/corelib/io/qdirlisting/tst_qdirlisting.cpp +++ b/tests/auto/corelib/io/qdirlisting/tst_qdirlisting.cpp @@ -89,13 +89,14 @@ private slots: #endif private: - QTemporaryDir m_dataDir; + QSharedPointer m_dataDir; }; void tst_QDirListing::initTestCase() { + QString testdata_dir; #ifdef Q_OS_ANDROID - QString testdata_dir = QStandardPaths::writableLocation(QStandardPaths::CacheLocation); + testdata_dir = QStandardPaths::writableLocation(QStandardPaths::CacheLocation); QString resourceSourcePath = QStringLiteral(":/testdata"); for (const auto &dirEntry : QDirListing(resourceSourcePath, ItFlag::Recursive)) { if (!dirEntry.isDir()) { @@ -116,11 +117,10 @@ void tst_QDirListing::initTestCase() #elif defined(BUILTIN_TESTDATA) m_dataDir = QEXTRACTTESTDATA("/testdata"); QVERIFY2(!m_dataDir.isNull(), qPrintable("Could not extract test data")); - QString testdata_dir = m_dataDir->path(); + testdata_dir = m_dataDir->path(); #else - - // chdir into testdata directory, then find testdata by relative paths. - QString testdata_dir = m_dataDir.path(); + m_dataDir.reset(new QTemporaryDir); + testdata_dir = m_dataDir->path(); #endif QVERIFY(!testdata_dir.isEmpty());