diff --git a/src/plugins/mcusupport/mcusupport_global.h b/src/plugins/mcusupport/mcusupport_global.h index 159f1453ead..183f88bffaf 100644 --- a/src/plugins/mcusupport/mcusupport_global.h +++ b/src/plugins/mcusupport/mcusupport_global.h @@ -46,8 +46,9 @@ using McuPackagePtr = QSharedPointer; using McuToolChainPackagePtr = QSharedPointer; using McuTargetPtr = QSharedPointer; +static const QVersionNumber minimalVersion{2, 0, 0}; +static const QVersionNumber newVersion{2, 2}; using Targets = QList; using Packages = QSet; -static const QVersionNumber legacyVersion{2, 0, 0}; } // namespace McuSupport::Internal diff --git a/src/plugins/mcusupport/mcusupportoptions.cpp b/src/plugins/mcusupport/mcusupportoptions.cpp index 00cfde16d85..51a30723853 100644 --- a/src/plugins/mcusupport/mcusupportoptions.cpp +++ b/src/plugins/mcusupport/mcusupportoptions.cpp @@ -114,7 +114,12 @@ void McuSupportOptions::registerExamples() const QVersionNumber &McuSupportOptions::minimalQulVersion() { - return legacyVersion; + return minimalVersion; +} + +bool McuSupportOptions::isLegacyVersion(const QVersionNumber &version) +{ + return version < newVersion; } void McuSupportOptions::setQulDir(const FilePath &dir) diff --git a/src/plugins/mcusupport/mcusupportoptions.h b/src/plugins/mcusupport/mcusupportoptions.h index 351dcbc34f6..0f11b0d705c 100644 --- a/src/plugins/mcusupport/mcusupportoptions.h +++ b/src/plugins/mcusupport/mcusupportoptions.h @@ -76,6 +76,7 @@ public: static void registerExamples(); static const QVersionNumber &minimalQulVersion(); + static bool isLegacyVersion(const QVersionNumber &version); void checkUpgradeableKits(); void populatePackagesAndTargets(); diff --git a/src/plugins/mcusupport/mcusupportsdk.cpp b/src/plugins/mcusupport/mcusupportsdk.cpp index 4cce7095757..a18f13b0cc7 100644 --- a/src/plugins/mcusupport/mcusupportsdk.cpp +++ b/src/plugins/mcusupport/mcusupportsdk.cpp @@ -589,8 +589,7 @@ bool checkDeprecatedSdkError(const Utils::FilePath &qulDir, QString &message) McuSdkRepository targetsAndPackages(const Utils::FilePath &dir) { QList descriptions; - - bool isLegacy = false; + bool isLegacy{false}; auto descriptionFiles = targetDescriptionFiles(dir); for (const QFileInfo &fileInfo : descriptionFiles) { @@ -610,8 +609,7 @@ McuSdkRepository targetsAndPackages(const Utils::FilePath &dir) } const auto qulVersion{QVersionNumber::fromString(desc.qulVersion)}; - if (qulVersion == McuSupportOptions::minimalQulVersion()) - isLegacy = true; + isLegacy = McuSupportOptions::isLegacyVersion(qulVersion); if (qulVersion < McuSupportOptions::minimalQulVersion()) { const QString legacyVersion = legacySupportVersionFor(desc.qulVersion); diff --git a/src/plugins/mcusupport/test/unittest.cpp b/src/plugins/mcusupport/test/unittest.cpp index bd357f2e2aa..d3d24d0b342 100644 --- a/src/plugins/mcusupport/test/unittest.cpp +++ b/src/plugins/mcusupport/test/unittest.cpp @@ -316,4 +316,14 @@ void McuSupportTest::test_removeRtosSuffix() QCOMPARE(removeRtosSuffix(freeRtosEnvVar), expectedEnvVarWithoutSuffix); } +void McuSupportTest::test_2dot1UsesLegacyImplementation() +{ + QCOMPARE(McuSupportOptions::isLegacyVersion({2, 1}), true); + QCOMPARE(McuSupportOptions::isLegacyVersion({2, 0}), true); + QCOMPARE(McuSupportOptions::isLegacyVersion({2, 0, 0}), true); + QCOMPARE(McuSupportOptions::isLegacyVersion({2, 0, 1}), true); + QCOMPARE(McuSupportOptions::isLegacyVersion({2, 2, 0}), false); + QCOMPARE(McuSupportOptions::isLegacyVersion({2, 2, 1}), false); +} + } // namespace McuSupport::Internal::Test diff --git a/src/plugins/mcusupport/test/unittest.h b/src/plugins/mcusupport/test/unittest.h index 735df77457e..a2e3a6b7513 100644 --- a/src/plugins/mcusupport/test/unittest.h +++ b/src/plugins/mcusupport/test/unittest.h @@ -62,10 +62,10 @@ private slots: void test_parseCmakeEntries(); void test_removeRtosSuffix_data(); void test_removeRtosSuffix(); + void test_2dot1UsesLegacyImplementation(); private: QVersionNumber currentQulVersion{2, 0}; - const QString id{"target_id"}; const QString name{"target_name"}; const QString vendor{"target_vendor"};