X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=testing%2FCMakeLists.txt;h=acb63695fdfe4220486992e88f84de703de29572;hb=718975776a47a5c65c9f89010e8959103d1e3555;hp=146e62316ff4424a89f163df7014d0f1f3f82f96;hpb=8b0874e6ee4f0c7d4d6caf9bf13190cda0a415b5;p=awesomized%2Flibmemcached diff --git a/testing/CMakeLists.txt b/testing/CMakeLists.txt index 146e6231..acb63695 100644 --- a/testing/CMakeLists.txt +++ b/testing/CMakeLists.txt @@ -1,42 +1,28 @@ +if(NOT BUILD_TESTING OR NOT CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME) + return() +endif() + +include(CMake/Catch.cmake) file(GLOB_RECURSE TESTING_SRC RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp) set(TESTING_ROOT ${CMAKE_CURRENT_BINARY_DIR}) +set_source_files_properties(main.cpp PROPERTIES SKIP_UNITY_BUILD_INCLUSION ON) configure_file(conf.h.in conf.h @ONLY) -add_executable(catch_main ${TESTING_SRC}) -set_target_properties(catch_main PROPERTIES CXX_STANDARD 17) -target_include_directories(catch_main PRIVATE +add_executable(runtests ${TESTING_SRC}) +set_target_properties(runtests PROPERTIES CXX_STANDARD 17) +target_include_directories(runtests PRIVATE ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/src) -target_link_libraries(catch_main PRIVATE libhashkit libmemcached libmemcachedutil) -add_dependencies(catch_main ${CLIENTS}) - -add_test("lib/Server" catch_main "lib/Server") -add_test("lib/Cluster" catch_main "lib/Cluster") - -add_test("hashkit" catch_main "hashkit") - -add_test("memcached_append" catch_main "memcached_append") -add_test("memcached_basic" catch_main "memcached_basic") -add_test("memcached_callbacks" catch_main "memcached_callbacks") -add_test("memcached_cas" catch_main "memcached_cas") -add_test("memcached_dump" catch_main "memcached_dump") -add_test("memcached_encoding_key" catch_main "memcached_encoding_key") -add_test("memcached_exist" catch_main "memcached_exist") -add_test("memcached_generate_hash" catch_main "memcached_generate_hash") -add_test("memcached_haldenbrand_nblock_tcp_ndelay" catch_main "memcached_haldenbrand_nblock_tcp_ndelay") -add_test("memcached_inc_dec" catch_main "memcached_inc_dec") -add_test("memcached_ketama_compat" catch_main "memcached_ketama_compat") -add_test("memcached_noreply" catch_main "memcached_noreply") -add_test("memcached_prepend" catch_main "memcached_prepend") -add_test("memcached_regression_binary_block_add" catch_main "memcached_regression_binary_block_add") -add_test("memcached_servers" catch_main "memcached_servers") -add_test("memcached_simple" catch_main "memcached_simple") -add_test("memcached_util" catch_main "memcached_util") +target_link_libraries(runtests PRIVATE libhashkit libmemcached libmemcachedutil) +add_dependencies(runtests ${CLIENTS}) -add_test("memcat" catch_main "memcat") -add_test("memcp" catch_main "memcp") -add_test("memdump" catch_main "memdump") -add_test("memerror" catch_main "memerror") -add_test("memexist" catch_main "memexist") +catch_discover_tests(runtests + TEST_SPEC "lib*") +catch_discover_tests(runtests + TEST_SPEC "hashkit*") +catch_discover_tests(runtests + TEST_SPEC "memcached*") +catch_discover_tests(runtests + TEST_SPEC "bin/*")