summaryrefslogtreecommitdiffstats
path: root/test/API
diff options
context:
space:
mode:
authorAllen Byrne <50328838+byrnHDF@users.noreply.github.com>2023-11-22 13:51:30 (GMT)
committerGitHub <noreply@github.com>2023-11-22 13:51:30 (GMT)
commit3ea21ccb3e84dae935c32faff5d10ce9672a3265 (patch)
tree825781aed8fbee0af89bc0303921757ba7c360e0 /test/API
parent046440400f877ce1f6c94ccce0c17c0619647b42 (diff)
downloadhdf5-3ea21ccb3e84dae935c32faff5d10ce9672a3265.zip
hdf5-3ea21ccb3e84dae935c32faff5d10ce9672a3265.tar.gz
hdf5-3ea21ccb3e84dae935c32faff5d10ce9672a3265.tar.bz2
Add HDF5_DISABLE_TESTS_REGEX option to skip tests (#3859)
Diffstat (limited to 'test/API')
-rw-r--r--test/API/CMakeLists.txt369
1 files changed, 170 insertions, 199 deletions
diff --git a/test/API/CMakeLists.txt b/test/API/CMakeLists.txt
index 9495acd..43c26f0 100644
--- a/test/API/CMakeLists.txt
+++ b/test/API/CMakeLists.txt
@@ -20,8 +20,8 @@ if (HDF5_TEST_API_ENABLE_ASYNC)
endif ()
configure_file(
- ${CMAKE_CURRENT_SOURCE_DIR}/H5_api_test_config.h.in
- ${HDF5_TEST_BINARY_DIR}/H5_api_test_config.h
+ ${CMAKE_CURRENT_SOURCE_DIR}/H5_api_test_config.h.in
+ ${HDF5_TEST_BINARY_DIR}/H5_api_test_config.h
)
#------------------------------------------------------------------------------
@@ -35,20 +35,20 @@ endif ()
# Variables, definitions, etc. for API tests
#------------------------------------------------------------------------------
set (HDF5_API_TESTS
- attribute
- dataset
- datatype
- file
- group
- link
- misc
- object
+ attribute
+ dataset
+ datatype
+ file
+ group
+ link
+ misc
+ object
)
if (HDF5_TEST_API_ENABLE_ASYNC)
set (HDF5_API_TESTS
- ${HDF5_API_TESTS}
- async
+ ${HDF5_API_TESTS}
+ async
)
endif ()
@@ -65,46 +65,46 @@ set (HDF5_API_TESTS_EXTRA
# TODO: Run h5delete tool with appropriate env. vars for
# connectors to remove these files
set (HDF5_API_TESTS_FILES
- # Test file used by main tests
- H5_api_test.h5
- # 'file' tests
- test_file.h5
- invalid_params_file.h5
- excl_flag_file.h5
- overlapping_file.h5
- file_permission.h5
- flush_file.h5
- property_list_test_file1.h5
- property_list_test_file2.h5
- intent_test_file.h5
- file_obj_count1.h5
- file_obj_count2.h5
- file_mount.h5
- file_name_retrieval.h5
- filespace_info.h5
- test_file_id.h5
- test_close_degree.h5
- test_free_sections.h5
- file_size.h5
- file_info.h5
- double_group_open.h5
- # 'link' tests
- ext_link_file.h5
- ext_link_file_2.h5
- ext_link_file_3.h5
- ext_link_file_4.h5
- ext_link_file_ping_pong_1.h5
- ext_link_file_ping_pong_2.h5
- ext_link_invalid_params_file.h5
- # 'object' tests
- object_copy_test_file.h5
- # 'async' tests
- H5_api_async_test.h5
- H5_api_async_test_0.h5
- H5_api_async_test_1.h5
- H5_api_async_test_2.h5
- H5_api_async_test_3.h5
- H5_api_async_test_4.h5
+ # Test file used by main tests
+ H5_api_test.h5
+ # 'file' tests
+ test_file.h5
+ invalid_params_file.h5
+ excl_flag_file.h5
+ overlapping_file.h5
+ file_permission.h5
+ flush_file.h5
+ property_list_test_file1.h5
+ property_list_test_file2.h5
+ intent_test_file.h5
+ file_obj_count1.h5
+ file_obj_count2.h5
+ file_mount.h5
+ file_name_retrieval.h5
+ filespace_info.h5
+ test_file_id.h5
+ test_close_degree.h5
+ test_free_sections.h5
+ file_size.h5
+ file_info.h5
+ double_group_open.h5
+ # 'link' tests
+ ext_link_file.h5
+ ext_link_file_2.h5
+ ext_link_file_3.h5
+ ext_link_file_4.h5
+ ext_link_file_ping_pong_1.h5
+ ext_link_file_ping_pong_2.h5
+ ext_link_invalid_params_file.h5
+ # 'object' tests
+ object_copy_test_file.h5
+ # 'async' tests
+ H5_api_async_test.h5
+ H5_api_async_test_0.h5
+ H5_api_async_test_1.h5
+ H5_api_async_test_2.h5
+ H5_api_async_test_3.h5
+ H5_api_async_test_4.h5
)
#-----------------------------------------------------------------------------
@@ -112,58 +112,37 @@ set (HDF5_API_TESTS_FILES
#-----------------------------------------------------------------------------
foreach (api_test ${HDF5_API_TESTS})
set (HDF5_API_TEST_SRCS
- ${HDF5_API_TEST_SRCS}
- ${CMAKE_CURRENT_SOURCE_DIR}/H5_api_${api_test}_test.c
+ ${HDF5_API_TEST_SRCS}
+ ${CMAKE_CURRENT_SOURCE_DIR}/H5_api_${api_test}_test.c
)
endforeach ()
set (HDF5_API_TEST_SRCS
- ${HDF5_API_TEST_SRCS}
- ${CMAKE_CURRENT_SOURCE_DIR}/H5_api_test.c
- ${HDF5_TEST_API_SRC_DIR}/H5_api_test_util.c
+ ${HDF5_API_TEST_SRCS}
+ ${CMAKE_CURRENT_SOURCE_DIR}/H5_api_test.c
+ ${HDF5_TEST_API_SRC_DIR}/H5_api_test_util.c
)
add_executable (h5_api_test ${HDF5_API_TEST_SRCS})
-target_include_directories (
- h5_api_test
- PRIVATE
- "${HDF5_SRC_INCLUDE_DIRS}"
- "${HDF5_TEST_SRC_DIR}"
- "${HDF5_TEST_API_SRC_DIR}"
- "${HDF5_SRC_BINARY_DIR}"
- "${HDF5_TEST_BINARY_DIR}"
-)
-target_compile_options (
- h5_api_test
- PRIVATE
- "${HDF5_CMAKE_C_FLAGS}"
-)
-target_compile_definitions (
- h5_api_test
- PRIVATE
- "${HDF5_TEST_COMPILE_DEFS_PRIVATE}"
+target_include_directories (h5_api_test
+ PRIVATE
+ "${HDF5_SRC_INCLUDE_DIRS}"
+ "${HDF5_TEST_SRC_DIR}"
+ "${HDF5_TEST_API_SRC_DIR}"
+ "${HDF5_SRC_BINARY_DIR}"
+ "${HDF5_TEST_BINARY_DIR}"
)
+target_compile_options (h5_api_test PRIVATE "${HDF5_CMAKE_C_FLAGS}")
+target_compile_definitions (h5_api_test PRIVATE "${HDF5_TEST_COMPILE_DEFS_PRIVATE}")
# Always prefer linking the shared HDF5 library by default
if (BUILD_SHARED_LIBS)
TARGET_C_PROPERTIES (h5_api_test SHARED)
- target_link_libraries (
- h5_api_test
- PRIVATE
- ${HDF5_TEST_LIBSH_TARGET}
- )
+ target_link_libraries (h5_api_test PRIVATE ${HDF5_TEST_LIBSH_TARGET})
else ()
TARGET_C_PROPERTIES (h5_api_test STATIC)
- target_link_libraries (
- h5_api_test
- PRIVATE
- ${HDF5_TEST_LIB_TARGET}
- )
+ target_link_libraries (h5_api_test PRIVATE ${HDF5_TEST_LIB_TARGET})
endif ()
-set_target_properties (
- h5_api_test
- PROPERTIES
- FOLDER test/API
-)
+set_target_properties (h5_api_test PROPERTIES FOLDER test/API)
# Add Target to clang-format
if (HDF5_ENABLE_FORMATTERS)
clang_format (HDF5_TEST_h5_api_test_FORMAT h5_api_test)
@@ -189,12 +168,12 @@ if (HDF5_TEST_SERIAL)
endif ()
if (HDF5_TEST_API_CLIENT_HELPER)
set (HDF5_TEST_API_DRIVER_EXTRA_FLAGS ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
- --client-helper ${HDF5_TEST_API_CLIENT_HELPER}
+ --client-helper ${HDF5_TEST_API_CLIENT_HELPER}
)
endif ()
if (HDF5_TEST_API_CLIENT_INIT)
set (HDF5_TEST_API_DRIVER_EXTRA_FLAGS ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
- --client-init ${HDF5_TEST_API_CLIENT_INIT}
+ --client-init ${HDF5_TEST_API_CLIENT_INIT}
)
endif ()
@@ -202,15 +181,17 @@ if (HDF5_TEST_SERIAL)
set (last_api_test "")
foreach (api_test ${HDF5_API_TESTS})
add_test (
- NAME "h5_api_test_${api_test}"
- COMMAND $<TARGET_FILE:h5_api_test_driver>
- --server ${HDF5_TEST_API_SERVER}
- --client $<TARGET_FILE:h5_api_test> "${api_test}"
- --serial
- ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
+ NAME h5_api_test_${api_test}
+ COMMAND $<TARGET_FILE:h5_api_test_driver>
+ --server ${HDF5_TEST_API_SERVER}
+ --client $<TARGET_FILE:h5_api_test> ${api_test}
+ --serial
+ ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
)
-
- set_tests_properties ("h5_api_test_${api_test}" PROPERTIES DEPENDS "${last_api_test}")
+ if ("h5_api_test_${api_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}")
+ set_tests_properties (h5_api_test_${api_test} PROPERTIES DISABLED true)
+ endif ()
+ set_tests_properties (h5_api_test_${api_test} PROPERTIES DEPENDS ${last_api_test})
set (last_api_test "h5_api_test_${api_test}")
endforeach ()
@@ -218,13 +199,16 @@ if (HDF5_TEST_SERIAL)
# Hook external tests to same test suite
foreach (ext_api_test ${HDF5_API_EXT_SERIAL_TESTS})
add_test (
- NAME "h5_api_ext_test_${ext_api_test}"
- COMMAND $<TARGET_FILE:h5_api_test_driver>
- --server ${HDF5_TEST_API_SERVER}
- --client $<TARGET_FILE:${ext_api_test}>
- --serial
- ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
+ NAME h5_api_ext_test_${ext_api_test}
+ COMMAND $<TARGET_FILE:h5_api_test_driver>
+ --server ${HDF5_TEST_API_SERVER}
+ --client $<TARGET_FILE:${ext_api_test}>
+ --serial
+ ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
)
+ if ("h5_api_ext_test_${ext_api_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}")
+ set_tests_properties (h5_api_ext_test_${ext_api_test} PROPERTIES DISABLED true)
+ endif ()
endforeach ()
if (BUILD_SHARED_LIBS)
@@ -256,64 +240,59 @@ if (HDF5_TEST_SERIAL)
set (last_api_test "")
foreach (api_test ${HDF5_API_TESTS})
add_test (
- NAME "${external_vol_tgt}-h5_api_test_${api_test}"
- COMMAND $<TARGET_FILE:h5_api_test_driver>
- --server ${HDF5_TEST_API_SERVER}
- --client $<TARGET_FILE:h5_api_test> "${api_test}"
- --serial
- ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
+ NAME ${external_vol_tgt}-h5_api_test_${api_test}
+ COMMAND $<TARGET_FILE:h5_api_test_driver>
+ --server ${HDF5_TEST_API_SERVER}
+ --client $<TARGET_FILE:h5_api_test> ${api_test}
+ --serial
+ ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
)
- set_tests_properties (
- "${external_vol_tgt}-h5_api_test_${api_test}"
- PROPERTIES
- ENVIRONMENT
- "${vol_test_env}"
- WORKING_DIRECTORY
- "${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}"
- DEPENDS
- "${last_api_test}"
+ set_tests_properties (${external_vol_tgt}-h5_api_test_${api_test}
+ PROPERTIES
+ ENVIRONMENT "${vol_test_env}"
+ WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}
+ DEPENDS ${last_api_test}
)
-
+ if ("${external_vol_tgt}-h5_api_test_${api_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}")
+ set_tests_properties (${external_vol_tgt}-h5_api_test_${api_test} PROPERTIES DISABLED true)
+ endif ()
set (last_api_test "${external_vol_tgt}-h5_api_test_${api_test}")
endforeach ()
# Add any extra HDF5 tests to test suite
foreach (hdf5_test ${HDF5_API_TESTS_EXTRA})
add_test (
- NAME "${external_vol_tgt}-h5_api_test_${hdf5_test}"
- COMMAND $<TARGET_FILE:h5_api_test_driver>
- --server ${HDF5_TEST_API_SERVER}
- --client $<TARGET_FILE:${hdf5_test}>
- --serial
- ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
+ NAME ${external_vol_tgt}-h5_api_test_${hdf5_test}
+ COMMAND $<TARGET_FILE:h5_api_test_driver>
+ --server ${HDF5_TEST_API_SERVER}
+ --client $<TARGET_FILE:${hdf5_test}>
+ --serial
+ ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
)
- set_tests_properties (
- "${external_vol_tgt}-h5_api_test_${hdf5_test}"
- PROPERTIES
- ENVIRONMENT
- "${vol_test_env}"
- WORKING_DIRECTORY
- "${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}"
+ set_tests_properties (${external_vol_tgt}-h5_api_test_${hdf5_test}
+ PROPERTIES
+ ENVIRONMENT "${vol_test_env}"
+ WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}
)
+ if ("${external_vol_tgt}-h5_api_test_${hdf5_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}")
+ set_tests_properties (${external_vol_tgt}-h5_api_test_${hdf5_test} PROPERTIES DISABLED true)
+ endif ()
endforeach ()
# Hook external tests to same test suite
foreach (ext_api_test ${HDF5_API_EXT_SERIAL_TESTS})
add_test (
- NAME "${external_vol_tgt}-h5_api_ext_test_${ext_api_test}"
- COMMAND $<TARGET_FILE:h5_api_test_driver>
- --server ${HDF5_TEST_API_SERVER}
- --client $<TARGET_FILE:${ext_api_test}>
- --serial
- ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
+ NAME ${external_vol_tgt}-h5_api_ext_test_${ext_api_test}
+ COMMAND $<TARGET_FILE:h5_api_test_driver>
+ --server ${HDF5_TEST_API_SERVER}
+ --client $<TARGET_FILE:${ext_api_test}>
+ --serial
+ ${HDF5_TEST_API_DRIVER_EXTRA_FLAGS}
)
- set_tests_properties (
- "${external_vol_tgt}-h5_api_ext_test_${ext_api_test}"
- PROPERTIES
- ENVIRONMENT
- "${vol_test_env}"
- WORKING_DIRECTORY
- "${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}"
+ set_tests_properties (${external_vol_tgt}-h5_api_ext_test_${ext_api_test}
+ PROPERTIES
+ ENVIRONMENT "${vol_test_env}"
+ WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}
)
endforeach ()
endforeach ()
@@ -323,11 +302,13 @@ if (HDF5_TEST_SERIAL)
set (last_api_test "")
foreach (api_test ${HDF5_API_TESTS})
add_test (
- NAME "h5_api_test_${api_test}"
- COMMAND $<TARGET_FILE:h5_api_test> "${api_test}"
+ NAME h5_api_test_${api_test}
+ COMMAND $<TARGET_FILE:h5_api_test> ${api_test}
)
-
- set_tests_properties ("h5_api_test_${api_test}" PROPERTIES DEPENDS "${last_api_test}")
+ if ("h5_api_test_${api_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}")
+ set_tests_properties (h5_api_test_${api_test} PROPERTIES DISABLED true)
+ endif ()
+ set_tests_properties (h5_api_test_${api_test} PROPERTIES DEPENDS ${last_api_test})
set (last_api_test "h5_api_test_${api_test}")
endforeach ()
@@ -335,9 +316,12 @@ if (HDF5_TEST_SERIAL)
# Hook external tests to same test suite
foreach (ext_api_test ${HDF5_API_EXT_SERIAL_TESTS})
add_test (
- NAME "h5_api_ext_test_${ext_api_test}"
- COMMAND $<TARGET_FILE:${ext_api_test}>
+ NAME h5_api_ext_test_${ext_api_test}
+ COMMAND $<TARGET_FILE:${ext_api_test}>
)
+ if ("h5_api_ext_test_${ext_api_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}")
+ set_tests_properties (h5_api_ext_test_${ext_api_test} PROPERTIES DISABLED true)
+ endif ()
endforeach ()
if (BUILD_SHARED_LIBS)
@@ -369,37 +353,35 @@ if (HDF5_TEST_SERIAL)
set (last_api_test "")
foreach (api_test ${HDF5_API_TESTS})
add_test (
- NAME "${external_vol_tgt}-h5_api_test_${api_test}"
- COMMAND $<TARGET_FILE:h5_api_test> "${api_test}"
+ NAME ${external_vol_tgt}-h5_api_test_${api_test}
+ COMMAND $<TARGET_FILE:h5_api_test> ${api_test}
)
- set_tests_properties (
- "${external_vol_tgt}-h5_api_test_${api_test}"
- PROPERTIES
- ENVIRONMENT
- "${vol_test_env}"
- WORKING_DIRECTORY
- "${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}"
- DEPENDS
- "${last_api_test}"
+ set_tests_properties (${external_vol_tgt}-h5_api_test_${api_test}
+ PROPERTIES
+ ENVIRONMENT "${vol_test_env}"
+ WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}
+ DEPENDS ${last_api_test}
)
-
+ if ("${external_vol_tgt}-h5_api_test_${api_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}")
+ set_tests_properties (${external_vol_tgt}-h5_api_test_${api_test} PROPERTIES DISABLED true)
+ endif ()
set (last_api_test "${external_vol_tgt}-h5_api_test_${api_test}")
endforeach ()
# Add any extra HDF5 tests to test suite
foreach (hdf5_test ${HDF5_API_TESTS_EXTRA})
add_test (
- NAME "${external_vol_tgt}-h5_api_test_${hdf5_test}"
- COMMAND $<TARGET_FILE:${hdf5_test}>
+ NAME ${external_vol_tgt}-h5_api_test_${hdf5_test}
+ COMMAND $<TARGET_FILE:${hdf5_test}>
)
- set_tests_properties (
- "${external_vol_tgt}-h5_api_test_${hdf5_test}"
- PROPERTIES
- ENVIRONMENT
- "${vol_test_env}"
- WORKING_DIRECTORY
- "${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}"
+ set_tests_properties (${external_vol_tgt}-h5_api_test_${hdf5_test}
+ PROPERTIES
+ ENVIRONMENT "${vol_test_env}"
+ WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${external_vol_tgt}
)
+ if ("${external_vol_tgt}-h5_api_test_${hdf5_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}")
+ set_tests_properties (${external_vol_tgt}-h5_api_test_${hdf5_test} PROPERTIES DISABLED true)
+ endif ()
endforeach ()
endforeach ()
endif()
@@ -412,36 +394,25 @@ endif ()
#-----------------------------------------------------------------------------
if (HDF5_EXPORTED_TARGETS AND HDF5_TEST_API_INSTALL)
install (
- TARGETS
- h5_api_test
- EXPORT
- ${HDF5_EXPORTED_TARGETS}
- DESTINATION
- ${HDF5_INSTALL_BIN_DIR}
- PERMISSIONS
- OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
- COMPONENT
- tests
+ TARGETS h5_api_test
+ EXPORT ${HDF5_EXPORTED_TARGETS}
+ DESTINATION ${HDF5_INSTALL_BIN_DIR}
+ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+ COMPONENT tests
)
foreach (api_test_extra ${HDF5_API_TESTS_EXTRA})
if (TARGET ${api_test_extra})
- set_target_properties (
- ${api_test_extra}
- PROPERTIES
- OUTPUT_NAME "h5_api_test_${api_test_extra}"
+ set_target_properties (${api_test_extra}
+ PROPERTIES
+ OUTPUT_NAME "h5_api_test_${api_test_extra}"
)
install (
- TARGETS
- ${api_test_extra}
- EXPORT
- ${HDF5_EXPORTED_TARGETS}
- DESTINATION
- ${HDF5_INSTALL_BIN_DIR}
- PERMISSIONS
- OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
- COMPONENT
- tests
+ TARGETS ${api_test_extra}
+ EXPORT ${HDF5_EXPORTED_TARGETS}
+ DESTINATION ${HDF5_INSTALL_BIN_DIR}
+ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+ COMPONENT tests
)
endif ()
endforeach ()