McuSupport: Tests overhaul, mocks verification

Change-Id: I710a58b987c501dfff1102a6e3361981df4fdaee
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
Piotr Mućko
2022-04-29 10:58:34 +02:00
parent 0114f3acd6
commit 4fde5f11ce
2 changed files with 19 additions and 18 deletions

View File

@@ -38,8 +38,8 @@
#include "mcukitmanager.h"
#include "mculegacyconstants.h"
#include "mcusupportconstants.h"
#include "mcusupportsdk.h"
#include "mcusupportoptions.h"
#include "mcusupportsdk.h"
#include "mcutargetdescription.h"
#include "mcutargetfactorylegacy.h"
@@ -73,6 +73,7 @@ const char armGccLabel[]{"GNU Arm Embedded Toolchain"};
const char armGccToolchainFilePath[]{"/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/armgcc.cmake"};
const char armGcc[]{"armgcc"};
const char cmakeToolchainLabel[]{"CMake Toolchain File"};
const char fallbackDir[]{"/abc/def/fallback"};
const char freeRtosCMakeVar[]{"FREERTOS_DIR"};
const char freeRtosDescription[]{"Freertos directory"};
const char freeRtosEnvVar[]{"EVK_MIMXRT1170_FREERTOS_PATH"};
@@ -246,6 +247,7 @@ McuSupportTest::McuSupportTest()
armGccToolchainFilePackagePtr}
{
testing::Mock::AllowLeak(settingsMockPtr.get());
testing::FLAGS_gmock_verbose = "error";
}
void McuSupportTest::initTestCase()
@@ -291,6 +293,18 @@ void McuSupportTest::initTestCase()
});
}
void McuSupportTest::init()
{
qDebug() << __func__;
}
void McuSupportTest::cleanup()
{
QVERIFY(testing::Mock::VerifyAndClearExpectations(settingsMockPtr.get()));
QVERIFY(testing::Mock::VerifyAndClearExpectations(freeRtosPackage));
QVERIFY(testing::Mock::VerifyAndClearExpectations(sdkPackage));
}
void McuSupportTest::test_parseBasicInfoFromJson()
{
const auto description = Sdk::parseDescriptionJson(iar_nxp_1064_json);
@@ -304,8 +318,8 @@ void McuSupportTest::test_parseCmakeEntries()
const auto description{Sdk::parseDescriptionJson(iar_nxp_1064_json)};
QVERIFY(!description.freeRTOS.packages.isEmpty());
auto &freeRtosPackage = description.freeRTOS.packages[0];
QCOMPARE(freeRtosPackage.envVar, nxp1064FreeRtosEnvVar);
auto &freeRtos = description.freeRTOS.packages[0];
QCOMPARE(freeRtos.envVar, nxp1064FreeRtosEnvVar);
}
void McuSupportTest::test_parseToolchainFromJSON_data()
@@ -356,20 +370,6 @@ void McuSupportTest::test_parseToolchainFromJSON()
QCOMPARE(toolchainFilePackage.defaultPath.cleanPath().toUserOutput(), toolchainFile);
}
void McuSupportTest::test_addFreeRtosCmakeVarToKit()
{
McuKitManager::upgradeKitInPlace(&kit, &mcuTarget, sdkPackagePtr);
QVERIFY(kit.hasValue(EnvironmentKitAspect::id()));
QVERIFY(kit.isValid());
QVERIFY(!kit.allKeys().empty());
const auto &cmakeConfig{CMakeConfigurationKitAspect::configuration(&kit)};
QVERIFY(cmakeConfig.size() > 0);
QCOMPARE(cmakeConfig.valueOf(freeRtosCMakeVar),
FilePath::fromString(freeRtosPath).toString().toLocal8Bit());
}
void McuSupportTest::test_legacy_createIarToolchain()
{
McuToolChainPackagePtr iarToolchainPackage = Sdk::createIarToolChainPackage(settingsMockPtr);

View File

@@ -47,6 +47,8 @@ public:
private slots:
void initTestCase();
void init();
void cleanup();
void test_addNewKit();
void test_parseBasicInfoFromJson();
@@ -66,7 +68,6 @@ private slots:
void test_createFreeRtosPackageWithCorrectSetting();
void test_createTargets();
void test_createPackages();
void test_addFreeRtosCmakeVarToKit();
void test_legacy_createIarToolchain();
void test_createIarToolchain();
void test_legacy_createDesktopGccToolchain();