Plugins: And more Store and Key

After this one, is compiles with the opt-in macro. Not changed yet,
though.

Change-Id: I29a66ecb5daa71d0d97566b81fd9f47d92f6368a
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This commit is contained in:
hjk
2023-08-25 13:19:26 +02:00
parent c9fd5465eb
commit d7d78df9da
46 changed files with 246 additions and 245 deletions

View File

@@ -293,7 +293,7 @@ void verifyTargetToolchains(const Targets &targets,
const QString &toolchainFilePath,
const QString &toolchainFileDefaultPath,
const QString &compilerPath,
const QString &compilerSetting,
const Key &compilerSetting,
const QStringList &versions)
{
QCOMPARE(targets.size(), 1);
@@ -322,7 +322,7 @@ void verifyBoardSdk(const McuPackagePtr &boardSdk,
QVERIFY(boardSdk);
QCOMPARE(boardSdk->cmakeVariableName(), cmakeVariable);
QCOMPARE(boardSdk->environmentVariableName(), environmentVariable);
QCOMPARE(boardSdk->settingsKey(), environmentVariable);
QCOMPARE(boardSdk->settingsKey(), keyFromString(environmentVariable));
QCOMPARE(boardSdk->detectionPath().toString(), empty);
QCOMPARE(boardSdk->versions(), versions);
}
@@ -332,7 +332,7 @@ void verifyFreeRtosPackage(const McuPackagePtr &freeRtos,
const FilePath &boardSdkDir,
const QString &freeRtosPath,
const QString &freeRtosDetectionPath,
const QString &expectedSettingsKey)
const Key &expectedSettingsKey)
{
QVERIFY(freeRtos);
QCOMPARE(freeRtos->environmentVariableName(), envVar);
@@ -346,7 +346,7 @@ void verifyFreeRtosPackage(const McuPackagePtr &freeRtos,
void verifyPackage(const McuPackagePtr &package,
const QString &path,
const QString &defaultPath,
const QString &setting,
const Key &setting,
const QString &cmakeVar,
const QString &envVar,
const QString &label,
@@ -468,7 +468,7 @@ void McuSupportTest::initTestCase()
ON_CALL(*sdkPackage, label()).WillByDefault(Return(QString{QUL_LABEL}));
ON_CALL(*sdkPackage, settingsKey())
.WillByDefault(Return(QString{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}));
.WillByDefault(Return(Key{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}));
ON_CALL(*sdkPackage, environmentVariableName()).WillByDefault(Return(QString{QUL_ENV_VAR}));
ON_CALL(*sdkPackage, cmakeVariableName()).WillByDefault(Return(QString{QUL_CMAKE_VAR}));
ON_CALL(*sdkPackage, isValidStatus()).WillByDefault(Return(true));
@@ -487,7 +487,7 @@ void McuSupportTest::initTestCase()
EXPECT_CALL(*armGccToolchainFilePackage, detectionPath()).WillRepeatedly(Return(FilePath{}));
ON_CALL(*settingsMockPtr, getPath)
.WillByDefault([](const QString &, QSettings::Scope, const FilePath &m_defaultPath) {
.WillByDefault([](const Key &, QSettings::Scope, const FilePath &m_defaultPath) {
return m_defaultPath;
});
}
@@ -685,41 +685,40 @@ void McuSupportTest::test_mapParsedToolchainIdToCorrespondingType()
void McuSupportTest::test_legacy_createPackagesWithCorrespondingSettings_data()
{
QTest::addColumn<QString>("json");
QTest::addColumn<QSet<QString>>("expectedSettings");
QTest::addColumn<QSet<Key>>("expectedSettings");
QSet<QString> commonSettings{{"CypressAutoFlashUtil"},
{"MCUXpressoIDE"},
{"RenesasFlashProgrammer"},
{"Stm32CubeProgrammer"}};
QSet<Key> commonSettings{{"CypressAutoFlashUtil"},
{"MCUXpressoIDE"},
{"RenesasFlashProgrammer"},
{"Stm32CubeProgrammer"}};
QTest::newRow("iar_mimxrt1064_evk_freertos_json")
<< iar_mimxrt1064_evk_freertos_json
<< QSet<QString>{{"EVK_MIMXRT1064_SDK_PATH"},
{QString{Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}.append(
<< QSet<Key>{{"EVK_MIMXRT1064_SDK_PATH"},
{Key{Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}.append(
"IMXRT1064")},
"IARToolchain"}
.unite(commonSettings);
QTest::newRow("stm32f469i") << iar_stm32f469i_discovery_baremetal_json
<< QSet<QString>{{"STM32Cube_FW_F4_SDK_PATH"}, "IARToolchain"}.unite(
<< QSet<Key>{{"STM32Cube_FW_F4_SDK_PATH"}, "IARToolchain"}.unite(
commonSettings);
QTest::newRow("nxp1050") << armgcc_mimxrt1050_evk_freertos_json
<< QSet<QString>{{"EVKB_IMXRT1050_SDK_PATH"},
{QString{
Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}
<< QSet<Key>{{"EVKB_IMXRT1050_SDK_PATH"},
{Key{Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}
.append("IMXRT1050")},
"GNUArmEmbeddedToolchain"}
.unite(commonSettings);
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
<< armgcc_stm32h750b_discovery_baremetal_json
<< QSet<QString>{{"STM32Cube_FW_H7_SDK_PATH"}, "GNUArmEmbeddedToolchain"}.unite(
<< QSet<Key>{{"STM32Cube_FW_H7_SDK_PATH"}, "GNUArmEmbeddedToolchain"}.unite(
commonSettings);
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
<< armgcc_stm32f769i_discovery_freertos_json
<< QSet<QString>{{"STM32Cube_FW_F7_SDK_PATH"}, "GNUArmEmbeddedToolchain"}.unite(
<< QSet<Key>{{"STM32Cube_FW_F7_SDK_PATH"}, "GNUArmEmbeddedToolchain"}.unite(
commonSettings);
QTest::newRow("ghs_rh850_d1m1a_baremetal_json")
<< ghs_rh850_d1m1a_baremetal_json << QSet<QString>{"GHSToolchain"}.unite(commonSettings);
<< ghs_rh850_d1m1a_baremetal_json << QSet<Key>{"GHSToolchain"}.unite(commonSettings);
}
void McuSupportTest::test_legacy_createPackagesWithCorrespondingSettings()
@@ -730,10 +729,10 @@ void McuSupportTest::test_legacy_createPackagesWithCorrespondingSettings()
targetsFromDescriptions({description}, settingsMockPtr, sdkPackagePtr, runLegacy)};
Q_UNUSED(targets);
QSet<QString> settings = transform<QSet<QString>>(packages, [](const auto &package) {
QSet<Key> settings = transform<QSet<Key>>(packages, [](const auto &package) {
return package->settingsKey();
});
QFETCH(QSet<QString>, expectedSettings);
QFETCH(QSet<Key>, expectedSettings);
QVERIFY(settings.contains(expectedSettings));
}
@@ -851,7 +850,7 @@ void McuSupportTest::test_useFallbackPathForToolchainWhenPathFromSettingsIsNotAv
Utils::PathChooser::Kind::ExistingDirectory};
McuTargetDescription::Toolchain toolchainDescription{armGcc, {}, compilerDescription, {}};
EXPECT_CALL(*settingsMockPtr, getPath(QString{armGccDirectorySetting}, _, FilePath{fallbackDir}))
EXPECT_CALL(*settingsMockPtr, getPath(Key{armGccDirectorySetting}, _, FilePath{fallbackDir}))
.Times(2)
.WillRepeatedly(Return(FilePath{fallbackDir}));
@@ -875,7 +874,7 @@ void McuSupportTest::test_usePathFromSettingsForToolchainPath()
Utils::PathChooser::Kind::ExistingDirectory};
McuTargetDescription::Toolchain toolchainDescription{armGcc, {}, compilerDescription, {}};
EXPECT_CALL(*settingsMockPtr, getPath(QString{armGccDirectorySetting}, _, FilePath{empty}))
EXPECT_CALL(*settingsMockPtr, getPath(Key{armGccDirectorySetting}, _, FilePath{empty}))
.Times(2)
.WillOnce(Return(FilePath{empty})) // system scope settings
.WillOnce(Return(FilePath{armGccDir})); // user scope settings
@@ -951,7 +950,7 @@ void McuSupportTest::test_legacy_createTargetWithToolchainPackages_data()
QTest::addColumn<QString>("toolchainFilePath");
QTest::addColumn<QString>("toolchainFileDefaultPath");
QTest::addColumn<QString>("compilerPath");
QTest::addColumn<QString>("compilerSetting");
QTest::addColumn<Key>("compilerSetting");
QTest::addColumn<QStringList>("versions");
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json")
@@ -992,13 +991,13 @@ void McuSupportTest::test_legacy_createTargetWithToolchainPackages()
QFETCH(QString, toolchainFilePath);
QFETCH(QString, toolchainFileDefaultPath);
QFETCH(QString, compilerPath);
QFETCH(QString, compilerSetting);
QFETCH(Key, compilerSetting);
QFETCH(QStringList, versions);
const McuTargetDescription description = parseDescriptionJson(json.toLocal8Bit());
EXPECT_CALL(*settingsMockPtr,
getPath(QString{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}, _, _))
getPath(Key{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}, _, _))
.WillRepeatedly(Return(FilePath::fromUserInput(qtForMcuSdkPath)));
EXPECT_CALL(*settingsMockPtr, getPath(compilerSetting, _, _))
.WillRepeatedly(Return(FilePath::fromUserInput(compilerPath)));
@@ -1026,14 +1025,14 @@ void McuSupportTest::test_createTargetWithToolchainPackages()
QFETCH(QString, toolchainFilePath);
QFETCH(QString, toolchainFileDefaultPath);
QFETCH(QString, compilerPath);
QFETCH(QString, compilerSetting);
QFETCH(Key, compilerSetting);
QFETCH(QStringList, versions);
EXPECT_CALL(*settingsMockPtr, getPath(compilerSetting, _, _))
.WillRepeatedly(Return(FilePath::fromUserInput(compilerPath)));
EXPECT_CALL(*settingsMockPtr,
getPath(QString{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}, _, _))
getPath(Key{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}, _, _))
.WillRepeatedly(Return(FilePath::fromUserInput(qtForMcuSdkPath)));
const McuTargetDescription description = parseDescriptionJson(json.toLocal8Bit());
@@ -1141,7 +1140,7 @@ void McuSupportTest::test_legacy_createFreeRtosPackage_data()
{
QTest::addColumn<QString>("json");
QTest::addColumn<QStringList>("versions");
QTest::addColumn<QString>("expectedSettingsKey");
QTest::addColumn<Key>("expectedSettingsKey");
QTest::addColumn<FilePath>("expectedPath");
QTest::addColumn<FilePath>("expectedDetectionPath");
@@ -1171,7 +1170,7 @@ void McuSupportTest::test_legacy_createFreeRtosPackage()
{
QFETCH(QString, json);
QFETCH(QStringList, versions);
QFETCH(QString, expectedSettingsKey);
QFETCH(Key, expectedSettingsKey);
QFETCH(FilePath, expectedPath);
QFETCH(FilePath, expectedDetectionPath);
@@ -1200,13 +1199,13 @@ void McuSupportTest::test_createFreeRtosPackage()
{
QFETCH(QString, json);
QFETCH(QStringList, versions);
QFETCH(QString, expectedSettingsKey);
QFETCH(Key, expectedSettingsKey);
QFETCH(FilePath, expectedPath);
QFETCH(FilePath, expectedDetectionPath);
McuTargetDescription targetDescription{parseDescriptionJson(json.toLocal8Bit())};
EXPECT_CALL(*settingsMockPtr, getPath(targetDescription.boardSdk.envVar, _, _))
EXPECT_CALL(*settingsMockPtr, getPath(keyFromString(targetDescription.boardSdk.envVar), _, _))
.WillRepeatedly(Return(FilePath::fromString(boardSdkDir)));
auto [targets, packages]{targetFactory.createTargets(targetDescription, sdkPackagePtr)};
@@ -1254,7 +1253,7 @@ void McuSupportTest::test_legacy_doNOTcreateFreeRtosPackageForMetalVariants()
void McuSupportTest::test_legacy_createQtMCUsPackage()
{
EXPECT_CALL(*settingsMockPtr,
getPath(QString{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}, _, _))
getPath(Key{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}, _, _))
.WillRepeatedly(Return(FilePath::fromUserInput(qtForMcuSdkPath)));
McuPackagePtr qtForMCUsSDK = createQtForMCUsPackage(settingsMockPtr);
@@ -1550,13 +1549,13 @@ void McuSupportTest::test_legacy_createThirdPartyPackage()
QFETCH(QString, json);
QFETCH(QString, path);
QFETCH(QString, defaultPath);
QFETCH(QString, setting);
QFETCH(Key, setting);
QFETCH(QString, cmakeVar);
QFETCH(QString, envVar);
QFETCH(QString, label);
QFETCH(QString, detectionPath);
EXPECT_CALL(*settingsMockPtr, getPath(QString{setting}, _, _))
EXPECT_CALL(*settingsMockPtr, getPath(Key{setting}, _, _))
.Times(2)
.WillRepeatedly(Return(FilePath::fromUserInput(defaultPath)));
@@ -1577,7 +1576,7 @@ void McuSupportTest::test_createThirdPartyPackage_data()
QTest::addColumn<QString>("json");
QTest::addColumn<QString>("path");
QTest::addColumn<QString>("defaultPath");
QTest::addColumn<QString>("setting");
QTest::addColumn<Key>("setting");
QTest::addColumn<QString>("cmakeVar");
QTest::addColumn<QString>("envVar");
QTest::addColumn<QString>("label");
@@ -1628,7 +1627,7 @@ void McuSupportTest::test_createThirdPartyPackage()
QFETCH(QString, json);
QFETCH(QString, path);
QFETCH(QString, defaultPath);
QFETCH(QString, setting);
QFETCH(Key, setting);
QFETCH(QString, cmakeVar);
QFETCH(QString, envVar);
QFETCH(QString, label);
@@ -1636,11 +1635,11 @@ void McuSupportTest::test_createThirdPartyPackage()
McuTargetDescription targetDescription{parseDescriptionJson(json.toLocal8Bit())};
EXPECT_CALL(*settingsMockPtr, getPath(QString{setting}, QSettings::SystemScope, _))
EXPECT_CALL(*settingsMockPtr, getPath(Key{setting}, QSettings::SystemScope, _))
.Times(testing::AtMost(1))
.WillOnce(Return(FilePath::fromUserInput(defaultPath)));
EXPECT_CALL(*settingsMockPtr, getPath(QString{setting}, QSettings::UserScope, _))
EXPECT_CALL(*settingsMockPtr, getPath(Key{setting}, QSettings::UserScope, _))
.Times(testing::AtMost(1))
.WillOnce(Return(FilePath::fromUserInput(path)));
@@ -1664,7 +1663,7 @@ void McuSupportTest::test_createThirdPartyPackage()
void McuSupportTest::test_legacy_createCypressProgrammer3rdPartyPackage()
{
EXPECT_CALL(*settingsMockPtr, getPath(QString{cypressProgrammerSetting}, _, _))
EXPECT_CALL(*settingsMockPtr, getPath(Key{cypressProgrammerSetting}, _, _))
.Times(2)
.WillRepeatedly(Return(FilePath::fromUserInput(defaultToolPath)));
@@ -1684,11 +1683,11 @@ void McuSupportTest::test_createJLink3rdPartyPackage()
{
McuTargetDescription targetDescription{parseDescriptionJson(armgcc_ek_ra6m3g_baremetal_json)};
EXPECT_CALL(*settingsMockPtr, getPath(QString{jlinkSetting}, QSettings::SystemScope, _))
EXPECT_CALL(*settingsMockPtr, getPath(Key{jlinkSetting}, QSettings::SystemScope, _))
.Times(testing::AtMost(1))
.WillOnce(Return(FilePath::fromUserInput(jlinkPath)));
EXPECT_CALL(*settingsMockPtr, getPath(QString{jlinkSetting}, QSettings::UserScope, _))
EXPECT_CALL(*settingsMockPtr, getPath(Key{jlinkSetting}, QSettings::UserScope, _))
.Times(testing::AtMost(1))
.WillOnce(Return(FilePath::fromUserInput(jlinkPath)));