Skip to content

Commit

Permalink
enhancement: enable common libraries UT
Browse files Browse the repository at this point in the history
  • Loading branch information
TomasTurina committed Feb 14, 2025
1 parent 16def19 commit 9fd2c96
Show file tree
Hide file tree
Showing 70 changed files with 497 additions and 1,226 deletions.
12 changes: 11 additions & 1 deletion src/common/byteArrayHelper/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
cmake_minimum_required(VERSION 3.22)

if(UNIT_TEST)
project(byte_array_helper)

include(../../cmake/CommonSettings.cmake)
set_common_settings()

add_library(byte_array_helper INTERFACE)

target_include_directories(byte_array_helper INTERFACE include)

if(BUILD_TESTS)
enable_testing()
add_subdirectory(tests)
endif()
85 changes: 11 additions & 74 deletions src/common/byteArrayHelper/tests/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,84 +1,21 @@
cmake_minimum_required(VERSION 3.22)

project(utils_unit_test)

file(GLOB UTIL_CXX_UNITTEST_WINDOWS_SRC)
find_package(GTest CONFIG REQUIRED)

file(GLOB UTIL_CXX_UNITTEST_COMMON_SRC
"byteArrayHelper_test.cpp"
"main.cpp"
)

file(GLOB UTIL_CXX_UNITTEST_LINUX_SRC)

file(COPY input_files DESTINATION ${CMAKE_CURRENT_BINARY_DIR})

link_directories(${SRC_FOLDER}/external/googletest/lib)
link_directories(${SRC_FOLDER}/external/libarchive/.libs/)

if(CMAKE_SYSTEM_NAME STREQUAL "HP-UX")
add_definitions(-DPROMISE_TYPE=PromiseType::SLEEP)
else()
add_definitions(-DPROMISE_TYPE=PromiseType::NORMAL)
endif(CMAKE_SYSTEM_NAME STREQUAL "HP-UX")

if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
add_executable(utils_unit_test
${UTIL_CXX_UNITTEST_COMMON_SRC}
${UTIL_CXX_UNITTEST_WINDOWS_SRC}
${UTIL_CXX_UNITTEST_CPP17_SRC}
)
add_definitions(-DWIN32=1
-D_WIN32_WINNT=0x600)
target_link_libraries(utils_unit_test
debug gtestd
debug gmockd
optimized gtest
optimized gmock
pthread
crypto
ssl
-static-libgcc
ws2_32
crypt32
)
else()
add_executable(byte_array_helper_tests
${UTIL_CXX_UNITTEST_COMMON_SRC}
)

if (APPLE)
add_executable(utils_unit_test
${UTIL_CXX_UNITTEST_COMMON_SRC}
${UTIL_CXX_UNITTEST_CPP17_SRC}
)
else()
add_executable(utils_unit_test
${UTIL_CXX_UNITTEST_COMMON_SRC}
${UTIL_CXX_UNITTEST_LINUX_SRC}
${UTIL_CXX_UNITTEST_CPP17_SRC}
)
endif(APPLE)
include(../../../cmake/ConfigureTarget.cmake)
configure_target(byte_array_helper_tests)

target_link_libraries(utils_unit_test
debug gtestd
debug gmockd
optimized gtest
optimized gmock
rocksdb
crypto
dl
pthread
rt
lzma
z
minizip
archive
)
endif(CMAKE_SYSTEM_NAME STREQUAL "Windows")
target_include_directories(byte_array_helper_tests PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/../include
)

if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
target_link_libraries(utils_unit_test -fprofile-arcs)
else()
target_link_libraries(utils_unit_test gcov)
endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
target_link_libraries(byte_array_helper_tests PRIVATE byte_array_helper GTest::gtest)

add_test(NAME utils_unit_test
COMMAND utils_unit_test)
add_test(NAME byteArrayHelperTests COMMAND byte_array_helper_tests)
10 changes: 5 additions & 5 deletions src/common/byteArrayHelper/tests/byteArrayHelper_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,16 @@ void ByteArrayHelperTest::SetUp() {};

void ByteArrayHelperTest::TearDown() {};

constexpr uint8_t bufferBE[] = {0x12, 0x34, 0x56, 0x78};
constexpr uint8_t bufferLE[] = {0x78, 0x56, 0x34, 0x12};
constexpr int32_t result {305419896};
constexpr uint8_t BUFFER_BE[] = {0x12, 0x34, 0x56, 0x78};
constexpr uint8_t BUFFER_LE[] = {0x78, 0x56, 0x34, 0x12};
constexpr int32_t RESULT {305419896};

TEST_F(ByteArrayHelperTest, toInt32BE)
{
EXPECT_EQ(result, Utils::toInt32BE(bufferBE));
EXPECT_EQ(RESULT, Utils::toInt32BE(BUFFER_BE));
}

TEST_F(ByteArrayHelperTest, toInt32LE)
{
EXPECT_EQ(result, Utils::toInt32LE(bufferLE));
EXPECT_EQ(RESULT, Utils::toInt32LE(BUFFER_LE));
}
14 changes: 13 additions & 1 deletion src/common/cmdHelper/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
cmake_minimum_required(VERSION 3.22)

if(UNIT_TEST)
project(cmd_helper)

include(../../cmake/CommonSettings.cmake)
set_common_settings()

add_library(cmd_helper INTERFACE)

target_include_directories(cmd_helper INTERFACE include)

target_link_libraries(cmd_helper INTERFACE pal)

if(BUILD_TESTS)
enable_testing()
add_subdirectory(tests)
endif()
2 changes: 1 addition & 1 deletion src/common/cmdHelper/include/cmdHelper.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
#include <cstdio>
#include <memory>
#include <vector>
#include "../../pal/include/pal.h"
#include <pal.h>

#ifdef __GNUC__
#pragma GCC diagnostic push
Expand Down
85 changes: 11 additions & 74 deletions src/common/cmdHelper/tests/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,84 +1,21 @@
cmake_minimum_required(VERSION 3.22)

project(utils_unit_test)

file(GLOB UTIL_CXX_UNITTEST_WINDOWS_SRC)
find_package(GTest CONFIG REQUIRED)

file(GLOB UTIL_CXX_UNITTEST_COMMON_SRC
"cmdHelper_test.cpp"
"main.cpp"
)

file(GLOB UTIL_CXX_UNITTEST_LINUX_SRC)

file(COPY input_files DESTINATION ${CMAKE_CURRENT_BINARY_DIR})

link_directories(${SRC_FOLDER}/external/googletest/lib)
link_directories(${SRC_FOLDER}/external/libarchive/.libs/)

if(CMAKE_SYSTEM_NAME STREQUAL "HP-UX")
add_definitions(-DPROMISE_TYPE=PromiseType::SLEEP)
else()
add_definitions(-DPROMISE_TYPE=PromiseType::NORMAL)
endif(CMAKE_SYSTEM_NAME STREQUAL "HP-UX")

if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
add_executable(utils_unit_test
${UTIL_CXX_UNITTEST_COMMON_SRC}
${UTIL_CXX_UNITTEST_WINDOWS_SRC}
${UTIL_CXX_UNITTEST_CPP17_SRC}
)
add_definitions(-DWIN32=1
-D_WIN32_WINNT=0x600)
target_link_libraries(utils_unit_test
debug gtestd
debug gmockd
optimized gtest
optimized gmock
pthread
crypto
ssl
-static-libgcc
ws2_32
crypt32
)
else()
add_executable(cmd_helper_tests
${UTIL_CXX_UNITTEST_COMMON_SRC}
)

if (APPLE)
add_executable(utils_unit_test
${UTIL_CXX_UNITTEST_COMMON_SRC}
${UTIL_CXX_UNITTEST_CPP17_SRC}
)
else()
add_executable(utils_unit_test
${UTIL_CXX_UNITTEST_COMMON_SRC}
${UTIL_CXX_UNITTEST_LINUX_SRC}
${UTIL_CXX_UNITTEST_CPP17_SRC}
)
endif(APPLE)
include(../../../cmake/ConfigureTarget.cmake)
configure_target(cmd_helper_tests)

target_link_libraries(utils_unit_test
debug gtestd
debug gmockd
optimized gtest
optimized gmock
rocksdb
crypto
dl
pthread
rt
lzma
z
minizip
archive
)
endif(CMAKE_SYSTEM_NAME STREQUAL "Windows")
target_include_directories(cmd_helper_tests PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/../include
)

if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
target_link_libraries(utils_unit_test -fprofile-arcs)
else()
target_link_libraries(utils_unit_test gcov)
endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
target_link_libraries(cmd_helper_tests PRIVATE cmd_helper GTest::gtest)

add_test(NAME utils_unit_test
COMMAND utils_unit_test)
add_test(NAME cmdHelperTests COMMAND cmd_helper_tests)
3 changes: 3 additions & 0 deletions src/common/config/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ cmake_minimum_required(VERSION 3.22)

project(Config)

include(../../cmake/CommonSettings.cmake)
set_common_settings()

add_library(Config INTERFACE)

include(../../cmake/config.cmake)
Expand Down
59 changes: 29 additions & 30 deletions src/common/data_provider/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,15 @@ cmake_minimum_required(VERSION 3.22)

project(sysinfo)

include(../../cmake/CommonSettings.cmake)
set_common_settings()

if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
endif()

enable_testing()

get_filename_component(SRC_FOLDER ${CMAKE_CURRENT_SOURCE_DIR}/../../ ABSOLUTE)
get_filename_component(COMMON_FOLDER ${CMAKE_CURRENT_SOURCE_DIR}/../ ABSOLUTE)

if(COVERITY)
add_definitions(-D__GNUC__=8)
Expand Down Expand Up @@ -88,24 +90,7 @@ include_directories(${POPT_INCLUDE_DIR})

include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include/)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/)
include_directories(${SRC_FOLDER}/common/)
include_directories(${SRC_FOLDER}/common/byteArrayHelper/include/)
include_directories(${SRC_FOLDER}/common/cmdHelper/include/)
include_directories(${SRC_FOLDER}/common/globHelper/include/)
include_directories(${SRC_FOLDER}/common/jsonHelper/include/)
include_directories(${SRC_FOLDER}/common/linuxHelper/include/)
include_directories(${SRC_FOLDER}/common/networkHelper/include/)
include_directories(${SRC_FOLDER}/common/sqliteWrapper/include/)
include_directories(${SRC_FOLDER}/common/stringHelper/include/)
include_directories(${SRC_FOLDER}/common/timeHelper/include/)

if(WIN32)
include_directories(${SRC_FOLDER}/common/encodingHelper/include/)
include_directories(${SRC_FOLDER}/common/registryHelper/include/)
include_directories(${SRC_FOLDER}/common/windowsHelper/include/)
endif()

get_filename_component(COMMON_FOLDER ${CMAKE_CURRENT_SOURCE_DIR}/../ ABSOLUTE)
include_directories(${COMMON_FOLDER})

link_directories(${SRC_FOLDER})

Expand Down Expand Up @@ -155,7 +140,24 @@ add_library(sysinfo STATIC
${SRC_FOLDER}/${RESOURCE_OBJ})

target_include_directories(sysinfo PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include/)
target_link_libraries(sysinfo PUBLIC FilesystemWrapper FileIO)

target_link_libraries(sysinfo PUBLIC
byte_array_helper
cmd_helper
FilesystemWrapper
FileIO
glob_helper
json_helper
linux_helper
network_helper
sqlite_wrapper
string_helper
time_helper
)

if(WIN32)
target_link_libraries(sysinfo PUBLIC encoding_helper registry_helper windows_helper)
endif()

if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
target_link_libraries(sysinfo PUBLIC psapi iphlpapi ws2_32)
Expand Down Expand Up @@ -202,22 +204,19 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
)
endif(CMAKE_SYSTEM_NAME STREQUAL "Linux")

target_link_libraries(sysinfo PUBLIC
target_link_libraries(sysinfo PRIVATE
unofficial::sqlite3::sqlite3)

if(BUILD_TESTS)
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
target_link_libraries(sysinfo PRIVATE -fprofile-arcs)
else()
target_link_libraries(sysinfo PRIVATE gcov)
endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")

enable_testing()
add_subdirectory(tests)
endif(NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")
else()
endif(BUILD_TESTS)

if(NOT DEFINED COVERITY AND NOT DEFINED BUILD_TESTS)
if(FSANITIZE)
target_link_libraries(sysinfo PRIVATE gcov)
endif(FSANITIZE)
add_subdirectory(testtool)
endif(BUILD_TESTS)
endif(NOT DEFINED COVERITY AND NOT DEFINED BUILD_TESTS)
6 changes: 0 additions & 6 deletions src/common/data_provider/tests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,5 @@ if(HAS_FILESYSTEM OR CMAKE_SYSTEM_NAME STREQUAL "Windows")
add_subdirectory(sysInfoPackages)
endif()

if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
string(APPEND CMAKE_EXE_LINKER_FLAGS " -fprofile-arcs ")
else()
string(APPEND CMAKE_EXE_LINKER_FLAGS " -lgcov ")
endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")

add_subdirectory(sysInfo)
add_subdirectory(sysInfoPorts)
3 changes: 2 additions & 1 deletion src/common/data_provider/tests/sysInfo/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ add_executable(sysinfo_unit_test
${SYSINFO_SRC})
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
target_link_libraries(sysinfo_unit_test PRIVATE
sysinfo
GTest::gtest
GTest::gmock
GTest::gtest_main
Expand All @@ -24,10 +25,10 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
unofficial::sqlite3::sqlite3
cjson
utils
-static-libgcc
)
else()
target_link_libraries(sysinfo_unit_test PRIVATE
sysinfo
GTest::gtest
GTest::gmock
GTest::gtest_main
Expand Down
Loading

0 comments on commit 9fd2c96

Please sign in to comment.