diff --git a/src/test/CMakeLists.txt b/src/test/CMakeLists.txt --- a/src/test/CMakeLists.txt +++ b/src/test/CMakeLists.txt @@ -42,8 +42,19 @@ include(TestSuite) create_test_suite(bitcoin) add_dependencies(check check-bitcoin) +add_executable(test_bitcoin EXCLUDE_FROM_ALL + jsonutil.cpp + scriptflags.cpp + sigutil.cpp + test_bitcoin.cpp + test_bitcoin_main.cpp + + # Tests generated from JSON + ${JSON_HEADERS} +) +add_dependencies(check-bitcoin test_bitcoin) -add_test_to_suite(bitcoin test_bitcoin +set(TEST_BITCOIN_SOURCES activation_tests.cpp addrman_tests.cpp allocator_tests.cpp @@ -80,7 +91,6 @@ getarg_tests.cpp hash_tests.cpp inv_tests.cpp - jsonutil.cpp key_tests.cpp lcg_tests.cpp limitedmap_tests.cpp @@ -108,7 +118,6 @@ script_commitment_tests.cpp script_P2SH_tests.cpp script_tests.cpp - scriptflags.cpp scriptnum_tests.cpp serialize_tests.cpp sigcache_tests.cpp @@ -116,12 +125,9 @@ sighash_tests.cpp sighashtype_tests.cpp sigopcount_tests.cpp - sigutil.cpp skiplist_tests.cpp streams_tests.cpp sync_tests.cpp - test_bitcoin.cpp - test_bitcoin_main.cpp timedata_tests.cpp transaction_tests.cpp txvalidationcache_tests.cpp @@ -132,13 +138,20 @@ util_tests.cpp validation_tests.cpp work_comparator_tests.cpp +) - # RPC Tests - ../rpc/test/server_tests.cpp +function(add_bitcoin_test TEST_NAME SRC) + target_sources(test_bitcoin PRIVATE ${SRC}) + add_test(NAME ${TEST_NAME} COMMAND test_bitcoin --run_test=${TEST_NAME}) +endfunction(add_bitcoin_test) - # Tests generated from JSON - ${JSON_HEADERS} -) +foreach(TEST_SOURCE ${TEST_BITCOIN_SOURCES}) + STRING(REGEX REPLACE ".cpp$" "" TEST_NAME ${TEST_SOURCE}) + add_bitcoin_test(${TEST_NAME} ${TEST_SOURCE}) +endforeach(TEST_SOURCE) + +# RPC Tests +add_bitcoin_test(server_tests ../rpc/test/server_tests.cpp) target_include_directories(test_bitcoin PUBLIC