From 64a8acd437437237871c695bb19aeb77be63a9e0 Mon Sep 17 00:00:00 2001 From: Rajkaran Date: Fri, 23 Oct 2026 16:39:13 +0530 Subject: [PATCH 1/3] [TEST] Use gtest_discover_tests to prevent false-positive test passes Fixes #4341 Replace gtest_add_tests() with gtest_discover_tests() across all test directories. The old approach scans source files at CMake configure time, so tests behind preprocessor conditionals remain registered in CTest even when compiled out. This causes CTest to report "Passed" for tests that never actually ran. gtest_discover_tests() queries the compiled test executable at build time, so compiled-out tests are never registered. This prevents false-positive passes and matches the behavior of the project's existing install tests. Migration includes: - SDK tests (metrics, trace, logs, common, configuration, resource, instrumentationscope) - API tests (all subdirectories) - Exporter tests (elasticsearch, etw, memory, ostream, otlp, prometheus, zipkin) - Extension tests (http, resource detectors) - OpenTracing shim tests - Installation verification tests Compatibility: - CMake minimum: 3.16 (gtest_discover_tests introduced in 3.10) - Discovery mode: POST_BUILD (default, compatible with CMake 3.16+) - GoogleTest: v1.17.0 (current pin) Note: This change runs test binaries at build time for discovery. Cross-compilation builds may need DISCOVERY_MODE PRE_TEST (requires CMake 3.26+) or separate test configurations. --- CHANGELOG.md | 3 + api/test/baggage/CMakeLists.txt | 5 +- api/test/baggage/propagation/CMakeLists.txt | 5 +- api/test/common/CMakeLists.txt | 5 +- api/test/context/CMakeLists.txt | 5 +- api/test/context/propagation/CMakeLists.txt | 5 +- api/test/core/CMakeLists.txt | 10 +- api/test/logs/CMakeLists.txt | 5 +- api/test/metrics/CMakeLists.txt | 5 +- api/test/nostd/CMakeLists.txt | 5 +- api/test/plugin/CMakeLists.txt | 5 +- api/test/singleton/CMakeLists.txt | 5 +- api/test/trace/CMakeLists.txt | 5 +- api/test/trace/propagation/CMakeLists.txt | 5 +- .../trace/propagation/detail/CMakeLists.txt | 5 +- docs/google-test.md | 4 +- exporters/elasticsearch/CMakeLists.txt | 5 +- exporters/etw/CMakeLists.txt | 25 +--- exporters/memory/CMakeLists.txt | 20 +-- exporters/ostream/CMakeLists.txt | 15 +- exporters/otlp/CMakeLists.txt | 135 ++++-------------- exporters/prometheus/test/CMakeLists.txt | 5 +- exporters/zipkin/CMakeLists.txt | 10 +- ext/test/http/CMakeLists.txt | 15 +- .../test/cmake/api_only_test/CMakeLists.txt | 5 +- .../cmake/fetch_content_test/CMakeLists.txt | 5 +- opentracing-shim/CMakeLists.txt | 5 +- resource_detectors/test/CMakeLists.txt | 50 ++----- sdk/test/common/CMakeLists.txt | 10 +- sdk/test/configuration/CMakeLists.txt | 30 +--- sdk/test/instrumentationscope/CMakeLists.txt | 5 +- sdk/test/logs/CMakeLists.txt | 5 +- sdk/test/metrics/CMakeLists.txt | 15 +- sdk/test/metrics/exemplar/CMakeLists.txt | 5 +- sdk/test/resource/CMakeLists.txt | 5 +- sdk/test/trace/CMakeLists.txt | 5 +- 36 files changed, 96 insertions(+), 361 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 805c832e50..b62018eb2c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,9 @@ Increment the: ## [Unreleased] +* [TEST] Replace `gtest_add_tests()` with `gtest_discover_tests()` to prevent + false-positive test passes for tests compiled out by preprocessor conditionals. + [#4341](https://github.com/open-telemetry/opentelemetry-cpp/issues/4341) * [CONFIGURATION] Add a configuration builder for the host resource detector [#4451](https://github.com/open-telemetry/opentelemetry-cpp/issues/4451) * [CONFIGURATION] Build the configured resource detectors in SdkBuilder, apply diff --git a/api/test/baggage/CMakeLists.txt b/api/test/baggage/CMakeLists.txt index fdcfb3e118..5736766e5b 100644 --- a/api/test/baggage/CMakeLists.txt +++ b/api/test/baggage/CMakeLists.txt @@ -7,10 +7,7 @@ foreach(testname baggage_test) add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX baggage. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX baggage.) endforeach() if(OTELCPP_WITH_BENCHMARK) diff --git a/api/test/baggage/propagation/CMakeLists.txt b/api/test/baggage/propagation/CMakeLists.txt index b4142ead8a..72b2ff00c0 100644 --- a/api/test/baggage/propagation/CMakeLists.txt +++ b/api/test/baggage/propagation/CMakeLists.txt @@ -5,8 +5,5 @@ foreach(testname baggage_propagator_test) add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX baggage. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX baggage.) endforeach() diff --git a/api/test/common/CMakeLists.txt b/api/test/common/CMakeLists.txt index 58cf328218..4dc0447dcf 100644 --- a/api/test/common/CMakeLists.txt +++ b/api/test/common/CMakeLists.txt @@ -7,10 +7,7 @@ foreach(testname kv_properties_test string_util_test) add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX common. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX common.) endforeach() if(OTELCPP_WITH_BENCHMARK) diff --git a/api/test/context/CMakeLists.txt b/api/test/context/CMakeLists.txt index 25ce51bc20..6a66f10dd6 100644 --- a/api/test/context/CMakeLists.txt +++ b/api/test/context/CMakeLists.txt @@ -9,8 +9,5 @@ foreach(testname context_test runtime_context_test) add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX context. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX context.) endforeach() diff --git a/api/test/context/propagation/CMakeLists.txt b/api/test/context/propagation/CMakeLists.txt index b791b39e5c..2a17c7c502 100644 --- a/api/test/context/propagation/CMakeLists.txt +++ b/api/test/context/propagation/CMakeLists.txt @@ -6,8 +6,5 @@ foreach(testname composite_propagator_test environment_carrier_test add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX trace. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX trace.) endforeach() diff --git a/api/test/core/CMakeLists.txt b/api/test/core/CMakeLists.txt index 7123f9a708..97ce27b840 100644 --- a/api/test/core/CMakeLists.txt +++ b/api/test/core/CMakeLists.txt @@ -6,15 +6,9 @@ include(GoogleTest) add_executable(timestamp_test timestamp_test.cc) target_link_libraries(timestamp_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) -gtest_add_tests( - TARGET timestamp_test - TEST_PREFIX trace. - TEST_LIST timestamp_test) +gtest_discover_tests(timestamp_test TEST_PREFIX trace.) add_executable(version_test version_test.cc) target_link_libraries(version_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) -gtest_add_tests( - TARGET version_test - TEST_PREFIX version. - TEST_LIST version_test) +gtest_discover_tests(version_test TEST_PREFIX version.) diff --git a/api/test/logs/CMakeLists.txt b/api/test/logs/CMakeLists.txt index d8b440e789..c193f79f76 100644 --- a/api/test/logs/CMakeLists.txt +++ b/api/test/logs/CMakeLists.txt @@ -5,10 +5,7 @@ foreach(testname provider_test logger_test) add_executable(logs_api_${testname} "${testname}.cc") target_link_libraries(logs_api_${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET logs_api_${testname} - TEST_PREFIX logs. - TEST_LIST logs_api_${testname}) + gtest_discover_tests(logs_api_${testname} TEST_PREFIX logs.) endforeach() if(OTELCPP_WITH_BENCHMARK) diff --git a/api/test/metrics/CMakeLists.txt b/api/test/metrics/CMakeLists.txt index c63af9a7a9..1704d3b174 100644 --- a/api/test/metrics/CMakeLists.txt +++ b/api/test/metrics/CMakeLists.txt @@ -5,8 +5,5 @@ foreach(testname meter_provider_test noop_sync_instrument_test) add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX metrics_new. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX metrics_new.) endforeach() diff --git a/api/test/nostd/CMakeLists.txt b/api/test/nostd/CMakeLists.txt index ee774261ea..35cb7f40c4 100644 --- a/api/test/nostd/CMakeLists.txt +++ b/api/test/nostd/CMakeLists.txt @@ -15,8 +15,5 @@ foreach( add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX nostd. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX nostd.) endforeach() diff --git a/api/test/plugin/CMakeLists.txt b/api/test/plugin/CMakeLists.txt index 8930928f1e..b136112780 100644 --- a/api/test/plugin/CMakeLists.txt +++ b/api/test/plugin/CMakeLists.txt @@ -7,7 +7,4 @@ add_executable(dynamic_load_test dynamic_load_test.cc) target_link_libraries(dynamic_load_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) target_link_libraries(dynamic_load_test ${CMAKE_DL_LIBS}) -gtest_add_tests( - TARGET dynamic_load_test - TEST_PREFIX plugin. - TEST_LIST dynamic_load_test) +gtest_discover_tests(dynamic_load_test TEST_PREFIX plugin.) diff --git a/api/test/singleton/CMakeLists.txt b/api/test/singleton/CMakeLists.txt index 7c30d6e571..62692cfc02 100644 --- a/api/test/singleton/CMakeLists.txt +++ b/api/test/singleton/CMakeLists.txt @@ -49,7 +49,4 @@ target_link_libraries( ${CMAKE_DL_LIBS} opentelemetry_api) -gtest_add_tests( - TARGET singleton_test - TEST_PREFIX singleton. - TEST_LIST singleton_test) +gtest_discover_tests(singleton_test TEST_PREFIX singleton.) diff --git a/api/test/trace/CMakeLists.txt b/api/test/trace/CMakeLists.txt index b12f4c5629..8ca1bc6693 100644 --- a/api/test/trace/CMakeLists.txt +++ b/api/test/trace/CMakeLists.txt @@ -19,10 +19,7 @@ foreach( add_executable(api_${testname} "${testname}.cc") target_link_libraries(api_${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET api_${testname} - TEST_PREFIX trace. - TEST_LIST api_${testname}) + gtest_discover_tests(api_${testname} TEST_PREFIX trace.) endforeach() if(OTELCPP_WITH_BENCHMARK) diff --git a/api/test/trace/propagation/CMakeLists.txt b/api/test/trace/propagation/CMakeLists.txt index f55c738165..7cf7fd81b6 100644 --- a/api/test/trace/propagation/CMakeLists.txt +++ b/api/test/trace/propagation/CMakeLists.txt @@ -8,8 +8,5 @@ foreach(testname http_text_format_test b3_propagation_test add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX trace. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX trace.) endforeach() diff --git a/api/test/trace/propagation/detail/CMakeLists.txt b/api/test/trace/propagation/detail/CMakeLists.txt index c70478efa1..1a10318360 100644 --- a/api/test/trace/propagation/detail/CMakeLists.txt +++ b/api/test/trace/propagation/detail/CMakeLists.txt @@ -5,8 +5,5 @@ foreach(testname hex_test string_test) add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_api) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX trace. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX trace.) endforeach() diff --git a/docs/google-test.md b/docs/google-test.md index 7f767e54e7..cbcf13dc9c 100644 --- a/docs/google-test.md +++ b/docs/google-test.md @@ -229,7 +229,7 @@ foreach( target_link_libraries( ${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_common opentelemetry_trace) - gtest_add_tests(TARGET ${testname} TEST_PREFIX trace. TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX trace.) endforeach() add_executable(sampler_benchmark sampler_benchmark.cc) @@ -238,6 +238,8 @@ target_link_libraries(sampler_benchmark benchmark::benchmark ``` +**Note:** The project uses `gtest_discover_tests()` instead of `gtest_add_tests()` to ensure that tests compiled out by preprocessor conditionals are not registered in CTest. This prevents false-positive test passes for tests that were never actually run. + This is how a `CMakeLists.txt` file will be written with the purpose of unit testing. After writing a unit test, navigate to the `CMakeLists.txt` file for that subdirectory and add the test name to the list of test names in diff --git a/exporters/elasticsearch/CMakeLists.txt b/exporters/elasticsearch/CMakeLists.txt index 18b2bcd898..c918768428 100644 --- a/exporters/elasticsearch/CMakeLists.txt +++ b/exporters/elasticsearch/CMakeLists.txt @@ -51,8 +51,5 @@ if(OTELCPP_BUILD_TESTING) es_log_record_exporter_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_exporter_elasticsearch_logs) - gtest_add_tests( - TARGET es_log_record_exporter_test - TEST_PREFIX exporter. - TEST_LIST es_log_record_exporter_test) + gtest_discover_tests(es_log_record_exporter_test TEST_PREFIX exporter.) endif() # OTELCPP_BUILD_TESTING diff --git a/exporters/etw/CMakeLists.txt b/exporters/etw/CMakeLists.txt index 9f2c3e812f..f9e7f17abc 100644 --- a/exporters/etw/CMakeLists.txt +++ b/exporters/etw/CMakeLists.txt @@ -64,25 +64,10 @@ if(OTELCPP_BUILD_TESTING) opentelemetry_exporter_etw ${CMAKE_THREAD_LIBS_INIT}) endif() - gtest_add_tests( - TARGET etw_provider_test - TEST_PREFIX exporter. - TEST_LIST etw_provider_test) - gtest_add_tests( - TARGET etw_tracer_test - TEST_PREFIX exporter. - TEST_LIST etw_tracer_test) - gtest_add_tests( - TARGET etw_logger_test - TEST_PREFIX exporter. - TEST_LIST etw_logger_test) - gtest_add_tests( - TARGET etw_tracer_test_enable_env_properties - TEST_PREFIX exporter.with_env_properties. - TEST_LIST etw_tracer_test_enable_env_properties) - gtest_add_tests( - TARGET etw_logger_test_enable_env_properties - TEST_PREFIX exporter.with_env_properties. - TEST_LIST etw_logger_test_enable_env_properties) + gtest_discover_tests(etw_provider_test TEST_PREFIX exporter.) + gtest_discover_tests(etw_tracer_test TEST_PREFIX exporter.) + gtest_discover_tests(etw_logger_test TEST_PREFIX exporter.) + gtest_discover_tests(etw_tracer_test_enable_env_properties TEST_PREFIX exporter.with_env_properties.) + gtest_discover_tests(etw_logger_test_enable_env_properties TEST_PREFIX exporter.with_env_properties.) endif() # OTELCPP_BUILD_TESTING diff --git a/exporters/memory/CMakeLists.txt b/exporters/memory/CMakeLists.txt index d61e0632ea..ea27e1d296 100644 --- a/exporters/memory/CMakeLists.txt +++ b/exporters/memory/CMakeLists.txt @@ -86,20 +86,8 @@ if(OTELCPP_BUILD_TESTING) ${CMAKE_THREAD_LIBS_INIT} opentelemetry_exporter_in_memory_metric opentelemetry_resources) - gtest_add_tests( - TARGET in_memory_span_data_test - TEST_PREFIX exporter. - TEST_LIST in_memory_span_data_test) - gtest_add_tests( - TARGET in_memory_span_exporter_test - TEST_PREFIX exporter. - TEST_LIST in_memory_span_exporter_test) - gtest_add_tests( - TARGET in_memory_metric_data_test - TEST_PREFIX exporter. - TEST_LIST in_memory_metric_data_test) - gtest_add_tests( - TARGET in_memory_metric_exporter_test - TEST_PREFIX exporter. - TEST_LIST in_memory_metric_exporter_test) + gtest_discover_tests(in_memory_span_data_test TEST_PREFIX exporter.) + gtest_discover_tests(in_memory_span_exporter_test TEST_PREFIX exporter.) + gtest_discover_tests(in_memory_metric_data_test TEST_PREFIX exporter.) + gtest_discover_tests(in_memory_metric_exporter_test TEST_PREFIX exporter.) endif() diff --git a/exporters/ostream/CMakeLists.txt b/exporters/ostream/CMakeLists.txt index daebba8d97..95542e2a93 100644 --- a/exporters/ostream/CMakeLists.txt +++ b/exporters/ostream/CMakeLists.txt @@ -27,10 +27,7 @@ if(OTELCPP_BUILD_TESTING) add_executable(ostream_span_test test/ostream_span_test.cc) target_link_libraries(ostream_span_test ${GTEST_BOTH_LIBRARIES} opentelemetry_exporter_ostream_span) - gtest_add_tests( - TARGET ostream_span_test - TEST_PREFIX exporter. - TEST_LIST ostream_span_test) + gtest_discover_tests(ostream_span_test TEST_PREFIX exporter.) endif() # OTELCPP_BUILD_TESTING # @@ -81,10 +78,7 @@ if(OTELCPP_BUILD_TESTING) target_link_libraries( ostream_metric_test ${GTEST_BOTH_LIBRARIES} opentelemetry_exporter_ostream_metrics opentelemetry_resources) - gtest_add_tests( - TARGET ostream_metric_test - TEST_PREFIX exporter. - TEST_LIST ostream_metric_test) + gtest_discover_tests(ostream_metric_test TEST_PREFIX exporter.) endif() # @@ -130,10 +124,7 @@ if(OTELCPP_BUILD_TESTING) add_executable(ostream_log_test test/ostream_log_test.cc) target_link_libraries(ostream_log_test ${GTEST_BOTH_LIBRARIES} opentelemetry_exporter_ostream_logs) - gtest_add_tests( - TARGET ostream_log_test - TEST_PREFIX exporter. - TEST_LIST ostream_log_test) + gtest_discover_tests(ostream_log_test TEST_PREFIX exporter.) endif() # diff --git a/exporters/otlp/CMakeLists.txt b/exporters/otlp/CMakeLists.txt index b63ab23eca..f4f3b0da01 100644 --- a/exporters/otlp/CMakeLists.txt +++ b/exporters/otlp/CMakeLists.txt @@ -830,10 +830,7 @@ if(OTELCPP_BUILD_TESTING) target_link_libraries( otlp_recordable_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_otlp_recordable protobuf::libprotobuf) - gtest_add_tests( - TARGET otlp_recordable_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_recordable_test) + gtest_discover_tests(otlp_recordable_test TEST_PREFIX exporter.otlp.) add_executable(otlp_log_recordable_test test/otlp_log_recordable_test.cc) target_link_libraries(otlp_log_recordable_test ${GTEST_BOTH_LIBRARIES} @@ -842,10 +839,7 @@ if(OTELCPP_BUILD_TESTING) target_compile_definitions(otlp_log_recordable_test PRIVATE ENABLE_OTLP_UTF8_VALIDITY) endif() - gtest_add_tests( - TARGET otlp_log_recordable_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_log_recordable_test) + gtest_discover_tests(otlp_log_recordable_test TEST_PREFIX exporter.otlp.) add_executable(otlp_populate_attribute_utils_test test/otlp_populate_attribute_utils_test.cc) @@ -856,10 +850,7 @@ if(OTELCPP_BUILD_TESTING) target_compile_definitions(otlp_populate_attribute_utils_test PRIVATE ENABLE_OTLP_UTF8_VALIDITY) endif() - gtest_add_tests( - TARGET otlp_populate_attribute_utils_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_populate_attribute_utils_test) + gtest_discover_tests(otlp_populate_attribute_utils_test TEST_PREFIX exporter.otlp.) add_executable(otlp_metrics_serialization_test test/otlp_metrics_serialization_test.cc) @@ -867,39 +858,27 @@ if(OTELCPP_BUILD_TESTING) otlp_metrics_serialization_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_otlp_recordable protobuf::libprotobuf) - gtest_add_tests( - TARGET otlp_metrics_serialization_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_metrics_serialization_test) + gtest_discover_tests(otlp_metrics_serialization_test TEST_PREFIX exporter.otlp.) if(OTELCPP_WITH_OTLP_GRPC) add_executable(otlp_grpc_exporter_test test/otlp_grpc_exporter_test.cc) target_link_libraries( otlp_grpc_exporter_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_grpc opentelemetry_test_common) - gtest_add_tests( - TARGET otlp_grpc_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_grpc_exporter_test) + gtest_discover_tests(otlp_grpc_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_grpc_target_test test/otlp_grpc_target_test.cc) target_link_libraries( otlp_grpc_target_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_grpc) - gtest_add_tests( - TARGET otlp_grpc_target_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_grpc_target_test) + gtest_discover_tests(otlp_grpc_target_test TEST_PREFIX exporter.otlp.) add_executable(otlp_grpc_exporter_factory_test test/otlp_grpc_exporter_factory_test.cc) target_link_libraries( otlp_grpc_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_grpc) - gtest_add_tests( - TARGET otlp_grpc_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_grpc_exporter_factory_test) + gtest_discover_tests(otlp_grpc_exporter_factory_test TEST_PREFIX exporter.otlp.) add_executable(otlp_grpc_log_record_exporter_test test/otlp_grpc_log_record_exporter_test.cc) @@ -913,10 +892,7 @@ if(OTELCPP_BUILD_TESTING) opentelemetry_trace opentelemetry_logs opentelemetry_test_common) - gtest_add_tests( - TARGET otlp_grpc_log_record_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_grpc_log_record_exporter_test) + gtest_discover_tests(otlp_grpc_log_record_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_grpc_log_record_exporter_factory_test test/otlp_grpc_log_record_exporter_factory_test.cc) @@ -924,10 +900,7 @@ if(OTELCPP_BUILD_TESTING) otlp_grpc_log_record_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_grpc_log opentelemetry_logs) - gtest_add_tests( - TARGET otlp_grpc_log_record_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_grpc_log_record_exporter_factory_test) + gtest_discover_tests(otlp_grpc_log_record_exporter_factory_test TEST_PREFIX exporter.otlp.) add_executable(otlp_grpc_metric_exporter_test test/otlp_grpc_metric_exporter_test.cc) @@ -939,10 +912,7 @@ if(OTELCPP_BUILD_TESTING) opentelemetry_exporter_otlp_grpc opentelemetry_exporter_otlp_grpc_metrics opentelemetry_test_common) - gtest_add_tests( - TARGET otlp_grpc_metric_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_grpc_metric_exporter_test) + gtest_discover_tests(otlp_grpc_metric_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_grpc_metric_exporter_factory_test test/otlp_grpc_metric_exporter_factory_test.cc) @@ -950,10 +920,7 @@ if(OTELCPP_BUILD_TESTING) otlp_grpc_metric_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_grpc_metrics opentelemetry_metrics) - gtest_add_tests( - TARGET otlp_grpc_metric_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_grpc_metric_exporter_factory_test) + gtest_discover_tests(otlp_grpc_metric_exporter_factory_test TEST_PREFIX exporter.otlp.) endif() if(OTELCPP_WITH_OTLP_HTTP) @@ -971,20 +938,14 @@ if(OTELCPP_BUILD_TESTING) if(WIN32) target_link_libraries(otlp_http_exporter_test ws2_32) endif() - gtest_add_tests( - TARGET otlp_http_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_exporter_test) + gtest_discover_tests(otlp_http_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_http_exporter_factory_test test/otlp_http_exporter_factory_test.cc) target_link_libraries( otlp_http_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_http) - gtest_add_tests( - TARGET otlp_http_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_exporter_factory_test) + gtest_discover_tests(otlp_http_exporter_factory_test TEST_PREFIX exporter.otlp.) add_executable(otlp_http_log_record_exporter_test test/otlp_http_log_record_exporter_test.cc) @@ -1001,10 +962,7 @@ if(OTELCPP_BUILD_TESTING) if(WIN32) target_link_libraries(otlp_http_log_record_exporter_test ws2_32) endif() - gtest_add_tests( - TARGET otlp_http_log_record_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_log_record_exporter_test) + gtest_discover_tests(otlp_http_log_record_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_http_log_record_exporter_factory_test test/otlp_http_log_record_exporter_factory_test.cc) @@ -1012,10 +970,7 @@ if(OTELCPP_BUILD_TESTING) otlp_http_log_record_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_http_log opentelemetry_logs) - gtest_add_tests( - TARGET otlp_http_log_record_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_log_record_exporter_factory_test) + gtest_discover_tests(otlp_http_log_record_exporter_factory_test TEST_PREFIX exporter.otlp.) add_executable(otlp_http_metric_exporter_test test/otlp_http_metric_exporter_test.cc) @@ -1030,10 +985,7 @@ if(OTELCPP_BUILD_TESTING) nlohmann_json::nlohmann_json protobuf::libprotobuf opentelemetry_test_common) - gtest_add_tests( - TARGET otlp_http_metric_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_metric_exporter_test) + gtest_discover_tests(otlp_http_metric_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_http_metric_exporter_factory_test test/otlp_http_metric_exporter_factory_test.cc) @@ -1041,10 +993,7 @@ if(OTELCPP_BUILD_TESTING) otlp_http_metric_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_http_metric opentelemetry_metrics) - gtest_add_tests( - TARGET otlp_http_metric_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_metric_exporter_factory_test) + gtest_discover_tests(otlp_http_metric_exporter_factory_test TEST_PREFIX exporter.otlp.) add_executable(otlp_http_exporter_custom_client_test test/otlp_http_exporter_custom_client_test.cc) @@ -1052,10 +1001,7 @@ if(OTELCPP_BUILD_TESTING) otlp_http_exporter_custom_client_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_http opentelemetry_http_client_nosend) - gtest_add_tests( - TARGET otlp_http_exporter_custom_client_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_exporter_custom_client_test) + gtest_discover_tests(otlp_http_exporter_custom_client_test TEST_PREFIX exporter.otlp.) add_executable(otlp_http_metric_exporter_custom_client_test test/otlp_http_metric_exporter_custom_client_test.cc) @@ -1063,10 +1009,7 @@ if(OTELCPP_BUILD_TESTING) otlp_http_metric_exporter_custom_client_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_exporter_otlp_http_metric opentelemetry_metrics opentelemetry_http_client_nosend) - gtest_add_tests( - TARGET otlp_http_metric_exporter_custom_client_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_metric_exporter_custom_client_test) + gtest_discover_tests(otlp_http_metric_exporter_custom_client_test TEST_PREFIX exporter.otlp.) add_executable(otlp_http_log_record_exporter_custom_client_test test/otlp_http_log_record_exporter_custom_client_test.cc) @@ -1074,10 +1017,7 @@ if(OTELCPP_BUILD_TESTING) otlp_http_log_record_exporter_custom_client_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_exporter_otlp_http_log opentelemetry_logs opentelemetry_http_client_nosend) - gtest_add_tests( - TARGET otlp_http_log_record_exporter_custom_client_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_http_log_record_exporter_custom_client_test) + gtest_discover_tests(otlp_http_log_record_exporter_custom_client_test TEST_PREFIX exporter.otlp.) endif() if(OTELCPP_WITH_OTLP_FILE) @@ -1090,10 +1030,7 @@ if(OTELCPP_BUILD_TESTING) opentelemetry_exporter_otlp_file opentelemetry_otlp_recordable nlohmann_json::nlohmann_json) - gtest_add_tests( - TARGET otlp_file_client_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_file_client_test) + gtest_discover_tests(otlp_file_client_test TEST_PREFIX exporter.otlp.) add_executable(otlp_file_exporter_test test/otlp_file_exporter_test.cc) target_link_libraries( @@ -1104,20 +1041,14 @@ if(OTELCPP_BUILD_TESTING) opentelemetry_exporter_otlp_file nlohmann_json::nlohmann_json protobuf::libprotobuf) - gtest_add_tests( - TARGET otlp_file_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_file_exporter_test) + gtest_discover_tests(otlp_file_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_file_exporter_factory_test test/otlp_file_exporter_factory_test.cc) target_link_libraries( otlp_file_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_file) - gtest_add_tests( - TARGET otlp_file_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_file_exporter_factory_test) + gtest_discover_tests(otlp_file_exporter_factory_test TEST_PREFIX exporter.otlp.) add_executable(otlp_file_log_record_exporter_test test/otlp_file_log_record_exporter_test.cc) @@ -1129,10 +1060,7 @@ if(OTELCPP_BUILD_TESTING) opentelemetry_exporter_otlp_file_log opentelemetry_logs nlohmann_json::nlohmann_json) - gtest_add_tests( - TARGET otlp_file_log_record_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_file_log_record_exporter_test) + gtest_discover_tests(otlp_file_log_record_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_file_log_record_exporter_factory_test test/otlp_file_log_record_exporter_factory_test.cc) @@ -1140,10 +1068,7 @@ if(OTELCPP_BUILD_TESTING) otlp_file_log_record_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_file_log opentelemetry_logs) - gtest_add_tests( - TARGET otlp_file_log_record_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_file_log_record_exporter_factory_test) + gtest_discover_tests(otlp_file_log_record_exporter_factory_test TEST_PREFIX exporter.otlp.) add_executable(otlp_file_metric_exporter_test test/otlp_file_metric_exporter_test.cc) @@ -1156,10 +1081,7 @@ if(OTELCPP_BUILD_TESTING) opentelemetry_metrics nlohmann_json::nlohmann_json protobuf::libprotobuf) - gtest_add_tests( - TARGET otlp_file_metric_exporter_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_file_metric_exporter_test) + gtest_discover_tests(otlp_file_metric_exporter_test TEST_PREFIX exporter.otlp.) add_executable(otlp_file_metric_exporter_factory_test test/otlp_file_metric_exporter_factory_test.cc) @@ -1167,10 +1089,7 @@ if(OTELCPP_BUILD_TESTING) otlp_file_metric_exporter_factory_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${GMOCK_LIB} opentelemetry_exporter_otlp_file_metric opentelemetry_metrics) - gtest_add_tests( - TARGET otlp_file_metric_exporter_factory_test - TEST_PREFIX exporter.otlp. - TEST_LIST otlp_file_metric_exporter_factory_test) + gtest_discover_tests(otlp_file_metric_exporter_factory_test TEST_PREFIX exporter.otlp.) endif() endif() # OTELCPP_BUILD_TESTING diff --git a/exporters/prometheus/test/CMakeLists.txt b/exporters/prometheus/test/CMakeLists.txt index 1ef890b27e..109994b141 100644 --- a/exporters/prometheus/test/CMakeLists.txt +++ b/exporters/prometheus/test/CMakeLists.txt @@ -7,8 +7,5 @@ foreach(testname exporter_test collector_test exporter_utils_test) ${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_exporter_prometheus prometheus-cpp::pull opentelemetry_resources) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX exporter. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX exporter.) endforeach() diff --git a/exporters/zipkin/CMakeLists.txt b/exporters/zipkin/CMakeLists.txt index d51cdb3bb5..c774a4b1d1 100644 --- a/exporters/zipkin/CMakeLists.txt +++ b/exporters/zipkin/CMakeLists.txt @@ -57,10 +57,7 @@ if(OTELCPP_BUILD_TESTING) zipkin_recordable_test ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_exporter_zipkin_trace opentelemetry_resources) - gtest_add_tests( - TARGET zipkin_recordable_test - TEST_PREFIX exporter. - TEST_LIST zipkin_recordable_test) + gtest_discover_tests(zipkin_recordable_test TEST_PREFIX exporter.) if(OTELCPP_WITH_HTTP_CLIENT_CURL) add_executable(zipkin_exporter_test test/zipkin_exporter_test.cc) @@ -78,9 +75,6 @@ if(OTELCPP_BUILD_TESTING) target_link_libraries(zipkin_exporter_test ws2_32) endif() - gtest_add_tests( - TARGET zipkin_exporter_test - TEST_PREFIX exporter. - TEST_LIST zipkin_exporter_test) + gtest_discover_tests(zipkin_exporter_test TEST_PREFIX exporter.) endif() endif() # OTELCPP_BUILD_TESTING diff --git a/ext/test/http/CMakeLists.txt b/ext/test/http/CMakeLists.txt index a1780586ae..1e2590a846 100644 --- a/ext/test/http/CMakeLists.txt +++ b/ext/test/http/CMakeLists.txt @@ -11,10 +11,7 @@ if(OTELCPP_WITH_HTTP_CLIENT_CURL) if(WIN32) target_link_libraries(${FILENAME} PRIVATE ws2_32) endif() - gtest_add_tests( - TARGET ${FILENAME} - TEST_PREFIX ext.http.curl. - TEST_LIST ${FILENAME}) + gtest_discover_tests(${FILENAME} TEST_PREFIX ext.http.curl.) endif() set(SOCKET_TOOLS_FILENAME socket_tools_test) @@ -26,16 +23,10 @@ target_link_libraries(${SOCKET_TOOLS_FILENAME} opentelemetry_ext ${GMOCK_LIB} if(WIN32) target_link_libraries(${SOCKET_TOOLS_FILENAME} ws2_32) endif() -gtest_add_tests( - TARGET ${SOCKET_TOOLS_FILENAME} - TEST_PREFIX ext.http.sockettools. - TEST_LIST ${SOCKET_TOOLS_FILENAME}) +gtest_discover_tests(${SOCKET_TOOLS_FILENAME} TEST_PREFIX ext.http.sockettools.) set(URL_PARSER_FILENAME url_parser_test) add_executable(${URL_PARSER_FILENAME} ${URL_PARSER_FILENAME}.cc) target_link_libraries(${URL_PARSER_FILENAME} opentelemetry_ext ${GMOCK_LIB} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) -gtest_add_tests( - TARGET ${URL_PARSER_FILENAME} - TEST_PREFIX ext.http.urlparser. - TEST_LIST ${URL_PARSER_FILENAME}) +gtest_discover_tests(${URL_PARSER_FILENAME} TEST_PREFIX ext.http.urlparser.) diff --git a/install/test/cmake/api_only_test/CMakeLists.txt b/install/test/cmake/api_only_test/CMakeLists.txt index bc62971985..2c02c7e71c 100644 --- a/install/test/cmake/api_only_test/CMakeLists.txt +++ b/install/test/cmake/api_only_test/CMakeLists.txt @@ -112,7 +112,4 @@ target_link_libraries(api_only_test PRIVATE opentelemetry-cpp::api GTest::gtest include(CTest) include(GoogleTest) -gtest_add_tests( - TARGET api_only_test - TEST_PREFIX api_only. - TEST_LIST api_only_test) +gtest_discover_tests(api_only_test TEST_PREFIX api_only.) diff --git a/install/test/cmake/fetch_content_test/CMakeLists.txt b/install/test/cmake/fetch_content_test/CMakeLists.txt index 432523d966..ad59ac6087 100644 --- a/install/test/cmake/fetch_content_test/CMakeLists.txt +++ b/install/test/cmake/fetch_content_test/CMakeLists.txt @@ -154,7 +154,4 @@ target_link_libraries( include(CTest) include(GoogleTest) -gtest_add_tests( - TARGET fetch_content_src_test - TEST_PREFIX fetch_content. - TEST_LIST fetch_content_src_test) +gtest_discover_tests(fetch_content_src_test TEST_PREFIX fetch_content.) diff --git a/opentracing-shim/CMakeLists.txt b/opentracing-shim/CMakeLists.txt index fb7cdaed21..bb24b1c18e 100644 --- a/opentracing-shim/CMakeLists.txt +++ b/opentracing-shim/CMakeLists.txt @@ -46,9 +46,6 @@ if(OTELCPP_BUILD_TESTING) target_link_libraries( ${testname} PRIVATE ${GTEST_BOTH_LIBRARIES} Threads::Threads opentelemetry_opentracing_shim) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX opentracing_shim. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX opentracing_shim.) endforeach() endif() # OTELCPP_BUILD_TESTING diff --git a/resource_detectors/test/CMakeLists.txt b/resource_detectors/test/CMakeLists.txt index 5e6212f0c8..94feaf708b 100644 --- a/resource_detectors/test/CMakeLists.txt +++ b/resource_detectors/test/CMakeLists.txt @@ -9,10 +9,7 @@ add_executable(container_resource_detector_test container_detector_test.cc) target_link_libraries( container_resource_detector_test PRIVATE opentelemetry_container_resource_detector GTest::gtest_main) -gtest_add_tests( - TARGET container_resource_detector_test - TEST_PREFIX resource_detector. - TEST_LIST container_resource_detector_test) +gtest_discover_tests(container_resource_detector_test TEST_PREFIX resource_detector.) add_executable(container_resource_detector_builder_test container_detector_builder_test.cc) @@ -20,10 +17,7 @@ target_link_libraries( container_resource_detector_builder_test PRIVATE opentelemetry_container_resource_detector_builder opentelemetry_configuration_core GTest::gtest_main) -gtest_add_tests( - TARGET container_resource_detector_builder_test - TEST_PREFIX resource_detector. - TEST_LIST container_resource_detector_builder_test) +gtest_discover_tests(container_resource_detector_builder_test TEST_PREFIX resource_detector.) # # env_entity_resource_detector tests @@ -33,10 +27,7 @@ add_executable(env_entity_resource_detector_test env_entity_detector_test.cc) target_link_libraries( env_entity_resource_detector_test PRIVATE opentelemetry_env_entity_resource_detector GTest::gtest_main) -gtest_add_tests( - TARGET env_entity_resource_detector_test - TEST_PREFIX resource_detector. - TEST_LIST env_entity_resource_detector_test) +gtest_discover_tests(env_entity_resource_detector_test TEST_PREFIX resource_detector.) # # host_resource_detector tests @@ -46,10 +37,7 @@ add_executable(host_resource_detector_test host_detector_test.cc) target_link_libraries( host_resource_detector_test PRIVATE opentelemetry_host_resource_detector GTest::gtest_main) -gtest_add_tests( - TARGET host_resource_detector_test - TEST_PREFIX resource_detector. - TEST_LIST host_resource_detector_test) +gtest_discover_tests(host_resource_detector_test TEST_PREFIX resource_detector.) add_executable(host_resource_detector_builder_test host_detector_builder_test.cc) @@ -57,10 +45,7 @@ target_link_libraries( host_resource_detector_builder_test PRIVATE opentelemetry_host_resource_detector_builder opentelemetry_configuration_core GTest::gtest_main) -gtest_add_tests( - TARGET host_resource_detector_builder_test - TEST_PREFIX resource_detector. - TEST_LIST host_resource_detector_builder_test) +gtest_discover_tests(host_resource_detector_builder_test TEST_PREFIX resource_detector.) # # process_resource_detector tests @@ -70,10 +55,7 @@ add_executable(process_resource_detector_test process_detector_test.cc) target_link_libraries( process_resource_detector_test PRIVATE opentelemetry_process_resource_detector GTest::gtest_main) -gtest_add_tests( - TARGET process_resource_detector_test - TEST_PREFIX resource_detector. - TEST_LIST process_resource_detector_test) +gtest_discover_tests(process_resource_detector_test TEST_PREFIX resource_detector.) add_executable(process_resource_detector_builder_test process_detector_builder_test.cc) @@ -81,10 +63,7 @@ target_link_libraries( process_resource_detector_builder_test PRIVATE opentelemetry_process_resource_detector_builder opentelemetry_configuration_core GTest::gtest_main) -gtest_add_tests( - TARGET process_resource_detector_builder_test - TEST_PREFIX resource_detector. - TEST_LIST process_resource_detector_builder_test) +gtest_discover_tests(process_resource_detector_builder_test TEST_PREFIX resource_detector.) # # service_resource_detector_utils tests @@ -96,10 +75,7 @@ target_link_libraries( service_resource_detector_utils_test PRIVATE opentelemetry_service_resource_detector_utils opentelemetry_process_resource_detector GTest::gtest_main) -gtest_add_tests( - TARGET service_resource_detector_utils_test - TEST_PREFIX resource_detector. - TEST_LIST service_resource_detector_utils_test) +gtest_discover_tests(service_resource_detector_utils_test TEST_PREFIX resource_detector.) # # service_resource_detector tests @@ -109,10 +85,7 @@ add_executable(service_resource_detector_test service_detector_test.cc) target_link_libraries( service_resource_detector_test PRIVATE opentelemetry_service_resource_detector GTest::gtest_main) -gtest_add_tests( - TARGET service_resource_detector_test - TEST_PREFIX resource_detector. - TEST_LIST service_resource_detector_test) +gtest_discover_tests(service_resource_detector_test TEST_PREFIX resource_detector.) # # service_resource_detector_builder tests @@ -124,7 +97,4 @@ target_link_libraries( service_resource_detector_builder_test PRIVATE opentelemetry_service_resource_detector_builder opentelemetry_configuration_core GTest::gtest_main) -gtest_add_tests( - TARGET service_resource_detector_builder_test - TEST_PREFIX resource_detector. - TEST_LIST service_resource_detector_builder_test) +gtest_discover_tests(service_resource_detector_builder_test TEST_PREFIX resource_detector.) diff --git a/sdk/test/common/CMakeLists.txt b/sdk/test/common/CMakeLists.txt index ae68bd720f..ad9e218b54 100644 --- a/sdk/test/common/CMakeLists.txt +++ b/sdk/test/common/CMakeLists.txt @@ -21,18 +21,12 @@ foreach( ${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_common opentelemetry_trace) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX trace. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX trace.) endforeach() add_executable(base64_test base64_test.cc) target_link_libraries(base64_test ${GTEST_BOTH_LIBRARIES} opentelemetry_common) -gtest_add_tests( - TARGET base64_test - TEST_PREFIX common. - TEST_LIST base64_test) +gtest_discover_tests(base64_test TEST_PREFIX common.) add_executable(random_fork_test random_fork_test.cc) target_link_libraries(random_fork_test opentelemetry_common) diff --git a/sdk/test/configuration/CMakeLists.txt b/sdk/test/configuration/CMakeLists.txt index 51db624863..4ca8b39b1f 100644 --- a/sdk/test/configuration/CMakeLists.txt +++ b/sdk/test/configuration/CMakeLists.txt @@ -5,10 +5,7 @@ add_executable(registry_test registry_test.cc) target_link_libraries( registry_test PRIVATE ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_configuration_core) -gtest_add_tests( - TARGET registry_test - TEST_PREFIX config. - TEST_LIST registry_test) +gtest_discover_tests(registry_test TEST_PREFIX config.) add_executable(trace_builders_test trace_builders_test.cc) target_link_libraries( @@ -16,10 +13,7 @@ target_link_libraries( PRIVATE ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_configuration_trace_builders opentelemetry_configuration_core) -gtest_add_tests( - TARGET trace_builders_test - TEST_PREFIX config. - TEST_LIST trace_builders_test) +gtest_discover_tests(trace_builders_test TEST_PREFIX config.) add_executable(logs_builders_test logs_builders_test.cc) target_link_libraries( @@ -27,10 +21,7 @@ target_link_libraries( PRIVATE ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_configuration_logs_builders opentelemetry_configuration_core) -gtest_add_tests( - TARGET logs_builders_test - TEST_PREFIX config. - TEST_LIST logs_builders_test) +gtest_discover_tests(logs_builders_test TEST_PREFIX config.) add_executable(metrics_builders_test metrics_builders_test.cc) target_link_libraries( @@ -38,10 +29,7 @@ target_link_libraries( PRIVATE ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_configuration_metrics_builders opentelemetry_configuration_core) -gtest_add_tests( - TARGET metrics_builders_test - TEST_PREFIX config. - TEST_LIST metrics_builders_test) +gtest_discover_tests(metrics_builders_test TEST_PREFIX config.) foreach(testname sdk_builder_test configured_sdk_test programmatic_configuration_test) @@ -49,10 +37,7 @@ foreach(testname sdk_builder_test configured_sdk_test target_link_libraries( ${testname} PRIVATE ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_configuration_registry_factory) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX config. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX config.) endforeach() target_link_libraries(sdk_builder_test PRIVATE opentelemetry_test_common) @@ -71,9 +56,6 @@ if(WITH_CONFIGURATION) target_link_libraries( ${testname} PRIVATE ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_configuration) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX yaml. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX yaml.) endforeach() endif() diff --git a/sdk/test/instrumentationscope/CMakeLists.txt b/sdk/test/instrumentationscope/CMakeLists.txt index 659728300b..605ebab3ad 100644 --- a/sdk/test/instrumentationscope/CMakeLists.txt +++ b/sdk/test/instrumentationscope/CMakeLists.txt @@ -7,8 +7,5 @@ foreach(testname instrumentationscope_test) add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_sdk) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX instrumentationscope. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX instrumentationscope.) endforeach() diff --git a/sdk/test/logs/CMakeLists.txt b/sdk/test/logs/CMakeLists.txt index 1fcbc3bb27..a12d250c35 100644 --- a/sdk/test/logs/CMakeLists.txt +++ b/sdk/test/logs/CMakeLists.txt @@ -15,8 +15,5 @@ foreach( target_link_libraries( ${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_logs opentelemetry_trace) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX logs. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX logs.) endforeach() diff --git a/sdk/test/metrics/CMakeLists.txt b/sdk/test/metrics/CMakeLists.txt index fabfaa7638..12afbd71b7 100644 --- a/sdk/test/metrics/CMakeLists.txt +++ b/sdk/test/metrics/CMakeLists.txt @@ -46,10 +46,7 @@ foreach( opentelemetry_resources opentelemetry_test_common) target_compile_definitions(${testname} PRIVATE UNIT_TESTING) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX metrics. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX metrics.) endforeach() if(OPENTELEMETRY_ABI_VERSION_NO GREATER_EQUAL 2) @@ -58,10 +55,7 @@ if(OPENTELEMETRY_ABI_VERSION_NO GREATER_EQUAL 2) multi_observer_test ${GTEST_BOTH_LIBRARIES} ${GMOCK_LIB} ${CMAKE_THREAD_LIBS_INIT} metrics_common_test_utils opentelemetry_resources) target_compile_definitions(multi_observer_test PRIVATE UNIT_TESTING) - gtest_add_tests( - TARGET multi_observer_test - TEST_PREFIX metrics. - TEST_LIST multi_observer_test) + gtest_discover_tests(multi_observer_test TEST_PREFIX metrics.) if(OTELCPP_WITH_METRICS_BOUND_INSTRUMENTS_PREVIEW) add_executable(bound_sync_instruments_test bound_sync_instruments_test.cc) @@ -70,10 +64,7 @@ if(OPENTELEMETRY_ABI_VERSION_NO GREATER_EQUAL 2) PRIVATE ${GTEST_BOTH_LIBRARIES} ${GMOCK_LIB} ${CMAKE_THREAD_LIBS_INIT} metrics_common_test_utils opentelemetry_resources) target_compile_definitions(bound_sync_instruments_test PRIVATE UNIT_TESTING) - gtest_add_tests( - TARGET bound_sync_instruments_test - TEST_PREFIX metrics. - TEST_LIST bound_sync_instruments_test) + gtest_discover_tests(bound_sync_instruments_test TEST_PREFIX metrics.) endif() endif() diff --git a/sdk/test/metrics/exemplar/CMakeLists.txt b/sdk/test/metrics/exemplar/CMakeLists.txt index 2dfb891ee2..fb9b03291c 100644 --- a/sdk/test/metrics/exemplar/CMakeLists.txt +++ b/sdk/test/metrics/exemplar/CMakeLists.txt @@ -9,8 +9,5 @@ foreach( target_link_libraries( ${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_metrics opentelemetry_metrics) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX metrics. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX metrics.) endforeach() diff --git a/sdk/test/resource/CMakeLists.txt b/sdk/test/resource/CMakeLists.txt index dfe78589f8..51d657c136 100644 --- a/sdk/test/resource/CMakeLists.txt +++ b/sdk/test/resource/CMakeLists.txt @@ -5,8 +5,5 @@ foreach(testname resource_test) add_executable(${testname} "${testname}.cc") target_link_libraries(${testname} ${GTEST_BOTH_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} opentelemetry_resources) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX resources. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX resources.) endforeach() diff --git a/sdk/test/trace/CMakeLists.txt b/sdk/test/trace/CMakeLists.txt index 0b84555faa..b2a2a972f9 100644 --- a/sdk/test/trace/CMakeLists.txt +++ b/sdk/test/trace/CMakeLists.txt @@ -26,10 +26,7 @@ foreach( opentelemetry_trace opentelemetry_resources opentelemetry_exporter_in_memory) - gtest_add_tests( - TARGET ${testname} - TEST_PREFIX trace. - TEST_LIST ${testname}) + gtest_discover_tests(${testname} TEST_PREFIX trace.) endforeach() if(OTELCPP_WITH_BENCHMARK) From 4fb238ac1377f245374854c580a3eed6ebbfb885 Mon Sep 17 00:00:00 2001 From: Rajkaran Date: Fri, 23 Oct 2026 18:31:15 +0530 Subject: [PATCH 2/3] Fix changelog merge marker --- CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index da413531ca..9e49b6214a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -912,7 +912,6 @@ Important changes: * [CONFIGURATION] Complete resource detection support in SdkBuilder (#4424) [#4424](https://github.com/open-telemetry/opentelemetry-cpp/pull/4424) ->>>>>>> upstream/main * Behavior change: `SetResource` no longer runs `OTELResourceDetector` and no longer injects a default `service.name`, since neither is part of the configuration model. Use the `service` detector or set the attributes in From 3fed106ed94e7cbb320fee1818bebedab0b91e42 Mon Sep 17 00:00:00 2001 From: Rajkaran Date: Fri, 23 Oct 2026 18:39:33 +0530 Subject: [PATCH 3/3] Fix CMake configuration error: move timeout properties into gtest_discover_tests With gtest_discover_tests, tests are discovered at build time, not configure time. set_tests_properties cannot find tests that don't exist yet at configure time. Move the TIMEOUT properties directly into the gtest_discover_tests call for the specific tests that need them. Fixes: - sdk/test/trace/CMakeLists.txt: tracer_provider_test timeout - sdk/test/metrics/CMakeLists.txt: meter_provider_sdk_test timeout - sdk/test/logs/CMakeLists.txt: logger_provider_sdk_test timeout --- sdk/test/logs/CMakeLists.txt | 8 +++----- sdk/test/metrics/CMakeLists.txt | 10 +++++----- sdk/test/trace/CMakeLists.txt | 8 +++----- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/sdk/test/logs/CMakeLists.txt b/sdk/test/logs/CMakeLists.txt index cd29281a6d..02e476e641 100644 --- a/sdk/test/logs/CMakeLists.txt +++ b/sdk/test/logs/CMakeLists.txt @@ -19,10 +19,8 @@ foreach( opentelemetry_logs opentelemetry_trace) if(testname STREQUAL "logger_provider_sdk_test") target_link_libraries(${testname} opentelemetry_test_common) + gtest_discover_tests(${testname} TEST_PREFIX logs. PROPERTIES TIMEOUT 10) + else() + gtest_discover_tests(${testname} TEST_PREFIX logs.) endif() - gtest_discover_tests(${testname} TEST_PREFIX logs.) endforeach() - -set_tests_properties( - logs.LoggerProviderSDK.ConstructionFailureDiagnosticsAllowProviderReentry - PROPERTIES TIMEOUT 10) diff --git a/sdk/test/metrics/CMakeLists.txt b/sdk/test/metrics/CMakeLists.txt index 9973ac2acd..3901921708 100644 --- a/sdk/test/metrics/CMakeLists.txt +++ b/sdk/test/metrics/CMakeLists.txt @@ -46,13 +46,13 @@ foreach( opentelemetry_resources opentelemetry_test_common) target_compile_definitions(${testname} PRIVATE UNIT_TESTING) - gtest_discover_tests(${testname} TEST_PREFIX metrics.) + if(testname STREQUAL "meter_provider_sdk_test") + gtest_discover_tests(${testname} TEST_PREFIX metrics. PROPERTIES TIMEOUT 10) + else() + gtest_discover_tests(${testname} TEST_PREFIX metrics.) + endif() endforeach() -set_tests_properties( - metrics.MeterProvider.ConstructionFailureDiagnosticsAllowProviderReentry - PROPERTIES TIMEOUT 10) - if(OPENTELEMETRY_ABI_VERSION_NO GREATER_EQUAL 2) add_executable(multi_observer_test multi_observer_test.cc) target_link_libraries( diff --git a/sdk/test/trace/CMakeLists.txt b/sdk/test/trace/CMakeLists.txt index 35eb1f5ce0..d9554edb62 100644 --- a/sdk/test/trace/CMakeLists.txt +++ b/sdk/test/trace/CMakeLists.txt @@ -30,14 +30,12 @@ foreach( opentelemetry_exporter_in_memory) if(testname STREQUAL "tracer_provider_test") target_link_libraries(${testname} opentelemetry_test_common) + gtest_discover_tests(${testname} TEST_PREFIX trace. PROPERTIES TIMEOUT 10) + else() + gtest_discover_tests(${testname} TEST_PREFIX trace.) endif() - gtest_discover_tests(${testname} TEST_PREFIX trace.) endforeach() -set_tests_properties( - trace.TracerProvider.ConstructionFailureDiagnosticsAllowProviderReentry - PROPERTIES TIMEOUT 10) - if(OTELCPP_WITH_BENCHMARK) add_executable(sampler_benchmark sampler_benchmark.cc) target_link_libraries(