test/CMakeLists.txt

Sat, 16 Apr 2022 08:58:27 +0200

author
Mike Becker <universe@uap-core.de>
date
Sat, 16 Apr 2022 08:58:27 +0200
changeset 512
096d206b63f9
parent 511
a32e6a6b1ca7
child 515
6d3909bf1609
permissions
-rw-r--r--

compile only one single binary for tests

     1 # Transitional support for CTest written tests
     2 message(CHECK_START "Searching for CUnit test framework")
     4 find_path(CUNIT_INCLUDE_DIR NAMES CUnit/CUnit.h)
     5 find_library(CUNIT_LIBRARY NAMES cunit libcunit cunitlib)
     6 include(FindPackageHandleStandardArgs)
     7 find_package_handle_standard_args(CUnit DEFAULT_MSG CUNIT_LIBRARY CUNIT_INCLUDE_DIR)
     9 if (CUNIT_FOUND)
    10     message(CHECK_PASS "found: compiling tests.")
    11     set(TESTS
    12             test_list
    13             test_tree
    14     )
    16     foreach (test ${TESTS})
    17         add_executable(${test} ${test}.c)
    18         target_link_libraries(${test} PRIVATE ucx_static ${CUNIT_LIBRARY})
    19         target_include_directories(${test} PRIVATE ${CUNIT_INCLUDE_DIR})
    20         add_test(NAME ${test} COMMAND ${test} WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
    21     endforeach ()
    22 else ()
    23     message(CHECK_FAIL "not found: CUnit tests will not be available.")
    24 endif ()
    26 # Load Google Test Framework
    27 set(CMAKE_CXX_STANDARD 11)
    29 include(FetchContent)
    30 FetchContent_Declare(
    31         googletest
    32         GIT_REPOSITORY https://github.com/google/googletest.git
    33         GIT_TAG e2239ee6043f73722e7aa812a459f54a28552929 # release 1.11.0
    34 )
    35 # For Windows: Prevent overriding the parent project's compiler/linker settings
    36 set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
    37 FetchContent_MakeAvailable(googletest)
    38 include(GoogleTest)
    39 message(STATUS "Google Test made available")
    41 add_executable(ucxtest
    42         test_allocator.cpp
    43         selftest.cpp
    44         )
    45 target_link_libraries(ucxtest PRIVATE ucx_static gtest_main)
    46 gtest_discover_tests(ucxtest)

mercurial