diff --git a/Tests/Common++Test/CMakeLists.txt b/Tests/Common++Test/CMakeLists.txt index 7034b6cf1..fa0df6fc0 100644 --- a/Tests/Common++Test/CMakeLists.txt +++ b/Tests/Common++Test/CMakeLists.txt @@ -24,7 +24,8 @@ add_executable( Tests/LoggerTests.cpp Tests/LRUListTests.cpp Tests/MacAddressTests.cpp - Tests/PointerVectorTests.cpp) + Tests/PointerVectorTests.cpp + Tests/SystemUtilsTests.cpp) target_link_libraries( Common++Test diff --git a/Tests/Common++Test/Tests/SystemUtilsTests.cpp b/Tests/Common++Test/Tests/SystemUtilsTests.cpp new file mode 100644 index 000000000..0b7fb31b6 --- /dev/null +++ b/Tests/Common++Test/Tests/SystemUtilsTests.cpp @@ -0,0 +1,47 @@ +#include +#include + +#include "SystemUtils.h" + +namespace pcpp +{ + + TEST(CoreMaskTest, CreateCoreMaskFromCoreIdsMethod) + { + const std::vector coreIds{ 0, 1, 2, 3 }; + CoreMask mask = createCoreMaskFromCoreIds(coreIds); + + EXPECT_EQ(mask, 0x0F); + }; + + TEST(CoreMaskTest, CreateCoreMaskFromCoreVectorMethod) + { + + const std::vector cores{ + SystemCores::Core0, + SystemCores::Core1, + SystemCores::Core2, + SystemCores::Core3, + }; + + CoreMask mask = createCoreMaskFromCoreVector(cores); + + EXPECT_EQ(mask, 0x0F); + }; + + TEST(CoreMaskTest, CreateCoreVectorFromCoreMaskMethod) + { + const CoreMask mask = 0x0F; + const std::vector expectedCores = { + SystemCores::Core0, + SystemCores::Core1, + SystemCores::Core2, + SystemCores::Core3, + }; + std::vector cores; + + createCoreVectorFromCoreMask(mask, cores); + + EXPECT_EQ(cores, expectedCores); + }; +} // namespace pcpp \ No newline at end of file