summaryrefslogtreecommitdiff
path: root/src/plugins/autotest/quick/quicktestparser.cpp
diff options
context:
space:
mode:
authorFawzi Mohamed <fawzi.mohamed@qt.io>2022-06-20 12:35:13 +0200
committerTim Jenssen <tim.jenssen@qt.io>2022-07-13 17:13:23 +0000
commitfd89043de2f8de1588ee61514170e0168e13e238 (patch)
tree8a9dedc64d065bc8c5a076607421adf636c0177a /src/plugins/autotest/quick/quicktestparser.cpp
parent0bb272d41112dcdc3a92c8b6320294c415d630e5 (diff)
downloadqt-creator-fd89043de2f8de1588ee61514170e0168e13e238.tar.gz
qmljs: (QString -> Utils::FilePath)++
convert more QString containing paths to Utils::FilePath Change-Id: I1219d7d147993e48cfa641dc9bea72ab38c90f51 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Diffstat (limited to 'src/plugins/autotest/quick/quicktestparser.cpp')
-rw-r--r--src/plugins/autotest/quick/quicktestparser.cpp35
1 files changed, 22 insertions, 13 deletions
diff --git a/src/plugins/autotest/quick/quicktestparser.cpp b/src/plugins/autotest/quick/quicktestparser.cpp
index 2cbb786872..e6b24f7275 100644
--- a/src/plugins/autotest/quick/quicktestparser.cpp
+++ b/src/plugins/autotest/quick/quicktestparser.cpp
@@ -172,37 +172,45 @@ QString QuickTestParser::quickTestName(const CPlusPlus::Document::Ptr &doc) cons
return {};
}
-QList<Document::Ptr> QuickTestParser::scanDirectoryForQuickTestQmlFiles(const QString &srcDir)
+QList<Document::Ptr> QuickTestParser::scanDirectoryForQuickTestQmlFiles(const Utils::FilePath &srcDir)
{
- QStringList dirs(srcDir);
+ Utils::FilePaths dirs({srcDir});
+ QStringList dirsStr({srcDir.toString()});
ModelManagerInterface *qmlJsMM = QmlJSTools::Internal::ModelManager::instance();
// make sure even files not listed in pro file are available inside the snapshot
QFutureInterface<void> future;
PathsAndLanguages paths;
- paths.maybeInsert(Utils::FilePath::fromString(srcDir), Dialect::Qml);
+ paths.maybeInsert(srcDir, Dialect::Qml);
ModelManagerInterface::importScan(future, ModelManagerInterface::workingCopy(), paths, qmlJsMM,
false /*emitDocumentChanges*/, false /*onlyTheLib*/, true /*forceRescan*/ );
const Snapshot snapshot = QmlJSTools::Internal::ModelManager::instance()->snapshot();
- QDirIterator it(srcDir, QDir::Dirs | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
+
+ QDirIterator it(srcDir.toString(),
+ QDir::Dirs | QDir::NoDotAndDotDot,
+ QDirIterator::Subdirectories);
while (it.hasNext()) {
it.next();
- QFileInfo fi(it.fileInfo().canonicalFilePath());
- dirs.append(fi.filePath());
+ auto subDir = Utils::FilePath::fromFileInfo(it.fileInfo()).canonicalPath();
+ dirs.append(subDir);
+ dirsStr.append(subDir.toString());
}
- QMetaObject::invokeMethod(this, [this, dirs] { QuickTestParser::doUpdateWatchPaths(dirs); },
- Qt::QueuedConnection);
+ QMetaObject::invokeMethod(
+ this,
+ [this, dirsStr] { QuickTestParser::doUpdateWatchPaths(dirsStr); },
+ Qt::QueuedConnection);
QList<Document::Ptr> foundDocs;
- for (const QString &path : qAsConst(dirs)) {
+ for (const Utils::FilePath &path : qAsConst(dirs)) {
const QList<Document::Ptr> docs = snapshot.documentsInDirectory(path);
for (const Document::Ptr &doc : docs) {
- const QFileInfo fi(doc->fileName());
+ Utils::FilePath fi = doc->fileName();
+ //const QFileInfo fi(doc->fileName());
// using working copy above might provide no more existing files
if (!fi.exists())
continue;
- const QString fileName(fi.fileName());
+ const QString fileName = fi.fileName();
if (fileName.startsWith("tst_") && fileName.endsWith(".qml"))
foundDocs << doc;
}
@@ -273,7 +281,8 @@ bool QuickTestParser::handleQtQuickTest(QFutureInterface<TestParseResultPtr> &fu
const Utils::FilePath cppFileName = Utils::FilePath::fromString(document->fileName());
const Utils::FilePath proFile = Utils::FilePath::fromString(ppList.at(0)->projectFile);
m_mainCppFiles.insert(cppFileName, proFile);
- const QString srcDir = quickTestSrcDir(modelManager, cppFileName);
+ const Utils::FilePath srcDir = Utils::FilePath::fromString(
+ quickTestSrcDir(modelManager, cppFileName));
if (srcDir.isEmpty())
return false;
@@ -383,7 +392,7 @@ bool QuickTestParser::processDocument(QFutureInterface<TestParseResultPtr> &futu
const Utils::FilePath &proFile = m_proFilesForQmlFiles.value(fileName);
if (proFile.isEmpty())
return false;
- Document::Ptr qmlJSDoc = m_qmlSnapshot.document(fileName.toString());
+ Document::Ptr qmlJSDoc = m_qmlSnapshot.document(fileName);
return checkQmlDocumentForQuickTestCode(futureInterface, qmlJSDoc, framework(), proFile);
}
if (!m_cppSnapshot.contains(fileName) || !selectedForBuilding(fileName))