QDirListing: extend unittests to using the class with STL algorithms

Change-Id: I5f4021d50a5791cfe1a6a71c0bb7cf90dd0c9e6c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
Ahmad Samir 2024-05-30 03:25:34 +03:00
parent b37c0d7c6c
commit 1c43f2fba9

View File

@ -89,6 +89,8 @@ private slots:
void hiddenDirs();
#endif
void withStdAlgorithms();
private:
QSharedPointer<QTemporaryDir> m_dataDir;
};
@ -627,6 +629,22 @@ void tst_QDirListing::hiddenDirs()
#endif // Q_OS_WIN
void tst_QDirListing::withStdAlgorithms()
{
QDirListing dirList(u"entrylist"_s, QDir::AllEntries | QDir::NoDotAndDotDot, ItFlag::Recursive);
std::for_each(dirList.cbegin(), dirList.cend(), [](const auto &dirEntry) {
QVERIFY(dirEntry.absoluteFilePath().contains("entrylist"));
});
const auto fileName = "dummy"_L1;
auto it = std::find_if(dirList.cbegin(), dirList.cend(), [fileName](const auto &dirEntry) {
return dirEntry.fileName() == fileName;
});
QVERIFY(it != dirList.cend());
QCOMPARE(it->fileName(), fileName);
}
QTEST_MAIN(tst_QDirListing)
#include "tst_qdirlisting.moc"