forked from qt-creator/qt-creator
QmlDesigner: improve ModuleScanner
handle empty path and paths better Task-number: QDS-9847 Change-Id: I9dc6f7972835a366a046d06641fbb64494c734fc Reviewed-by: Marco Bubke <marco.bubke@qt.io>
This commit is contained in:
@@ -69,6 +69,9 @@ void ModuleScanner::scan(const QStringList &modulePaths)
|
||||
void ModuleScanner::scan([[maybe_unused]] std::string_view modulePath)
|
||||
{
|
||||
#ifdef QDS_HAS_QMLPRIVATE
|
||||
if (modulePath.empty())
|
||||
return;
|
||||
|
||||
QDirIterator dirIterator{QString::fromUtf8(modulePath),
|
||||
QDir::Dirs | QDir::NoDotAndDotDot,
|
||||
QDirIterator::Subdirectories};
|
||||
|
@@ -65,13 +65,27 @@ protected:
|
||||
externalDependenciesMock};
|
||||
};
|
||||
|
||||
TEST_F(ModuleScanner, ReturnEmptyOptionalForWrongPath)
|
||||
TEST_F(ModuleScanner, ReturnEmptyOptionalForEmptyPath)
|
||||
{
|
||||
scanner.scan(QStringList{""});
|
||||
|
||||
ASSERT_THAT(scanner.modules(), IsEmpty());
|
||||
}
|
||||
|
||||
TEST_F(ModuleScanner, ReturnEmptyOptionalForNullStringPath)
|
||||
{
|
||||
scanner.scan(QStringList{QString{}});
|
||||
|
||||
ASSERT_THAT(scanner.modules(), IsEmpty());
|
||||
}
|
||||
|
||||
TEST_F(ModuleScanner, ReturnEmptyOptionalForEmptyPaths)
|
||||
{
|
||||
scanner.scan(QStringList{});
|
||||
|
||||
ASSERT_THAT(scanner.modules(), IsEmpty());
|
||||
}
|
||||
|
||||
TEST_F(ModuleScanner, GetQtQuick)
|
||||
{
|
||||
scanner.scan(QStringList{qmlModulesPath});
|
||||
|
Reference in New Issue
Block a user