lishuxu commented on code in PR #151: URL: https://github.com/apache/iceberg-cpp/pull/151#discussion_r2221938334
########## test/CMakeLists.txt: ########## @@ -28,73 +28,97 @@ set(ICEBERG_TEST_RESOURCES "${CMAKE_SOURCE_DIR}/test/resources") configure_file("${CMAKE_SOURCE_DIR}/test/test_config.h.in" "${CMAKE_BINARY_DIR}/iceberg/test/test_config.h") -add_executable(schema_test) -target_sources(schema_test - PRIVATE name_mapping_test.cc - schema_test.cc - schema_field_test.cc - type_test.cc - transform_test.cc - partition_field_test.cc - partition_spec_test.cc - sort_field_test.cc - sort_order_test.cc - snapshot_test.cc - schema_util_test.cc) -target_link_libraries(schema_test PRIVATE iceberg_static GTest::gtest_main GTest::gmock) -add_test(NAME schema_test COMMAND schema_test) - -add_executable(table_test) -target_include_directories(table_test PRIVATE "${CMAKE_BINARY_DIR}") -target_sources(table_test PRIVATE test_common.cc json_internal_test.cc table_test.cc - schema_json_test.cc) -target_link_libraries(table_test PRIVATE iceberg_static GTest::gtest_main GTest::gmock) -add_test(NAME table_test COMMAND table_test) - -add_executable(expression_test) -target_sources(expression_test PRIVATE expression_test.cc literal_test.cc) -target_link_libraries(expression_test PRIVATE iceberg_static GTest::gtest_main - GTest::gmock) -add_test(NAME expression_test COMMAND expression_test) - -add_executable(json_serde_test) -target_include_directories(json_serde_test PRIVATE "${CMAKE_BINARY_DIR}") -target_sources(json_serde_test PRIVATE test_common.cc json_internal_test.cc - metadata_serde_test.cc schema_json_test.cc) -target_link_libraries(json_serde_test PRIVATE iceberg_static GTest::gtest_main - GTest::gmock) -add_test(NAME json_serde_test COMMAND json_serde_test) - -add_executable(util_test) -target_sources(util_test PRIVATE formatter_test.cc config_test.cc visit_type_test.cc) -target_link_libraries(util_test PRIVATE iceberg_static GTest::gtest_main GTest::gmock) -add_test(NAME util_test COMMAND util_test) +function(iceberg_add_test test_name) + cmake_parse_arguments(ARG + "USE_BUNDLE" + "INCLUDE_DIR" + "SRCS" + ${ARGN}) + + add_executable(${test_name}) + if(ARG_INCLUDE_DIR) + target_include_directories(${test_name} PRIVATE "${ARG_INCLUDE_DIR}") Review Comment: OK, it's better. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org