diff options
author | Francesco Borzì <borzifrancesco@gmail.com> | 2020-08-15 22:34:45 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-15 22:34:45 +0200 |
commit | c2b40b126d669e66fd5f602c03c42924da41d776 (patch) | |
tree | fd6c7b0f94feed4941c2b8d5d294dad17141352e /CMakeLists.txt | |
parent | 4d11f5c92139f26483763b2f558da4b5a6fcae6e (diff) |
feature(testing-automation): unit tests with Google Framework (#3273)
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 38 |
1 files changed, 27 insertions, 11 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index e266cbf48f..79c73eccbd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -33,8 +33,8 @@ set(AC_PATH_ROOT "${CMAKE_SOURCE_DIR}") # set macro-directory list(APPEND CMAKE_MODULE_PATH - "${CMAKE_SOURCE_DIR}/src/cmake/macros" - "${CMAKE_SOURCE_DIR}/deps/cotire/CMake") + "${CMAKE_SOURCE_DIR}/src/cmake/macros" + "${CMAKE_SOURCE_DIR}/deps/cotire/CMake") include(CheckCXXSourceRuns) include(CheckIncludeFiles) @@ -49,7 +49,7 @@ include(conf/dist/config.cmake) # load custom configurations for cmake if exists if(EXISTS "${CMAKE_SOURCE_DIR}/conf/config.cmake") - include(conf/config.cmake) + include(conf/config.cmake) endif() # @@ -63,7 +63,7 @@ FOREACH(subdir ${sub_DIRS}) get_filename_component(MODULENAME ${subdir} NAME) if (";${DISABLED_AC_MODULES};" MATCHES ";${MODULENAME};") - continue() + continue() endif() STRING(REGEX REPLACE "^${CMAKE_SOURCE_DIR}/" "" subdir_rel ${subdir}) @@ -77,13 +77,13 @@ CU_RUN_HOOK("AFTER_LOAD_CONF") # build in Release-mode by default if not explicitly set if( NOT CMAKE_BUILD_TYPE ) - set(CMAKE_BUILD_TYPE "Release") + set(CMAKE_BUILD_TYPE "Release") endif() # turn off PCH totally if enabled (hidden setting, mainly for devs) if( NOPCH ) - set(USE_COREPCH 0) - set(USE_SCRIPTPCH 0) + set(USE_COREPCH 0) + set(USE_SCRIPTPCH 0) endif() include(ConfigureBaseTargets) @@ -101,11 +101,11 @@ find_package(ACE REQUIRED) find_package(MySQL REQUIRED) if(UNIX AND WITH_PERFTOOLS) - find_package(Gperftools) + find_package(Gperftools) endif() if(NOT WITHOUT_GIT) - find_package(Git) + find_package(Git) endif() # Find revision ID and hash of the sourcetree @@ -121,11 +121,11 @@ include(src/cmake/showoptions.cmake) add_subdirectory(deps) if( SERVERS OR TOOLS) - add_subdirectory(src/common) + add_subdirectory(src/common) endif() if( TOOLS ) - add_subdirectory(src/tools) + add_subdirectory(src/tools) endif() # @@ -138,3 +138,19 @@ CU_RUN_HOOK("BEFORE_SRC_LOAD") add_subdirectory(src) CU_RUN_HOOK("AFTER_SRC_LOAD") + +if( UNIT_TESTS ) + # we use this to get code coverage + if(CMAKE_CXX_COMPILER_ID MATCHES GNU) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage") + endif() + + include(src/cmake/googletest.cmake) + fetch_googletest( + ${PROJECT_SOURCE_DIR}/src/cmake + ${PROJECT_BINARY_DIR}/googletest + ) + + enable_testing() + add_subdirectory(src/test) +endif() |