summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Bubke <marco.bubke@qt.io>2023-04-25 11:30:58 +0200
committerTim Jenssen <tim.jenssen@qt.io>2023-04-26 18:53:56 +0000
commitc855a6bd480918ff3c34f765249d764a7d3ffd7d (patch)
tree1fc030d34007310373e3e140610050aa3c20bb99
parent4761b76a1c28f7b05d72434c8765b32e9c963c9d (diff)
downloadqt-creator-c855a6bd480918ff3c34f765249d764a7d3ffd7d.tar.gz
QmlDesigner: Fix version scanning
Switch was missing. Change-Id: I5d87e624f698b9f59fe57cf49cafef4e6d08eca2 Reviewed-by: Marco Bubke <marco.bubke@qt.io> Reviewed-by: Aleksei German <aleksei.german@qt.io> (cherry picked from commit 45cf905b295b311c614e8c62e0f9a42f97c98fe5) Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
-rw-r--r--src/plugins/qmldesigner/designercore/projectstorage/modulescanner.cpp7
-rw-r--r--tests/unit/unittest/modulescanner-test.cpp13
2 files changed, 18 insertions, 2 deletions
diff --git a/src/plugins/qmldesigner/designercore/projectstorage/modulescanner.cpp b/src/plugins/qmldesigner/designercore/projectstorage/modulescanner.cpp
index 2210f0732b..56822dce06 100644
--- a/src/plugins/qmldesigner/designercore/projectstorage/modulescanner.cpp
+++ b/src/plugins/qmldesigner/designercore/projectstorage/modulescanner.cpp
@@ -70,8 +70,11 @@ void ModuleScanner::scan([[maybe_unused]] std::string_view modulePath)
if (moduleName.isEmpty() || m_skip(moduleName))
continue;
- m_modules.push_back(
- Import::createLibraryImport(moduleName, createVersion(parser.components())));
+ QString version = m_versionScanning == VersionScanning::Yes
+ ? createVersion(parser.components())
+ : QString{};
+
+ m_modules.push_back(Import::createLibraryImport(moduleName, version));
}
}
diff --git a/tests/unit/unittest/modulescanner-test.cpp b/tests/unit/unittest/modulescanner-test.cpp
index 92d7959916..062256408e 100644
--- a/tests/unit/unittest/modulescanner-test.cpp
+++ b/tests/unit/unittest/modulescanner-test.cpp
@@ -79,6 +79,19 @@ TEST_F(ModuleScanner, Version)
ASSERT_THAT(scanner.modules(), ElementsAre(AllOf(UrlProperty("Example"), VersionProperty("1.3"))));
}
+TEST_F(ModuleScanner, NoVersion)
+{
+ QmlDesigner::ModuleScanner scanner{[](QStringView moduleName) {
+ return moduleName.endsWith(u"impl");
+ },
+ QmlDesigner::VersionScanning::No};
+
+ scanner.scan(QStringList{TESTDATA_DIR "/modulescanner"});
+
+ ASSERT_THAT(scanner.modules(),
+ ElementsAre(AllOf(UrlProperty("Example"), VersionProperty(QString{}))));
+}
+
TEST_F(ModuleScanner, Duplicates)
{
scanner.scan(QStringList{QT6_INSTALL_PREFIX});