Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/tests/test_bld_enums.cpp
berrux-dev e8d07af320 Adapts shared tests and common code to generated rtiddsgen API
Updates test suites and Lts/Common consumers to plain member access.
2026-09-21 02:44:07 +02:00

62 lines
2.5 KiB
C++

/**
* @file test_bld_enums.cpp
* @brief Verhaltenstests für die generierten Buildings-Enumerationen
*
* Diese Tests prüfen den von rtiddsgen aus bld_enums.idl generierten Header
* (Lts/Proxies/Buildings/bld_enums.hpp) aus dem Build-Tree. Die frühere
* CONFIGURE_FILE-Stub-Kopie (BuildingType/BuildingStatus/BuildingInfo) wurde
* entfernt, da sie bei jedem CMake-Reconfigure die echten generierten
* Enumerationen überschrieben hat.
*/
#include "Buildings/bld_enums.hpp"
#include <gtest/gtest.h>
#include <type_traits>
/**
* @test EffectTypeEnum muss mit den Werten aus bld_enums.idl generiert werden.
*/
TEST(bld_enums_Generated, EffectTypeEnumValues)
{
static_assert(std::is_enum<::Buildings::EffectTypeEnum>::value,
"EffectTypeEnum muss aus bld_enums.hpp vorliegen");
static_assert(static_cast<int32_t>(::Buildings::EffectTypeEnum::Undefined) == 0,
"EffectTypeEnum::Undefined muss 0 sein");
static_assert(static_cast<int32_t>(::Buildings::EffectTypeEnum::Relay) == 1,
"EffectTypeEnum::Relay muss 1 sein");
static_assert(static_cast<int32_t>(::Buildings::EffectTypeEnum::BackgroundSound) == 2,
"EffectTypeEnum::BackgroundSound muss 2 sein");
static_assert(static_cast<int32_t>(::Buildings::EffectTypeEnum::BsmFlash) == 3,
"EffectTypeEnum::BsmFlash muss 3 sein");
EXPECT_TRUE(true);
}
/**
* @test StateSetRelay muss mit den Werten aus bld_enums.idl generiert werden.
*/
TEST(bld_enums_Generated, StateSetRelayValues)
{
static_assert(std::is_enum<::Buildings::StateSetRelay>::value,
"StateSetRelay muss aus bld_enums.hpp vorliegen");
static_assert(static_cast<int32_t>(::Buildings::StateSetRelay::SwitchOff) == 0,
"StateSetRelay::SwitchOff muss 0 sein");
static_assert(static_cast<int32_t>(::Buildings::StateSetRelay::SwitchOn) == 1,
"StateSetRelay::SwitchOn muss 1 sein");
static_assert(static_cast<int32_t>(::Buildings::StateSetRelay::Pulse) == 2,
"StateSetRelay::Pulse muss 2 sein");
static_assert(static_cast<int32_t>(::Buildings::StateSetRelay::GetState) == 3,
"StateSetRelay::GetState muss 3 sein");
EXPECT_TRUE(true);
}
/**
* @test Include-Guard: mehrfaches Einbinden des generierten Headers ist erlaubt.
*/
TEST(bld_enums_Generated, MultipleIncludeGuard)
{
// Including the header multiple times should not cause errors
#include "Buildings/bld_enums.hpp"
EXPECT_TRUE(true);
}