From 5103dc8315bc1d5de746031655b9102934e7cd8d Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Mon, 18 Apr 2016 15:41:28 -0500 Subject: [svn-r29733] HDFFV-9756: Verified H5Dint.c patch works for H5Repack, also reworked VDS tests for H5Repack. HDFFV-9766: Added h5format_convert to CMake. Reworked tests to allow parallel testing with CMake. HDFFV-9770: Added h5watch to CMake. Tested: CMake and autotools on loacl linux. --- CMakeLists.txt | 2 + MANIFEST | 18 +- hl/src/CMakeLists.txt | 2 + hl/tools/CMakeLists.txt | 64 +-- hl/tools/CMakeTests.cmake | 58 --- hl/tools/gif2h5/CMakeLists.txt | 64 +++ hl/tools/gif2h5/CMakeTests.cmake | 58 +++ hl/tools/h5watch/CMakeLists.txt | 59 +++ hl/tools/h5watch/CMakeTests.cmake | 191 +++++++++ hl/tools/h5watch/testh5watch.sh.in | 124 +++--- hl/tools/testfiles/w-err-cmpd1.ddl | 3 - hl/tools/testfiles/w-err-cmpd2.ddl | 3 - hl/tools/testfiles/w-err-cmpd3.ddl | 3 - hl/tools/testfiles/w-err-cmpd4.ddl | 3 - hl/tools/testfiles/w-err-cmpd5.ddl | 3 - hl/tools/testfiles/w-err-dset-nomax.ddl | 3 - hl/tools/testfiles/w-err-dset-none.ddl | 3 - hl/tools/testfiles/w-err-dset1.ddl | 3 - hl/tools/testfiles/w-err-dset2.ddl | 3 - hl/tools/testfiles/w-err-file.ddl | 3 - hl/tools/testfiles/w-err-poll.ddl | 3 - hl/tools/testfiles/w-err-poll0.ddl | 3 - hl/tools/testfiles/w-err-width.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-esc.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-f1.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-f2.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-ff3.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-label.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-two-f1.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-two-f3.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl | 3 - hl/tools/testfiles/w-ext-cmpd-two.ddl | 3 - hl/tools/testfiles/w-ext-cmpd.ddl | 3 - hl/tools/testfiles/w-ext-early.ddl | 3 - hl/tools/testfiles/w-ext-late.ddl | 3 - hl/tools/testfiles/w-ext-one-d.ddl | 3 - hl/tools/testfiles/w-ext-one-simple.ddl | 3 - hl/tools/testfiles/w-ext-one.ddl | 3 - hl/tools/testfiles/w-ext-two-d.ddl | 3 - hl/tools/testfiles/w-ext-two-width.ddl | 3 - hl/tools/testfiles/w-ext-two.ddl | 3 - hl/tools/testfiles/w-help1.ddl | 3 - tools/CMakeLists.txt | 3 + tools/Makefile.in | 4 +- tools/h5format_convert/CMakeLists.txt | 59 +++ tools/h5format_convert/CMakeTests.cmake | 463 +++++++++++++++++++++ tools/h5format_convert/h5format_convert.c | 356 ++++++++-------- tools/h5format_convert/testfiles/h5fc_d_file.ddl | 10 +- tools/h5format_convert/testfiles/h5fc_dname.ddl | 10 +- tools/h5format_convert/testfiles/h5fc_ext1_f.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_ext1_i.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_ext1_s.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_ext2_if.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_ext2_is.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_help.ddl | 10 +- tools/h5format_convert/testfiles/h5fc_nooption.ddl | 10 +- tools/h5format_convert/testfiles/h5fc_v_all.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_v_bt1.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl | 2 +- tools/h5format_convert/testfiles/h5fc_v_n_all.ddl | 2 +- .../testfiles/h5fc_v_ndata_bt1.ddl | 2 +- .../testfiles/h5fc_v_non_chunked.ddl | 2 +- .../h5format_convert/testfiles/old_h5fc_ext1_f.ddl | 2 +- .../h5format_convert/testfiles/old_h5fc_ext1_i.ddl | 2 +- .../h5format_convert/testfiles/old_h5fc_ext1_s.ddl | 2 +- .../testfiles/old_h5fc_ext2_if.ddl | 2 +- .../testfiles/old_h5fc_ext2_is.ddl | 2 +- .../testfiles/old_h5fc_ext2_sf.ddl | 2 +- .../testfiles/old_h5fc_ext3_isf.ddl | 2 +- tools/h5format_convert/testh5fc.sh.in | 159 ++++--- tools/h5repack/CMakeTests.cmake | 40 +- tools/h5repack/h5repack.sh.in | 26 +- tools/h5repack/h5repack_main.c | 1 - .../testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl | 112 +++++ .../testfiles/1_vds.h5-vds_dset_compa-v.ddl | 112 ----- .../testfiles/1_vds.h5-vds_dset_conti-v.ddl | 113 ----- .../testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl | 70 ++++ .../testfiles/2_vds.h5-vds_null_compa-v.ddl | 3 - .../testfiles/2_vds.h5-vds_null_conti-v.ddl | 3 - .../testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl | 147 +++++++ .../testfiles/4_vds.h5-vds_compa_compa-v.ddl | 58 --- .../testfiles/4_vds.h5-vds_compa_conti-v.ddl | 59 --- .../testfiles/4_vds.h5-vds_conti_compa-v.ddl | 58 --- .../testfiles/4_vds.h5-vds_conti_conti-v.ddl | 59 --- 89 files changed, 1637 insertions(+), 1093 deletions(-) delete mode 100644 hl/tools/CMakeTests.cmake create mode 100644 hl/tools/gif2h5/CMakeLists.txt create mode 100644 hl/tools/gif2h5/CMakeTests.cmake create mode 100644 hl/tools/h5watch/CMakeLists.txt create mode 100644 hl/tools/h5watch/CMakeTests.cmake create mode 100644 tools/h5format_convert/CMakeLists.txt create mode 100644 tools/h5format_convert/CMakeTests.cmake create mode 100644 tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl delete mode 100644 tools/h5repack/testfiles/1_vds.h5-vds_dset_compa-v.ddl delete mode 100644 tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl create mode 100644 tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl delete mode 100644 tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl delete mode 100644 tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl create mode 100644 tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl delete mode 100644 tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl delete mode 100644 tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl delete mode 100644 tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl delete mode 100644 tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl diff --git a/CMakeLists.txt b/CMakeLists.txt index 648ae7a..9359084 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -186,6 +186,8 @@ set (HDF5_CPP_SRC_DIR ${HDF5_SOURCE_DIR}/c++) set (HDF5_CPP_TST_DIR ${HDF5_SOURCE_DIR}/c++/test) set (HDF5_HL_SRC_DIR ${HDF5_SOURCE_DIR}/hl) set (HDF5_HL_CPP_SRC_DIR ${HDF5_SOURCE_DIR}/hl/c++) +set (HDF5_HL_TOOLS_DIR ${HDF5_SOURCE_DIR}/hl/tools) +set (HDF5_TOOLS_DIR ${HDF5_SOURCE_DIR}/tools) set (HDF5_TOOLS_SRC_DIR ${HDF5_SOURCE_DIR}/tools) set (HDF5_PERFORM_SRC_DIR ${HDF5_SOURCE_DIR}/tools/perform) set (HDF5_F90_SRC_DIR ${HDF5_SOURCE_DIR}/fortran) diff --git a/MANIFEST b/MANIFEST index 70b0e58..6641a76 100644 --- a/MANIFEST +++ b/MANIFEST @@ -2347,16 +2347,11 @@ ./tools/h5repack/testfiles/h5repack_layout.h5.ddl ./tools/h5repack/testfiles/h5repack_layout.UD.h5-plugin_none.ddl ./tools/h5repack/testfiles/h5repack_layout.h5-plugin_test.ddl -./tools/h5repack/testfiles/1_vds.h5-vds_dset_compa-v.ddl -./tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl -./tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl -./tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl -./tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl -./tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl -./tools/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl -./tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl -./tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl +./tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl +./tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl +./tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl ./tools/h5repack/testfiles/4_vds.h5-vds_conti-v.ddl +./tools/h5repack/testfiles/4_vds.h5-vds_compa-v.ddl # jam utility and tests ./tools/h5jam/h5jam.c @@ -3028,7 +3023,10 @@ ./hl/test/CMakeLists.txt ./hl/test/CMakeTests.cmake ./hl/tools/CMakeLists.txt -./hl/tools/CMakeTests.cmake +./hl/tools/gif2h5/CMakeLists.txt +./hl/tools/gif2h5/CMakeTests.cmake +./hl/tools/h5watch/CMakeLists.txt +./hl/tools/h5watch/CMakeTests.cmake ./src/CMakeLists.txt ./test/CMakeLists.txt ./test/CMakeTests.cmake diff --git a/hl/src/CMakeLists.txt b/hl/src/CMakeLists.txt index a86bf4f..872e42d 100644 --- a/hl/src/CMakeLists.txt +++ b/hl/src/CMakeLists.txt @@ -13,6 +13,7 @@ set (HL_SRCS ${HDF5_HL_SRC_SOURCE_DIR}/H5LTparse.c ${HDF5_HL_SRC_SOURCE_DIR}/H5PT.c ${HDF5_HL_SRC_SOURCE_DIR}/H5TB.c + ${HDF5_HL_SRC_SOURCE_DIR}/H5LD.c ) set (HL_HEADERS @@ -24,6 +25,7 @@ set (HL_HEADERS ${HDF5_HL_SRC_SOURCE_DIR}/H5LTpublic.h ${HDF5_HL_SRC_SOURCE_DIR}/H5PTpublic.h ${HDF5_HL_SRC_SOURCE_DIR}/H5TBpublic.h + ${HDF5_HL_SRC_SOURCE_DIR}/H5LDpublic.h ${HDF5_HL_SRC_SOURCE_DIR}/hdf5_hl.h ) diff --git a/hl/tools/CMakeLists.txt b/hl/tools/CMakeLists.txt index 73d1f22..8384b59 100644 --- a/hl/tools/CMakeLists.txt +++ b/hl/tools/CMakeLists.txt @@ -1,64 +1,6 @@ cmake_minimum_required (VERSION 3.1.0) -PROJECT (HDF5_HL_TOOLS) +PROJECT (HDF5_HL_TOOLS C CXX) -#----------------------------------------------------------------------------- -# Define Sources -#----------------------------------------------------------------------------- -set (GIF2H5_SRCS - ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gif.h - ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/decompress.c - ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gif2hdf.c - ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gif2mem.c - ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/gifread.c - ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/writehdf.c -) +add_subdirectory (${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5 ${HDF5_HL_TOOLS_BINARY_DIR}/gif2h5) -#-- Add gif2hdf5 program -INCLUDE_DIRECTORIES (${HDF5_TOOLS_SRC_DIR}/lib) -INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5) - -add_executable (gif2h5 ${GIF2H5_SRCS}) -TARGET_NAMING (gif2h5 STATIC) -TARGET_C_PROPERTIES (gif2h5 STATIC " " " ") -target_link_libraries (gif2h5 ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) -set_target_properties (gif2h5 PROPERTIES FOLDER tools/hl) - -#-- Add h52gif program -set (hdf2gif_SRCS - ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/hdf2gif.c - ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/hdfgifwr.c -) -add_executable (h52gif ${hdf2gif_SRCS}) -TARGET_NAMING (h52gif STATIC) -TARGET_C_PROPERTIES (h52gif STATIC " " " ") -target_link_libraries (h52gif ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) -set_target_properties (h52gif PROPERTIES FOLDER tools/hl) - -if (BUILD_TESTING) - # -------------------------------------------------------------------- - # This executable can generate the actual test files - Currently not - # used in the CMake Build system as we rely on the test files that are - # shipped with HDF5 source archives - # -------------------------------------------------------------------- - if (HDF5_BUILD_GENERATORS) - add_executable (hl_h52gifgentest ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/h52gifgentst.c) - TARGET_NAMING (hl_h52gifgentest STATIC) - TARGET_C_PROPERTIES (hl_h52gifgentest STATIC " " " ") - target_link_libraries (hl_h52gifgentest ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET}) - set_target_properties (hl_h52gifgentest PROPERTIES FOLDER generator/tools/hl) - -# add_test (NAME hl_h52gifgentest COMMAND $) - endif (HDF5_BUILD_GENERATORS) - - include (CMakeTests.cmake) -endif (BUILD_TESTING) - -#----------------------------------------------------------------------------- -# Add file(s) to CMake Install -#----------------------------------------------------------------------------- -install ( - TARGETS - gif2h5 - h52gif - RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hltoolsapplications -) +add_subdirectory (${HDF5_HL_TOOLS_SOURCE_DIR}/h5watch ${HDF5_HL_TOOLS_BINARY_DIR}/h5watch) diff --git a/hl/tools/CMakeTests.cmake b/hl/tools/CMakeTests.cmake deleted file mode 100644 index 4ebd7a2..0000000 --- a/hl/tools/CMakeTests.cmake +++ /dev/null @@ -1,58 +0,0 @@ - -############################################################################## -############################################################################## -### T E S T I N G ### -############################################################################## -############################################################################## - -# Make testfiles dir under build dir -file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") - -# -# copy test files from source to build dir -# - -add_custom_command ( - TARGET gif2h5 - POST_BUILD - COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/testfiles/image1.gif ${PROJECT_BINARY_DIR}/testfiles/image1.gif -) - -add_custom_command ( - TARGET h52gif - POST_BUILD - COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/testfiles/h52giftst.h5 ${PROJECT_BINARY_DIR}/testfiles/h52giftst.h5 -) - -add_custom_command ( - TARGET h52gif - POST_BUILD - COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_HL_TOOLS_SOURCE_DIR}/gif2h5/testfiles/ex_image2.h5 ${PROJECT_BINARY_DIR}/testfiles/ex_image2.h5 -) - -# Remove any output file left over from previous test run -add_test ( - NAME HL_TOOLS-clear-objects - COMMAND ${CMAKE_COMMAND} - -E remove - image1.gif - image1.h5 - image.gif - image24.gif -) - -add_test (NAME HL_TOOLS_gif2h5 COMMAND $ testfiles/image1.gif image1.h5) - -add_test (NAME HL_TOOLS_h52gif COMMAND $ testfiles/h52giftst.h5 image1.gif -i image) - -add_test (NAME HL_TOOLS_h52gif_none COMMAND $ testfiles/h52giftst.h5 image.gif -i nosuch_image) -set_tests_properties (HL_TOOLS_h52gif_none PROPERTIES WILL_FAIL "true") - -#add_test (NAME HL_TOOLS_h52gifpal COMMAND $ testfiles/h52giftst.h5 image.gif -i palette) -#set_tests_properties (HL_TOOLS_h52gifpal PROPERTIES WILL_FAIL "true") - -add_test (NAME HL_TOOLS_h52gif24bits COMMAND $ testfiles/ex_image2.h5 image24.gif -i image24bitpixel) -set_tests_properties (HL_TOOLS_h52gif24bits PROPERTIES WILL_FAIL "true") diff --git a/hl/tools/gif2h5/CMakeLists.txt b/hl/tools/gif2h5/CMakeLists.txt new file mode 100644 index 0000000..d7c4319 --- /dev/null +++ b/hl/tools/gif2h5/CMakeLists.txt @@ -0,0 +1,64 @@ +cmake_minimum_required (VERSION 3.1.0) +PROJECT (HDF5_HL_TOOLS_GIF2H5) + +#----------------------------------------------------------------------------- +# Define Sources +#----------------------------------------------------------------------------- +set (GIF2H5_SRCS + ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/gif.h + ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/decompress.c + ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/gif2hdf.c + ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/gif2mem.c + ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/gifread.c + ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/writehdf.c +) + +#-- Add gif2hdf5 program +INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib) +INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}) + +add_executable (gif2h5 ${GIF2H5_SRCS}) +TARGET_NAMING (gif2h5 STATIC) +TARGET_C_PROPERTIES (gif2h5 STATIC " " " ") +target_link_libraries (gif2h5 ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) +set_target_properties (gif2h5 PROPERTIES FOLDER tools/hl) + +#-- Add h52gif program +set (hdf2gif_SRCS + ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/hdf2gif.c + ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/hdfgifwr.c +) +add_executable (h52gif ${hdf2gif_SRCS}) +TARGET_NAMING (h52gif STATIC) +TARGET_C_PROPERTIES (h52gif STATIC " " " ") +target_link_libraries (h52gif ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) +set_target_properties (h52gif PROPERTIES FOLDER tools/hl) + +if (BUILD_TESTING) + # -------------------------------------------------------------------- + # This executable can generate the actual test files - Currently not + # used in the CMake Build system as we rely on the test files that are + # shipped with HDF5 source archives + # -------------------------------------------------------------------- + if (HDF5_BUILD_GENERATORS) + add_executable (hl_h52gifgentest ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/h52gifgentst.c) + TARGET_NAMING (hl_h52gifgentest STATIC) + TARGET_C_PROPERTIES (hl_h52gifgentest STATIC " " " ") + target_link_libraries (hl_h52gifgentest ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET}) + set_target_properties (hl_h52gifgentest PROPERTIES FOLDER generator/tools/hl) + +# add_test (NAME hl_h52gifgentest COMMAND $) + endif (HDF5_BUILD_GENERATORS) + + include (CMakeTests.cmake) +endif (BUILD_TESTING) + +#----------------------------------------------------------------------------- +# Add file(s) to CMake Install +#----------------------------------------------------------------------------- +install ( + TARGETS + gif2h5 + h52gif + RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hltoolsapplications +) diff --git a/hl/tools/gif2h5/CMakeTests.cmake b/hl/tools/gif2h5/CMakeTests.cmake new file mode 100644 index 0000000..832d2df --- /dev/null +++ b/hl/tools/gif2h5/CMakeTests.cmake @@ -0,0 +1,58 @@ + +############################################################################## +############################################################################## +### T E S T I N G ### +############################################################################## +############################################################################## + +# Make testfiles dir under build dir +file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") + +# +# copy test files from source to build dir +# + +add_custom_command ( + TARGET gif2h5 + POST_BUILD + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/testfiles/image1.gif ${PROJECT_BINARY_DIR}/testfiles/image1.gif +) + +add_custom_command ( + TARGET h52gif + POST_BUILD + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/testfiles/h52giftst.h5 ${PROJECT_BINARY_DIR}/testfiles/h52giftst.h5 +) + +add_custom_command ( + TARGET h52gif + POST_BUILD + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_HL_TOOLS_GIF2H5_SOURCE_DIR}/testfiles/ex_image2.h5 ${PROJECT_BINARY_DIR}/testfiles/ex_image2.h5 +) + +# Remove any output file left over from previous test run +add_test ( + NAME HL_TOOLS-clear-objects + COMMAND ${CMAKE_COMMAND} + -E remove + image1.gif + image1.h5 + image.gif + image24.gif +) + +add_test (NAME HL_TOOLS_gif2h5 COMMAND $ testfiles/image1.gif image1.h5) + +add_test (NAME HL_TOOLS_h52gif COMMAND $ testfiles/h52giftst.h5 image1.gif -i image) + +add_test (NAME HL_TOOLS_h52gif_none COMMAND $ testfiles/h52giftst.h5 image.gif -i nosuch_image) +set_tests_properties (HL_TOOLS_h52gif_none PROPERTIES WILL_FAIL "true") + +#add_test (NAME HL_TOOLS_h52gifpal COMMAND $ testfiles/h52giftst.h5 image.gif -i palette) +#set_tests_properties (HL_TOOLS_h52gifpal PROPERTIES WILL_FAIL "true") + +add_test (NAME HL_TOOLS_h52gif24bits COMMAND $ testfiles/ex_image2.h5 image24.gif -i image24bitpixel) +set_tests_properties (HL_TOOLS_h52gif24bits PROPERTIES WILL_FAIL "true") diff --git a/hl/tools/h5watch/CMakeLists.txt b/hl/tools/h5watch/CMakeLists.txt new file mode 100644 index 0000000..a016d53 --- /dev/null +++ b/hl/tools/h5watch/CMakeLists.txt @@ -0,0 +1,59 @@ +cmake_minimum_required (VERSION 3.1.0) +PROJECT (HDF5_HL_TOOLS_H5WATCH) + +#----------------------------------------------------------------------------- +# Define Sources +#----------------------------------------------------------------------------- +set (H5WATCH_SRCS + ${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}/h5watch +) + +#-- Add h5watch program +INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib) +INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_DIR}/src) +INCLUDE_DIRECTORIES (${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}) + +add_executable (h5watch ${H5WATCH_SRCS}) +TARGET_NAMING (h5watch STATIC) +TARGET_C_PROPERTIES (h5watch STATIC " " " ") +target_link_libraries (h5watch ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) +set_target_properties (h5watch PROPERTIES FOLDER tools/hl) + +if (BUILD_TESTING) + #-- Add swmr_check_compat_vfd program + set (hl_swmr_check_compat_vfd_SRCS + ${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}/swmr_check_compat_vfd.c + ) + add_executable (hl_swmr_check_compat_vfd ${hl_swmr_check_compat_vfd_SRCS}) + TARGET_NAMING (hl_swmr_check_compat_vfd STATIC) + TARGET_C_PROPERTIES (hl_swmr_check_compat_vfd STATIC " " " ") + target_link_libraries (hl_swmr_check_compat_vfd ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) + set_target_properties (hl_swmr_check_compat_vfd PROPERTIES FOLDER tools/hl) + + #-- Add extend_dset program + set (extend_dset_SRCS + ${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}/extend_dset.c + ) + add_executable (extend_dset ${extend_dset_SRCS}) + TARGET_NAMING (extend_dset STATIC) + TARGET_C_PROPERTIES (extend_dset STATIC " " " ") + target_link_libraries (extend_dset ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) + set_target_properties (extend_dset PROPERTIES FOLDER tools/hl) + + add_executable (h5watchgentest ${HDF5_HL_TOOLS_H5WATCH_SOURCE_DIR}/h5watchgentest.c) + TARGET_NAMING (h5watchgentest STATIC) + TARGET_C_PROPERTIES (h5watchgentest STATIC " " " ") + target_link_libraries (h5watchgentest ${HDF5_HL_LIB_TARGET} ${HDF5_LIB_TARGET}) + set_target_properties (h5watchgentest PROPERTIES FOLDER generator/tools/hl) + + include (CMakeTests.cmake) +endif (BUILD_TESTING) + +#----------------------------------------------------------------------------- +# Add file(s) to CMake Install +#----------------------------------------------------------------------------- +install ( + TARGETS + h5watch + RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT hltoolsapplications +) diff --git a/hl/tools/h5watch/CMakeTests.cmake b/hl/tools/h5watch/CMakeTests.cmake new file mode 100644 index 0000000..3242a72 --- /dev/null +++ b/hl/tools/h5watch/CMakeTests.cmake @@ -0,0 +1,191 @@ + +############################################################################## +############################################################################## +### T E S T I N G ### +############################################################################## +############################################################################## + +set (H5WATCH_TEST_FILES + w-help1.ddl + w-err-cmpd1.ddl + w-err-cmpd2.ddl + w-err-cmpd3.ddl + w-err-cmpd4.ddl + w-err-cmpd5.ddl + w-err-dset1.ddl + w-err-dset2.ddl + w-err-dset-nomax.ddl + w-err-dset-none.ddl + w-err-file.ddl + w-err-poll.ddl + w-err-poll0.ddl + w-err-width.ddl + w-ext-cmpd.ddl + w-ext-cmpd-esc.ddl + w-ext-cmpd-esc-f1.ddl + w-ext-cmpd-esc-f3.ddl + w-ext-cmpd-esc-ff2.ddl + w-ext-cmpd-f1.ddl + w-ext-cmpd-f2.ddl + w-ext-cmpd-ff3.ddl + w-ext-cmpd-label.ddl + w-ext-cmpd-two.ddl + w-ext-cmpd-two-f1.ddl + w-ext-cmpd-two-f3.ddl + w-ext-cmpd-two-ff2.ddl + w-ext-early.ddl + w-ext-late.ddl + w-ext-one.ddl + w-ext-one-d.ddl + w-ext-one-simple.ddl + w-ext-two.ddl + w-ext-two-d.ddl + w-ext-two-width.ddl +) + +# make test dir +file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") +add_custom_target(h5watch-files ALL COMMENT "Copying files needed by h5watch tests") + +foreach (h5watch_file ${H5WATCH_TEST_FILES}) + set (dest "${PROJECT_BINARY_DIR}/testfiles/${h5watch_file}") + #message (STATUS " Copying ${h5watch_file}") + add_custom_command ( + TARGET h5watch-files + POST_BUILD + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_HL_TOOLS_DIR}/testfiles/${h5watch_file} ${dest} + ) +endforeach (h5watch_file ${H5WATCH_TEST_FILES}) + +############################################################################## +############################################################################## +### T H E T E S T S M A C R O S ### +############################################################################## +############################################################################## + + MACRO (ADD_H5_TEST resultfile resultcode) + if (NOT HDF5_ENABLE_USING_MEMCHECKER) + add_test ( + NAME H5WATCH_ARGS-${resultfile}-clear-objects + COMMAND ${CMAKE_COMMAND} + -E remove + ${resultfile}.out + ${resultfile}.out.err + ) + set_tests_properties (H5WATCH_ARGS-${resultfile}-clear-objects PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") + if (NOT "${last_test}" STREQUAL "") + set_tests_properties (H5WATCH_ARGS-${resultfile}-clear-objects PROPERTIES DEPENDS ${last_test}) + endif (NOT "${last_test}" STREQUAL "") + set (last_test "H5WATCH_ARGS-${resultfile}-clearall-objects") + add_test ( + NAME H5WATCH_ARGS-h5watch-${resultfile} + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS:STRING=${ARGN}" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" + -D "TEST_OUTPUT=${resultfile}.out" + -D "TEST_EXPECT=${resultcode}" + -D "TEST_REFERENCE=${resultfile}.ddl" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + set_tests_properties (H5WATCH_ARGS-h5watch-${resultfile} PROPERTIES DEPENDS H5WATCH_ARGS-${resultfile}-clear-objects) + set (last_test "H5WATCH_ARGS-${resultfile}") + endif (NOT HDF5_ENABLE_USING_MEMCHECKER) + ENDMACRO (ADD_H5_TEST resultfile resultcode resultoption) + + MACRO (ADD_H5_WATCH resultfile resultcode) + if (NOT HDF5_ENABLE_USING_MEMCHECKER) + add_test ( + NAME H5WATCH-${resultfile}-clear-objects + COMMAND ${CMAKE_COMMAND} + -E remove + ${resultfile}.h5 + ${resultfile}.out + ${resultfile}.out.err + ) + set_tests_properties (H5WATCH-${resultfile}-clear-objects PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") + add_test ( + NAME H5WATCH-${resultfile} + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS:STRING=${ARGN}" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" + -D "TEST_OUTPUT=${resultfile}.out" + -D "TEST_EXPECT=${resultcode}" + -D "TEST_REFERENCE=${resultfile}.txt" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + set_tests_properties (H5WATCH-${resultfile} PROPERTIES DEPENDS H5WATCH-${resultfile}-clear-objects) + endif (NOTHDF5_ENABLE_USING_MEMCHECKER) + ENDMACRO (ADD_H5_WATCH resultfile resultcode) + +############################################################################## +############################################################################## +### T H E T E S T S ### +############################################################################## +############################################################################## + +# Check to see if the VFD specified by the HDF5_DRIVER environment variable +# supports SWMR. +set (SWMR_INCOMPAT ${hl_swmr_check_compat_vfd}) + +IF (NOT SWMR_INCOMPAT) +# Remove any output file left over from previous test run + add_test ( + NAME H5WATCH-clearall-objects + COMMAND ${CMAKE_COMMAND} + -E remove + WATCH.h5 + ) + if (NOT "${last_test}" STREQUAL "") + set_tests_properties (H5WATCH-clearall-objects PROPERTIES DEPENDS ${last_test}) + endif (NOT "${last_test}" STREQUAL "") + set (last_test "H5WATCH-clearall-objects") + +################################################################################################# +# # +# WATCH.h5: file with various types of datasets for testing-- # +# The following datasets are chunked, H5D_ALLOC_TIME_INCR, max. dimensional setting: # +# DSET_ONE: one-dimensional dataset # +# DSET_TWO: two-dimensional dataset # +# DSET_CMPD: one-dimensional dataset with compound type # +# DSET_CMPD_ESC: one-dimensional dataset with compound type & escape/separator characters # +# DSET_CMPD_TWO: two-dimensional dataset with compound type # +# # +# The following datasets are one-dimensional, chunked, max. dimension setting: # +# DSET_ALLOC_EARLY: dataset with H5D_ALLOC_TIME_EARLY # +# DSET_ALLOC_LATE: dataset H5D_ALLOC_TIME_LATE # +# # +# The following datasets are one-dimensional: # +# DSET_NONE: fixed dimension setting, contiguous, H5D_ALLOC_TIME_LATE # +# DSET_NOMAX: fixed dimension setting, chunked, H5D_ALLOC_TIME_INCR # +# # +################################################################################################# +# create the output files to be used. + add_test (NAME H5WATCH-h5watchgentest COMMAND $) + set_tests_properties (H5WATCH-h5watchgentest PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") + set_tests_properties (H5WATCH-h5watchgentest PROPERTIES DEPENDS "H5WATCH-clearall-objects") + set (last_test "H5WATCH-h5watchgentest") + +# Test on --help options + ADD_H5_TEST(w-help1 0 --help) +# +# Tests on expected failures + ADD_H5_TEST(w-err-dset1 1 WATCH.h5) + ADD_H5_TEST(w-err-dset2 1 WATCH.h5/group/DSET_CMPD) + ADD_H5_TEST(w-err-dset-none 1 WATCH.h5/DSET_NONE) + ADD_H5_TEST(w-err-dset-nomax 1 WATCH.h5/DSET_NOMAX) + ADD_H5_TEST(w-err-file 1 ../WATCH.h5/DSET_CMPD) + ADD_H5_TEST(w-err-width 1 --width=-8 WATCH.h5/DSET_ONE) + ADD_H5_TEST(w-err-poll 1 --polling=-8 WATCH.h5/DSET_ONE) + ADD_H5_TEST(w-err-poll0 1 --polling=0 WATCH.h5/DSET_ONE) +# +# Tests on invalid field names via --fields option for a compound typed dataset: DSET_CMPD + ADD_H5_TEST(w-err-cmpd1 1 --fields=fieldx WATCH.h5/DSET_CMPD) + ADD_H5_TEST(w-err-cmpd2 1 --fields=field1,field2. WATCH.h5/DSET_CMPD) + ADD_H5_TEST(w-err-cmpd3 1 --fields=field1,field2, WATCH.h5/DSET_CMPD) + ADD_H5_TEST(w-err-cmpd4 1 --fields=field1,field2.b.k WATCH.h5/DSET_CMPD) + ADD_H5_TEST(w-err-cmpd5 1 --fields=field1 --fields=field2.b.k WATCH.h5/DSET_CMPD) +# +ENDIF (NOT SWMR_INCOMPAT) diff --git a/hl/tools/h5watch/testh5watch.sh.in b/hl/tools/h5watch/testh5watch.sh.in index ff31768..e7b91f2 100644 --- a/hl/tools/h5watch/testh5watch.sh.in +++ b/hl/tools/h5watch/testh5watch.sh.in @@ -30,16 +30,16 @@ if [[ $rc != 0 ]] ; then exit 0 fi -H5WATCH=h5watch # The tool name -H5WATCH_BIN=`pwd`/$H5WATCH # The path of H5WATCH -EXTEND_DSET=extend_dset # Routine to extend the dataset when watching -EXTEND_BIN=`pwd`/$EXTEND_DSET # The path of EXTEND_DSET +H5WATCH=h5watch # The tool name +H5WATCH_BIN=`pwd`/$H5WATCH # The path of H5WATCH +EXTEND_DSET=extend_dset # Routine to extend the dataset when watching +EXTEND_BIN=`pwd`/$EXTEND_DSET # The path of EXTEND_DSET # EXIT_SUCCESS=0 EXIT_FAILURE=1 # -GEN_TEST=h5watchgentest # Generate HDF5 file with various datasets -GEN_TEST_BIN=`pwd`/$GEN_TEST # Path of the binary GEN_TEST +GEN_TEST=h5watchgentest # Generate HDF5 file with various datasets +GEN_TEST_BIN=`pwd`/$GEN_TEST # Path of the binary GEN_TEST WATCHFILE=`pwd`/WATCH.h5 # The HDF5 file generated to test h5watch TESTFILE=TEST.h5 # The temporary file (a copy of WATCH.h5) used by tests # @@ -50,7 +50,7 @@ MESSAGE_TIMEOUT=300 # Message timeout length in secs # CMP='cmp -s' DIFF='diff -c' -NLINES=20 # Max. lines of output to display if test fails +NLINES=20 # Max. lines of output to display if test fails # # Mac OS: just to make sure echo "backslash backslash" behaves properly if test `uname -s` = 'Darwin'; then @@ -80,9 +80,9 @@ TESTING() { # Overall algorithm: # # Run a test and print PASSED or FAILED -# If a test did not return with the expected return code, +# If a test did not return with the expected return code, # increment the `nerrors' global variable and (if $verbose is set) display up to $NLINES -# lines of the actual output from the test. +# lines of the actual output from the test. # If the test did return the expected code, # compare the actual output with the expected output; # If the outputs are the same, print PASSED, @@ -109,35 +109,32 @@ TOOLTEST() { # any unexpected output from that stream too. TESTING $H5WATCH $@ ( - $ECHO "#############################" - $ECHO " output for '$H5WATCH $@'" - $ECHO "#############################" $RUNSERIAL $H5WATCH_BIN "$@" ) > $actual 2>$actual_err exitcode=$? cat $actual_err >> $actual if [ $exitcode -ne $retvalexpect ]; then - $ECHO "*FAILED*" - nerrors="`expr $nerrors + 1`" - if [ yes = "$verbose" ]; then - $ECHO "test returned with exit code $exitcode" - $ECHO "test output: (up to $NLINES lines)" - head -$NLINES $actual - $ECHO "***end of test output***" - $ECHO "" - fi + $ECHO "*FAILED*" + nerrors="`expr $nerrors + 1`" + if [ yes = "$verbose" ]; then + $ECHO "test returned with exit code $exitcode" + $ECHO "test output: (up to $NLINES lines)" + head -$NLINES $actual + $ECHO "***end of test output***" + $ECHO "" + fi elif $CMP $expect $actual; then $ECHO " PASSED" else $ECHO "*FAILED*" - $ECHO " Expected result differs from actual result" - nerrors="`expr $nerrors + 1`" - test yes = "$verbose" && $DIFF $expect $actual |sed 's/^/ /' + $ECHO " Expected result differs from actual result" + nerrors="`expr $nerrors + 1`" + test yes = "$verbose" && $DIFF $expect $actual |sed 's/^/ /' fi # Clean up output file if test -z "$HDF5_NOCLEANUP"; then - rm -f $actual $actual_err + rm -f $actual $actual_err fi } # @@ -170,17 +167,17 @@ TEST_WATCH() { # Wait for message from "extend_dset" process to start h5watch-- # To wait for the writer message file or till the maximum # of seconds is reached # This performs similar function as the routine h5_wait_message() in test/h5test.c - mexist=0 # Indicate whether the message file is found - t0=`date +%s` # Get current time in seconds - difft=0 # Initialize the time difference - while [ $difft -lt $MESSAGE_TIMEOUT ] ; # Loop till message times out + mexist=0 # Indicate whether the message file is found + t0=`date +%s` # Get current time in seconds + difft=0 # Initialize the time difference + while [ $difft -lt $MESSAGE_TIMEOUT ] ; # Loop till message times out do - t1=`date +%s` # Get current time in seconds - difft=`expr $t1 - $t0` # Calculate the time difference - if [ -e $WRITER_MESSAGE ]; then # If message file is found: - mexist=1 # indicate the message file is found - rm $WRITER_MESSAGE # remove the message file - break # get out of the while loop + t1=`date +%s` # Get current time in seconds + difft=`expr $t1 - $t0` # Calculate the time difference + if [ -e $WRITER_MESSAGE ]; then # If message file is found: + mexist=1 # indicate the message file is found + rm $WRITER_MESSAGE # remove the message file + break # get out of the while loop fi done; # @@ -199,15 +196,14 @@ TEST_WATCH() { # # Run h5watch; put in background; collect output to a file TESTING $H5WATCH $OBJ - head -n 3 $expect > $actual # copy the first 3 lines from $expect (just the command line) $RUNSERIAL $H5WATCH_BIN $2 "$TESTFILE/$1" >> $actual & watch_pid=$! # Get h5watch process ID cp /dev/null $READER_MESSAGE # Send message to "extend" process to start work wait $extend_pid # Wait for "extend" process to complete extend_exit=$? # Collect "extend" process' exit code sleep 1 # Sleep to make sure output is flushed - kill $watch_pid # Kill h5watch - wait $watch_pid # Wait for "h5watch" process to complete + kill $watch_pid # Kill h5watch + wait $watch_pid # Wait for "h5watch" process to complete # if [ $extend_exit -ne 0 ]; then # Error returned from "extend" process $ECHO "*FAILED*" @@ -240,41 +236,41 @@ TEST_WATCH() { ############################################################################## ############################################################################## -### T H E T E S T S ### +### T H E T E S T S ### ############################################################################## ############################################################################## # # ################################################################################################# -# # -# WATCH.h5: file with various types of datasets for testing-- # -# The following datasets are chunked, H5D_ALLOC_TIME_INCR, max. dimensional setting: # -# DSET_ONE: one-dimensional dataset # -# DSET_TWO: two-dimensional dataset # -# DSET_CMPD: one-dimensional dataset with compound type # -# DSET_CMPD_ESC: one-dimensional dataset with compound type & escape/separator characters # -# DSET_CMPD_TWO: two-dimensional dataset with compound type # -# # -# The following datasets are one-dimensional, chunked, max. dimension setting: # -# DSET_ALLOC_EARLY: dataset with H5D_ALLOC_TIME_EARLY # -# DSET_ALLOC_LATE: dataset H5D_ALLOC_TIME_LATE # -# # -# The following datasets are one-dimensional: # -# DSET_NONE: fixed dimension setting, contiguous, H5D_ALLOC_TIME_LATE # -# DSET_NOMAX: fixed dimension setting, chunked, H5D_ALLOC_TIME_INCR # -# # +# # +# WATCH.h5: file with various types of datasets for testing-- # +# The following datasets are chunked, H5D_ALLOC_TIME_INCR, max. dimensional setting: # +# DSET_ONE: one-dimensional dataset # +# DSET_TWO: two-dimensional dataset # +# DSET_CMPD: one-dimensional dataset with compound type # +# DSET_CMPD_ESC: one-dimensional dataset with compound type & escape/separator characters # +# DSET_CMPD_TWO: two-dimensional dataset with compound type # +# # +# The following datasets are one-dimensional, chunked, max. dimension setting: # +# DSET_ALLOC_EARLY: dataset with H5D_ALLOC_TIME_EARLY # +# DSET_ALLOC_LATE: dataset H5D_ALLOC_TIME_LATE # +# # +# The following datasets are one-dimensional: # +# DSET_NONE: fixed dimension setting, contiguous, H5D_ALLOC_TIME_LATE # +# DSET_NOMAX: fixed dimension setting, chunked, H5D_ALLOC_TIME_INCR # +# # ################################################################################################# # # ################################################################################################# -# # -# Tests on expected failures: # -# Invalid file name # -# Unable to find dataset, invalid dataset # -# DSET_NONE and DSET_NOMAX # -# Invalid input to options --width and --polling # -# Invalid field names for -f option # -# # +# # +# Tests on expected failures: # +# Invalid file name # +# Unable to find dataset, invalid dataset # +# DSET_NONE and DSET_NOMAX # +# Invalid input to options --width and --polling # +# Invalid field names for -f option # +# # ################################################################################################# # # Generate file with various types of datasets diff --git a/hl/tools/testfiles/w-err-cmpd1.ddl b/hl/tools/testfiles/w-err-cmpd1.ddl index 2a3f796..775d6a0 100644 --- a/hl/tools/testfiles/w-err-cmpd1.ddl +++ b/hl/tools/testfiles/w-err-cmpd1.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch --fields=fieldx WATCH.h5/DSET_CMPD' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: error in processing diff --git a/hl/tools/testfiles/w-err-cmpd2.ddl b/hl/tools/testfiles/w-err-cmpd2.ddl index 4de3fe2..775d6a0 100644 --- a/hl/tools/testfiles/w-err-cmpd2.ddl +++ b/hl/tools/testfiles/w-err-cmpd2.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch --fields=field1,field2. WATCH.h5/DSET_CMPD' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: error in processing diff --git a/hl/tools/testfiles/w-err-cmpd3.ddl b/hl/tools/testfiles/w-err-cmpd3.ddl index f2f462e..775d6a0 100644 --- a/hl/tools/testfiles/w-err-cmpd3.ddl +++ b/hl/tools/testfiles/w-err-cmpd3.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch --fields=field1,field2, WATCH.h5/DSET_CMPD' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: error in processing diff --git a/hl/tools/testfiles/w-err-cmpd4.ddl b/hl/tools/testfiles/w-err-cmpd4.ddl index b11277b..775d6a0 100644 --- a/hl/tools/testfiles/w-err-cmpd4.ddl +++ b/hl/tools/testfiles/w-err-cmpd4.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch --fields=field1,field2.b.k WATCH.h5/DSET_CMPD' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: error in processing diff --git a/hl/tools/testfiles/w-err-cmpd5.ddl b/hl/tools/testfiles/w-err-cmpd5.ddl index 7174d14..775d6a0 100644 --- a/hl/tools/testfiles/w-err-cmpd5.ddl +++ b/hl/tools/testfiles/w-err-cmpd5.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch --fields=field1 --fields=field2.b.k WATCH.h5/DSET_CMPD' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: error in processing diff --git a/hl/tools/testfiles/w-err-dset-nomax.ddl b/hl/tools/testfiles/w-err-dset-nomax.ddl index c2fd65f..b99cf84 100644 --- a/hl/tools/testfiles/w-err-dset-nomax.ddl +++ b/hl/tools/testfiles/w-err-dset-nomax.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch WATCH.h5/DSET_NOMAX' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: "/DSET_NOMAX" should have unlimited or max. dimension setting diff --git a/hl/tools/testfiles/w-err-dset-none.ddl b/hl/tools/testfiles/w-err-dset-none.ddl index f9165aa..cbf6770 100644 --- a/hl/tools/testfiles/w-err-dset-none.ddl +++ b/hl/tools/testfiles/w-err-dset-none.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch WATCH.h5/DSET_NONE' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: "/DSET_NONE" should be a chunked or virtual dataset diff --git a/hl/tools/testfiles/w-err-dset1.ddl b/hl/tools/testfiles/w-err-dset1.ddl index 0594562..433c4d6 100644 --- a/hl/tools/testfiles/w-err-dset1.ddl +++ b/hl/tools/testfiles/w-err-dset1.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch WATCH.h5' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: no dataset specified diff --git a/hl/tools/testfiles/w-err-dset2.ddl b/hl/tools/testfiles/w-err-dset2.ddl index ce26109..81b52de 100644 --- a/hl/tools/testfiles/w-err-dset2.ddl +++ b/hl/tools/testfiles/w-err-dset2.ddl @@ -1,5 +1,2 @@ -############################# - output for 'h5watch WATCH.h5/group/DSET_CMPD' -############################# Opened "WATCH.h5" with sec2 driver. h5watch error: unable to open dataset "/group/DSET_CMPD" diff --git a/hl/tools/testfiles/w-err-file.ddl b/hl/tools/testfiles/w-err-file.ddl index 416fd44..015661f 100644 --- a/hl/tools/testfiles/w-err-file.ddl +++ b/hl/tools/testfiles/w-err-file.ddl @@ -1,4 +1 @@ -############################# - output for 'h5watch ../WATCH.h5/DSET_CMPD' -############################# h5watch error: unable to open file "../WATCH.h5/DSET_CMPD" diff --git a/hl/tools/testfiles/w-err-poll.ddl b/hl/tools/testfiles/w-err-poll.ddl index 56c8d89..e6510f2 100644 --- a/hl/tools/testfiles/w-err-poll.ddl +++ b/hl/tools/testfiles/w-err-poll.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --polling=-8 WATCH.h5/DSET_ONE' -############################# Usage: h5watch [OPTIONS] [OBJECT] OPTIONS diff --git a/hl/tools/testfiles/w-err-poll0.ddl b/hl/tools/testfiles/w-err-poll0.ddl index ff6f322..e6510f2 100644 --- a/hl/tools/testfiles/w-err-poll0.ddl +++ b/hl/tools/testfiles/w-err-poll0.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --polling=0 WATCH.h5/DSET_ONE' -############################# Usage: h5watch [OPTIONS] [OBJECT] OPTIONS diff --git a/hl/tools/testfiles/w-err-width.ddl b/hl/tools/testfiles/w-err-width.ddl index bf405a4..e6510f2 100644 --- a/hl/tools/testfiles/w-err-width.ddl +++ b/hl/tools/testfiles/w-err-width.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --width=-8 WATCH.h5/DSET_ONE' -############################# Usage: h5watch [OPTIONS] [OBJECT] OPTIONS diff --git a/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl b/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl index 6e1d2b5..d85594d 100644 --- a/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field\,1,field2\. TEST.h5/DSET_CMPD_ESC' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD_ESC... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl b/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl index 7623f3f..ab6c294 100644 --- a/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field2\..\,b.a,field2\..\\K TEST.h5/DSET_CMPD_ESC' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD_ESC... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl b/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl index db331f0..039cbf3 100644 --- a/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field2\..\,b --fields=field4\, TEST.h5/DSET_CMPD_ESC' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD_ESC... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-esc.ddl b/hl/tools/testfiles/w-ext-cmpd-esc.ddl index 66eb48c..900b3f2 100644 --- a/hl/tools/testfiles/w-ext-cmpd-esc.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-esc.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch TEST.h5/DSET_CMPD_ESC' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD_ESC... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-f1.ddl b/hl/tools/testfiles/w-ext-cmpd-f1.ddl index a722f68..7e0a066 100644 --- a/hl/tools/testfiles/w-ext-cmpd-f1.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-f1.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field1,field2 TEST.h5/DSET_CMPD' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-f2.ddl b/hl/tools/testfiles/w-ext-cmpd-f2.ddl index b6561c5..ea69222 100644 --- a/hl/tools/testfiles/w-ext-cmpd-f2.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-f2.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field2.b,field4 TEST.h5/DSET_CMPD' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-ff3.ddl b/hl/tools/testfiles/w-ext-cmpd-ff3.ddl index c3d22f5..84e2919 100644 --- a/hl/tools/testfiles/w-ext-cmpd-ff3.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-ff3.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field2.b.a --fields=field2.c TEST.h5/DSET_CMPD' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-label.ddl b/hl/tools/testfiles/w-ext-cmpd-label.ddl index 63ac47e..84534ea 100644 --- a/hl/tools/testfiles/w-ext-cmpd-label.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-label.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --label TEST.h5/DSET_CMPD' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl b/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl index a49f9f1..49abde9 100644 --- a/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field1,field2 TEST.h5/DSET_CMPD_TWO' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD_TWO... dimension 0: 4->6 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl b/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl index a0ab9ac..0878f35 100644 --- a/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field2.b.a,field2.c TEST.h5/DSET_CMPD_TWO' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD_TWO... dimension 0: 4->6 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl b/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl index e32a818..669547e 100644 --- a/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --fields=field2.b --fields=field4 TEST.h5/DSET_CMPD_TWO' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD_TWO... dimension 0: 4->6 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd-two.ddl b/hl/tools/testfiles/w-ext-cmpd-two.ddl index 90775e3..a461226 100644 --- a/hl/tools/testfiles/w-ext-cmpd-two.ddl +++ b/hl/tools/testfiles/w-ext-cmpd-two.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch TEST.h5/DSET_CMPD_TWO' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD_TWO... dimension 0: 4->6 (increases) diff --git a/hl/tools/testfiles/w-ext-cmpd.ddl b/hl/tools/testfiles/w-ext-cmpd.ddl index 5512d17..7e64a14 100644 --- a/hl/tools/testfiles/w-ext-cmpd.ddl +++ b/hl/tools/testfiles/w-ext-cmpd.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch TEST.h5/DSET_CMPD' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_CMPD... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-early.ddl b/hl/tools/testfiles/w-ext-early.ddl index a822540..1d963d7 100644 --- a/hl/tools/testfiles/w-ext-early.ddl +++ b/hl/tools/testfiles/w-ext-early.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch TEST.h5/DSET_ALLOC_EARLY' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_ALLOC_EARLY... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-late.ddl b/hl/tools/testfiles/w-ext-late.ddl index 724562f..f3a7cf2 100644 --- a/hl/tools/testfiles/w-ext-late.ddl +++ b/hl/tools/testfiles/w-ext-late.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch TEST.h5/DSET_ALLOC_LATE' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_ALLOC_LATE... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-one-d.ddl b/hl/tools/testfiles/w-ext-one-d.ddl index 55d55ca..249ff95 100644 --- a/hl/tools/testfiles/w-ext-one-d.ddl +++ b/hl/tools/testfiles/w-ext-one-d.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --dim TEST.h5/DSET_ONE' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_ONE... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-one-simple.ddl b/hl/tools/testfiles/w-ext-one-simple.ddl index f657748..3bf0ef5 100644 --- a/hl/tools/testfiles/w-ext-one-simple.ddl +++ b/hl/tools/testfiles/w-ext-one-simple.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --simple TEST.h5/DSET_ONE' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_ONE... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-one.ddl b/hl/tools/testfiles/w-ext-one.ddl index b46392e..c4e75eb 100644 --- a/hl/tools/testfiles/w-ext-one.ddl +++ b/hl/tools/testfiles/w-ext-one.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch TEST.h5/DSET_ONE' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_ONE... dimension 0: 10->13 (increases) diff --git a/hl/tools/testfiles/w-ext-two-d.ddl b/hl/tools/testfiles/w-ext-two-d.ddl index dda09e6..b71a9a6 100644 --- a/hl/tools/testfiles/w-ext-two-d.ddl +++ b/hl/tools/testfiles/w-ext-two-d.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --dim TEST.h5/DSET_TWO' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_TWO... dimension 0: 4->6 (increases) diff --git a/hl/tools/testfiles/w-ext-two-width.ddl b/hl/tools/testfiles/w-ext-two-width.ddl index 47e9221..52903de 100644 --- a/hl/tools/testfiles/w-ext-two-width.ddl +++ b/hl/tools/testfiles/w-ext-two-width.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --width=30 TEST.h5/DSET_TWO' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_TWO... dimension 0: 4->6 (increases) diff --git a/hl/tools/testfiles/w-ext-two.ddl b/hl/tools/testfiles/w-ext-two.ddl index a98d333..31df8d5 100644 --- a/hl/tools/testfiles/w-ext-two.ddl +++ b/hl/tools/testfiles/w-ext-two.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch TEST.h5/DSET_TWO' -############################# Opened "TEST.h5" with sec2 driver. Monitoring dataset /DSET_TWO... dimension 0: 4->6 (increases) diff --git a/hl/tools/testfiles/w-help1.ddl b/hl/tools/testfiles/w-help1.ddl index 8e75242..e6510f2 100644 --- a/hl/tools/testfiles/w-help1.ddl +++ b/hl/tools/testfiles/w-help1.ddl @@ -1,6 +1,3 @@ -############################# - output for 'h5watch --help' -############################# Usage: h5watch [OPTIONS] [OBJECT] OPTIONS diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index fd47379..0b6faa8 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -45,5 +45,8 @@ add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5stat) #-- Add the h5dump and test executables add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5dump) +#-- Add the h5dump and test executables +add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/h5format_convert) + #-- Add the perform and test executables add_subdirectory (${HDF5_TOOLS_SOURCE_DIR}/perform) diff --git a/tools/Makefile.in b/tools/Makefile.in index 5604dbf..3d1791e 100644 --- a/tools/Makefile.in +++ b/tools/Makefile.in @@ -731,7 +731,9 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2 CONFIG = ordered # All subdirectories -SUBDIRS = lib h5diff h5ls h5dump misc h5import h5repack h5jam h5copy h5stat h5format_convert perform +SUBDIRS = lib h5diff h5ls h5dump misc h5import h5repack h5jam h5copy h5stat \ + h5format_convert perform + # Automake needs to be taught how to build lib, progs, and tests targets. # These will be filled in automatically for the most part (e.g., diff --git a/tools/h5format_convert/CMakeLists.txt b/tools/h5format_convert/CMakeLists.txt new file mode 100644 index 0000000..4f6fdea --- /dev/null +++ b/tools/h5format_convert/CMakeLists.txt @@ -0,0 +1,59 @@ +cmake_minimum_required (VERSION 3.1.0) +PROJECT (HDF5_TOOLS_H5FC) + +#----------------------------------------------------------------------------- +# Setup include Directories +#----------------------------------------------------------------------------- +INCLUDE_DIRECTORIES (${HDF5_TOOLS_DIR}/lib) + +# -------------------------------------------------------------------- +# Add the h5format_convert executables +# -------------------------------------------------------------------- +add_executable (h5format_convert ${HDF5_TOOLS_H5FC_SOURCE_DIR}/h5format_convert.c) +TARGET_NAMING (h5format_convert STATIC) +TARGET_C_PROPERTIES (h5format_convert STATIC " " " ") +target_link_libraries (h5format_convert ${HDF5_TOOLS_LIB_TARGET} ${HDF5_LIB_TARGET}) +set_target_properties (h5format_convert PROPERTIES FOLDER tools) + +set (H5_DEP_EXECUTABLES h5format_convert) + +if (BUILD_TESTING) + # -------------------------------------------------------------------- + # Add the h5format_convert test executables + # -------------------------------------------------------------------- + add_executable (h5fc_chk_idx ${HDF5_TOOLS_H5FC_SOURCE_DIR}/h5fc_chk_idx.c) + TARGET_NAMING (h5fc_chk_idx STATIC) + TARGET_C_PROPERTIES (h5fc_chk_idx STATIC " " " ") + target_link_libraries (h5fc_chk_idx ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) + set_target_properties (h5fc_chk_idx PROPERTIES FOLDER tools) + + if (HDF5_BUILD_GENERATORS) + add_executable (h5fc_gentest ${HDF5_TOOLS_H5FC_SOURCE_DIR}/h5fc_gentest.c) + TARGET_NAMING (h5fc_gentest STATIC) + TARGET_C_PROPERTIES (h5fc_gentest STATIC " " " ") + target_link_libraries (h5fc_gentest ${HDF5_LIB_TARGET} ${HDF5_TOOLS_LIB_TARGET}) + set_target_properties (h5fc_gentest PROPERTIES FOLDER generator/tools) + + #add_test (NAME h5fc_gentest COMMAND $) + endif (HDF5_BUILD_GENERATORS) + + include (CMakeTests.cmake) +endif (BUILD_TESTING) + +############################################################################## +############################################################################## +### I N S T A L L A T I O N ### +############################################################################## +############################################################################## + +#----------------------------------------------------------------------------- +# Rules for Installation of tools using make Install target +#----------------------------------------------------------------------------- + +#INSTALL_PROGRAM_PDB (h5format_convert ${HDF5_INSTALL_BIN_DIR} toolsapplications) + +install ( + TARGETS + h5format_convert + RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT toolsapplications +) diff --git a/tools/h5format_convert/CMakeTests.cmake b/tools/h5format_convert/CMakeTests.cmake new file mode 100644 index 0000000..5771aa5 --- /dev/null +++ b/tools/h5format_convert/CMakeTests.cmake @@ -0,0 +1,463 @@ + +############################################################################## +############################################################################## +### T E S T I N G ### +############################################################################## +############################################################################## + + # -------------------------------------------------------------------- + # Copy all the HDF5 files from the test directory into the source directory + # -------------------------------------------------------------------- + set (HDF5_REFERENCE_FILES + h5fc_help.ddl + h5fc_nooption.ddl + h5fc_nonexistfile.ddl + h5fc_d_file.ddl + h5fc_dname.ddl + h5fc_nonexistdset_file.ddl + h5fc_v_non_chunked.ddl + h5fc_v_bt1.ddl + h5fc_v_ndata_bt1.ddl + h5fc_v_all.ddl + h5fc_v_n_1d.ddl + h5fc_v_n_all.ddl + h5fc_ext1_i.ddl + h5fc_ext1_s.ddl + h5fc_ext1_f.ddl + h5fc_ext2_if.ddl + h5fc_ext2_is.ddl + h5fc_ext2_sf.ddl + h5fc_ext3_isf.ddl + old_h5fc_ext1_i.ddl + old_h5fc_ext1_s.ddl + old_h5fc_ext1_f.ddl + old_h5fc_ext2_if.ddl + old_h5fc_ext2_is.ddl + old_h5fc_ext2_sf.ddl + old_h5fc_ext3_isf.ddl + ) + set (HDF5_REFERENCE_TEST_FILES + h5fc_non_v3.h5 + h5fc_edge_v3.h5 + h5fc_ext_none.h5 + old_h5fc_ext_none.h5 + h5fc_ext1_i.h5 + h5fc_ext1_s.h5 + h5fc_ext1_f.h5 + h5fc_ext2_if.h5 + h5fc_ext2_is.h5 + h5fc_ext2_sf.h5 + h5fc_ext3_isf.h5 + old_h5fc_ext1_i.h5 + old_h5fc_ext1_s.h5 + old_h5fc_ext1_f.h5 + old_h5fc_ext2_if.h5 + old_h5fc_ext2_is.h5 + old_h5fc_ext2_sf.h5 + old_h5fc_ext3_isf.h5 + ) + + file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") + add_custom_target(h5fc-files ALL COMMENT "Copying files needed by h5fc tests") + + foreach (ddl_file ${HDF5_REFERENCE_FILES}) + set (ddldest "${PROJECT_BINARY_DIR}/testfiles/${ddl_file}") + #message (STATUS " Translating ${ddl_file}") + add_custom_command ( + TARGET h5fc-files + POST_BUILD + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${ddl_file} ${ddldest} + ) + endforeach (ddl_file ${HDF5_REFERENCE_FILES}) + + foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) + set (dest "${PROJECT_BINARY_DIR}/testfiles/${h5_file}") + #message (STATUS " Copying ${h5_file}") + add_custom_command ( + TARGET h5fc-files + POST_BUILD + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${h5_file} ${dest} + ) + endforeach (h5_file ${HDF5_REFERENCE_TEST_FILES}) + +############################################################################## +############################################################################## +### T H E T E S T S M A C R O S ### +############################################################################## +############################################################################## + + MACRO (ADD_H5_OUTPUT testname resultfile resultcode testfile) + # If using memchecker add tests without using scripts + if (NOT HDF5_ENABLE_USING_MEMCHECKER) + add_test ( + NAME H5FC-${testname}-clear-objects + COMMAND ${CMAKE_COMMAND} + -E remove ./testfiles/${testname}.out ./testfiles/${testname}.out.err ./testfiles/outtmp.h5 + ) + if (NOT "${last_test}" STREQUAL "") + set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test}) + endif (NOT "${last_test}" STREQUAL "") + if (NOT "${testfile}" STREQUAL "") + add_test ( + NAME H5FC-${testname}-${testfile}-tmpfile + COMMAND ${CMAKE_COMMAND} + -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} ./testfiles/outtmp.h5 + ) + set_tests_properties (H5FC-${testname}-${testfile}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects") + add_test ( + NAME H5FC-${testname}-${testfile} + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS=${ARGN};outtmp.h5" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" + -D "TEST_OUTPUT=${testname}.out" + -D "TEST_EXPECT=${resultcode}" + -D "TEST_REFERENCE=${resultfile}" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + set_tests_properties (H5FC-${testname}-${testfile} PROPERTIES DEPENDS "H5FC-${testname}-${testfile}-tmpfile") + set (last_test "H5FC-${testname}-${testfile}") + else (NOT "${testfile}" STREQUAL "") + add_test ( + NAME H5FC-${testname}-NA + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS=${ARGN}" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" + -D "TEST_OUTPUT=${testname}.out" + -D "TEST_EXPECT=${resultcode}" + -D "TEST_REFERENCE=${resultfile}" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + set_tests_properties (H5FC-${testname}-NA PROPERTIES DEPENDS "H5FC-${testname}-clear-objects") + set (last_test "H5FC-${testname}-NA") + endif (NOT "${testfile}" STREQUAL "") + endif (NOT HDF5_ENABLE_USING_MEMCHECKER) + ENDMACRO (ADD_H5_OUTPUT) + + MACRO (ADD_H5_TEST testname resultcode testfile) + # If using memchecker add tests without using scripts + if (NOT HDF5_ENABLE_USING_MEMCHECKER) + add_test ( + NAME H5FC-${testname}-clear-objects + COMMAND ${CMAKE_COMMAND} + -E remove ./testfiles/${testname}.out ./testfiles/${testname}.out.err ./testfiles/tmp.h5 + ) + if (NOT "${last_test}" STREQUAL "") + set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test}) + endif (NOT "${last_test}" STREQUAL "") + add_test ( + NAME H5FC-${testname}-tmpfile + COMMAND ${CMAKE_COMMAND} + -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} testfiles/tmp.h5 + ) + set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects") + add_test ( + NAME H5FC-${testname} + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS=${ARGN};./testfiles/tmp.h5" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" + -D "TEST_OUTPUT=testfiles/${testname}.out" + -D "TEST_SKIP_COMPARE=TRUE" + -D "TEST_EXPECT=${resultcode}" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + set_tests_properties (H5FC-${testname} PROPERTIES DEPENDS "H5FC-${testname}-tmpfile") + set (last_test "H5FC-${testname}") + endif (NOT HDF5_ENABLE_USING_MEMCHECKER) + ENDMACRO (ADD_H5_TEST) + + MACRO (ADD_H5_CHECK_IDX dependtest testname) + # If using memchecker add tests without using scripts + if (NOT HDF5_ENABLE_USING_MEMCHECKER) + add_test ( + NAME H5FC_CHECK_IDX-${testname} + COMMAND "$" "./testfiles/tmp.h5" "${ARGN}" + ) + set_tests_properties (H5FC_CHECK_IDX-${testname} PROPERTIES DEPENDS "H5FC-${dependtest}") + endif (NOT HDF5_ENABLE_USING_MEMCHECKER) + ENDMACRO (ADD_H5_CHECK_IDX) + + MACRO (ADD_H5_TEST_CHECK_IDX testname resultcode testfile) + # If using memchecker add tests without using scripts + if (NOT HDF5_ENABLE_USING_MEMCHECKER) + add_test ( + NAME H5FC-${testname}-clear-objects + COMMAND ${CMAKE_COMMAND} + -E remove ./testfiles/${testname}.out ./testfiles/${testname}.out.err ./testfiles/chktmp.h5 + ) + if (NOT "${last_test}" STREQUAL "") + set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test}) + endif (NOT "${last_test}" STREQUAL "") + add_test ( + NAME H5FC-${testname}-tmpfile + COMMAND ${CMAKE_COMMAND} + -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testfile} testfiles/chktmp.h5 + ) + set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects") + add_test ( + NAME H5FC-${testname} + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS=-d;${ARGN};./testfiles/chktmp.h5" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" + -D "TEST_OUTPUT=testfiles/${testname}.out" + -D "TEST_SKIP_COMPARE=TRUE" + -D "TEST_EXPECT=${resultcode}" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + set_tests_properties (H5FC-${testname} PROPERTIES DEPENDS "H5FC-${testname}-tmpfile") + add_test ( + NAME H5FC_CHECK_IDX-${testname} + COMMAND "$" "./testfiles/chktmp.h5" "${ARGN}" + ) + set_tests_properties (H5FC_CHECK_IDX-${testname} PROPERTIES DEPENDS "H5FC-${testname}") + set (last_test "H5FC_CHECK_IDX-${testname}") + endif (NOT HDF5_ENABLE_USING_MEMCHECKER) + ENDMACRO (ADD_H5_TEST_CHECK_IDX) + + MACRO (ADD_H5_H5DUMP_CHECK testname) + # If using memchecker add tests without using scripts + if (NOT HDF5_ENABLE_USING_MEMCHECKER) + add_test ( + NAME H5FC-${testname}-clear-objects + COMMAND ${CMAKE_COMMAND} + -E remove ./testfiles/${testname}.out ./testfiles/${testname}.out.err ./testfiles/dmptmp.h5 + ) + if (NOT "${last_test}" STREQUAL "") + set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test}) + endif (NOT "${last_test}" STREQUAL "") + add_test ( + NAME H5FC-${testname}-tmpfile + COMMAND ${CMAKE_COMMAND} + -E copy_if_different ${HDF5_TOOLS_H5FC_SOURCE_DIR}/testfiles/${testname}.h5 testfiles/dmptmp.h5 + ) + set_tests_properties (H5FC-${testname}-tmpfile PROPERTIES DEPENDS "H5FC-${testname}-clear-objects") + add_test ( + NAME H5FC-${testname} + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS=${ARGN};./testfiles/dmptmp.h5" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" + -D "TEST_OUTPUT=testfiles/${testname}.out" + -D "TEST_SKIP_COMPARE=TRUE" + -D "TEST_EXPECT=0" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + set_tests_properties (H5FC-${testname} PROPERTIES DEPENDS "H5FC-${testname}-tmpfile") + add_test ( + NAME H5FC_CHECK_DUMP-${testname} + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS:STRING=-BH;./testfiles/dmptmp.h5" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" + -D "TEST_OUTPUT=testfiles/${testname}.out" + -D "TEST_EXPECT=0" + -D "TEST_REFERENCE=testfiles/${testname}.ddl" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + set_tests_properties (H5FC_CHECK_DUMP-${testname} PROPERTIES DEPENDS "H5FC-${testname}") + set (last_test "H5FC_CHECK_DUMP-${testname}") + endif (NOT HDF5_ENABLE_USING_MEMCHECKER) + ENDMACRO (ADD_H5_H5DUMP_CHECK) + +############################################################################## +############################################################################## +### T H E T E S T S ### +############################################################################## +############################################################################## + + if (HDF5_ENABLE_USING_MEMCHECKER) + # Remove any output file left over from previous test run + add_test ( + NAME H5FC-clearall-objects + COMMAND ${CMAKE_COMMAND} + -E remove + h5fc_help.out + h5fc_help.out.err + h5fc_nooption.out + h5fc_nooption.out.err + h5fc_nonexistfile.out + h5fc_nonexistfile.out.err + h5fc_d_file.out + h5fc_d_file.out.err + h5fc_d_file-d.out + h5fc_d_file-d.out.err + h5fc_dname.out + h5fc_dname.out.err + h5fc_nonexistdset_file.out + h5fc_nonexistdset_file.out.err + h5fc_v_non_chunked.out + h5fc_v_non_chunked.out.err + h5fc_v_bt1.out + h5fc_v_bt1.out.err + h5fc_v_ndata_bt1.out + h5fc_v_ndata_bt1.out.err + h5fc_v_all.out + h5fc_v_all.out.err + h5fc_v_n_1d.out + h5fc_v_n_1d.out.err + h5fc_v_n_all.out + h5fc_v_n_all.out.err + h5fc_ext1_i.out + h5fc_ext1_i.out.err + h5fc_ext1_s.out + h5fc_ext1_s.out.err + h5fc_ext1_f.out + h5fc_ext1_f.out.err + h5fc_ext2_if.out + h5fc_ext2_if.out.err + h5fc_ext2_is.out + h5fc_ext2_is.out.err + h5fc_ext2_sf.out + h5fc_ext2_sf.out.err + h5fc_ext3_isf.out + h5fc_ext3_isf.out.err + old_h5fc_ext1_i.out + old_h5fc_ext1_i.out.err + old_h5fc_ext1_s.out + old_h5fc_ext1_s.out.err + old_h5fc_ext1_f.out + old_h5fc_ext1_f.out.err + old_h5fc_ext2_if.out + old_h5fc_ext2_is.out.err + old_h5fc_ext2_is.out + old_h5fc_ext2_sf.out.err + old_h5fc_ext3_isf.out + old_h5fc_ext3_isf.out.err + outtmp.h5 + tmp.h5 + chktmp.h5 + dmptmp.h5 + ) + if (NOT "${last_test}" STREQUAL "") + set_tests_properties (H5FC-clearall-objects PROPERTIES DEPENDS ${last_test}) + endif (NOT "${last_test}" STREQUAL "") + set (last_test "H5FC-clearall-objects") + endif (HDF5_ENABLE_USING_MEMCHECKER) + +# h5format_convert --help +# h5format_convert (no options) +# h5format_convert nonexist.h5 (no options, file does not exist) + ADD_H5_OUTPUT (h5fc_help h5fc_help.ddl 0 "" --help) + ADD_H5_OUTPUT (h5fc_nooption h5fc_nooption.ddl 1 "") + ADD_H5_OUTPUT (h5fc_nonexistfile h5fc_nonexistfile.ddl 1 "" nonexist.h5) +# +# +# h5format_convert -d old_h5fc_ext_none.h5 (just -d option, file exists) +# h5format_convert --dname old_h5fc_ext_none.h5 (just --dname option, file exists) +# h5format_convert --dname (just --dname option) +# h5format_convert --dname=nonexist old_h5fc_ext_none.h5 (dataset does not exist, file exists) + ADD_H5_OUTPUT (h5fc_d_file-d h5fc_d_file.ddl 1 old_h5fc_ext_none.h5 -d) + ADD_H5_OUTPUT (h5fc_d_file h5fc_d_file.ddl 1 old_h5fc_ext_none.h5 --dname) + ADD_H5_OUTPUT (h5fc_dname h5fc_dname.ddl 1 "" --dname) + ADD_H5_OUTPUT (h5fc_nonexistdset_file h5fc_nonexistdset_file.ddl 1 old_h5fc_ext_none.h5 --dname=nonexist) +# +# +# +# h5format_convert -d /DSET_CONTIGUOUS -v old_h5fc_ext_none.h5 (verbose, contiguous dataset) +# h5format_convert -d /GROUP/DSET_BT2 --verbose old_h5fc_ext_none.h5 (verbose, bt1 dataset) +# h5format_convert -d /DSET_NDATA_BT2 -v -n old_h5fc_ext_none.h5 (verbose, noop, bt1+nodata dataset) +# h5format_convert -v old_h5fc_ext_none.h5 (verbose, all datasets) + ADD_H5_OUTPUT (h5fc_v_non_chunked h5fc_v_non_chunked.ddl 0 old_h5fc_ext_none.h5 -d /DSET_CONTIGUOUS -v) + ADD_H5_OUTPUT (h5fc_v_bt1 h5fc_v_bt1.ddl 0 old_h5fc_ext_none.h5 -d /GROUP/DSET_BT2 --verbose) + ADD_H5_OUTPUT (h5fc_v_ndata_bt1 h5fc_v_ndata_bt1.ddl 0 old_h5fc_ext_none.h5 -d /DSET_NDATA_BT2 -v -n) + ADD_H5_OUTPUT (h5fc_v_all h5fc_v_all.ddl 0 old_h5fc_ext_none.h5 -v) +# +# +# +# h5format_convert -d /DSET_EA -v -n h5fc_ext_none.h5 (verbose, noop, one ea dataset) +# h5format_convert -v -n h5fc_non_v3.h5 (verbose, noop, all datasets) + ADD_H5_OUTPUT (h5fc_v_n_1d h5fc_v_n_1d.ddl 0 h5fc_ext_none.h5 -d /DSET_EA -v -n) + ADD_H5_OUTPUT (h5fc_v_n_all h5fc_v_n_all.ddl 0 h5fc_non_v3.h5 -v -n) +# No output from tests +# 1) Use the tool to convert the dataset +# 2) Verify the chunk indexing type is correct +# h5format_convert -d /DSET_EA h5fc_ext_none.h5 +# h5format_convert -d /GROUP/DSET_NDATA_EA h5fc_ext_none.h5 +# h5format_convert -d /GROUP/DSET_BT2 h5fc_ext_none.h5 +# h5format_convert -d /DSET_NDATA_BT2 h5fc_ext_none.h5 +# h5format_convert -d /DSET_FA h5fc_ext_none.h5 +# h5format_convert -d /GROUP/DSET_FA h5fc_ext_none.h5 +# h5format_convert -d /DSET_NONE h5fc_ext_none.h5 +# h5format_convert -d /GROUP/DSET_NDATA_NONE h5fc_ext_none.h5 + ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_EA 0 h5fc_ext_none.h5 /DSET_EA) +# + ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_ND_EA 0 h5fc_ext_none.h5 /GROUP/DSET_NDATA_EA) +# + ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_BT 0 h5fc_ext_none.h5 /GROUP/DSET_BT2) +# + ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_ND_BT 0 h5fc_ext_none.h5 /DSET_NDATA_BT2) +# + ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_FA 0 h5fc_ext_none.h5 /DSET_FA) +# + ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_ND_FA 0 h5fc_ext_none.h5 /GROUP/DSET_NDATA_FA) +# + ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_NONE 0 h5fc_ext_none.h5 /DSET_NONE) +# + ADD_H5_TEST_CHECK_IDX (h5fc_ext_none_ND_NONE 0 h5fc_ext_none.h5 /GROUP/DSET_NDATA_NONE) +# +# +# +# No output from tests: just check exit code +# h5format_convert -d /DSET_NDATA_BT2 old_h5fc_ext_none.h5 (v1-btree dataset) +# h5format_convert -d /DSET_CONTIGUOUS h5fc_non_v3.h5 (non-chunked dataset) + ADD_H5_TEST (old_h5fc_ext_none 0 old_h5fc_ext_none.h5 -d /DSET_NDATA_BT2) + ADD_H5_TEST (old_h5fc_ext_none_CONT 0 h5fc_non_v3.h5 -d /DSET_CONTIGUOUS) +# +# +# +# No output from tests: just check exit code +# h5format_convert -d /GROUP/DSET_BT2 -n h5fc_non_v3.h5 (noop, one dataset) +# h5format_convert -n h5fc_non_v3.h5 (noop, all datasets) + ADD_H5_TEST (h5fc_non_v3_BT 0 h5fc_non_v3.h5 -d /GROUP/DSET_BT2 -n) + ADD_H5_TEST (h5fc_non_v3-n 0 h5fc_non_v3.h5 -n) +# +# +# +# No output from tests: just check exit code +# h5format_convert h5fc_non_v3.h5 +# 1) convert all datasets +# 2) verify indexing types + ADD_H5_TEST (h5fc_non_v3 0 h5fc_non_v3.h5) + ADD_H5_CHECK_IDX (h5fc_non_v3 h5fc_non_v3-NEA /DSET_NDATA_EA) + ADD_H5_CHECK_IDX (h5fc_non_v3 h5fc_non_v3-NBT /DSET_NDATA_BT2) + ADD_H5_CHECK_IDX (h5fc_non_v3 h5fc_non_v3-BT /GROUP/DSET_BT2) + ADD_H5_CHECK_IDX (h5fc_non_v3 h5fc_non_v3-EA /GROUP/DSET_EA) +# +# +# +# No output from test: just check exit code +# h5format_convert h5fc_edge_v3.h5 +# 1) convert the chunked dataset (filter, no-filter-edge-chunk) +# 2) verify the indexing type + ADD_H5_TEST_CHECK_IDX (h5fc_edge_v3 0 h5fc_edge_v3.h5 /DSET_EDGE) +# +# + +# The following test files have messages in the superblock extension. +# Verify h5dump output for correctness after conversion + ADD_H5_H5DUMP_CHECK (h5fc_ext1_i) + ADD_H5_H5DUMP_CHECK (h5fc_ext1_s) + ADD_H5_H5DUMP_CHECK (h5fc_ext1_f) +# + ADD_H5_H5DUMP_CHECK (h5fc_ext2_if) + ADD_H5_H5DUMP_CHECK (h5fc_ext2_is) + ADD_H5_H5DUMP_CHECK (h5fc_ext2_sf) +# + ADD_H5_H5DUMP_CHECK (h5fc_ext3_isf) +# +# +# + ADD_H5_H5DUMP_CHECK (old_h5fc_ext1_i) + ADD_H5_H5DUMP_CHECK (old_h5fc_ext1_s) + ADD_H5_H5DUMP_CHECK (old_h5fc_ext1_f) +# + ADD_H5_H5DUMP_CHECK (old_h5fc_ext2_if) + ADD_H5_H5DUMP_CHECK (old_h5fc_ext2_is) + ADD_H5_H5DUMP_CHECK (old_h5fc_ext2_sf) +# + ADD_H5_H5DUMP_CHECK (old_h5fc_ext3_isf) diff --git a/tools/h5format_convert/h5format_convert.c b/tools/h5format_convert/h5format_convert.c index 105ac5d..2d7b721 100644 --- a/tools/h5format_convert/h5format_convert.c +++ b/tools/h5format_convert/h5format_convert.c @@ -20,7 +20,7 @@ /* * We include the private header file so we can get to the uniform - * programming environment it declares. + * programming environment it declares. * HDF5 API functions (except for H5G_basename()) */ #include "H5private.h" @@ -44,13 +44,13 @@ static int verbose_g = 0; static const char *s_opts = "hVvd:n"; static struct long_options l_opts[] = { { "help", no_arg, 'h' }, - { "hel", no_arg, 'h'}, - { "he", no_arg, 'h'}, + { "hel", no_arg, 'h'}, + { "he", no_arg, 'h'}, { "version", no_arg, 'V' }, - { "version", no_arg, 'V' }, - { "versio", no_arg, 'V' }, - { "versi", no_arg, 'V' }, - { "vers", no_arg, 'V' }, + { "version", no_arg, 'V' }, + { "versio", no_arg, 'V' }, + { "versi", no_arg, 'V' }, + { "vers", no_arg, 'V' }, { "verbose", no_arg, 'v' }, { "verbos", no_arg, 'v' }, { "verbo", no_arg, 'v' }, @@ -75,33 +75,33 @@ static struct long_options l_opts[] = { * *------------------------------------------------------------------------- */ -static void usage(const char *prog) +static void usage(const char *prog) { - printf("usage: %s [OPTIONS] file_name\n", prog); - printf(" OPTIONS\n"); - printf(" -h, --help Print a usage message and exit\n"); - printf(" -V, --version Print version number and exit\n"); - printf(" -v, --verbose Turn on verbose mode\n"); - printf(" -d dname, --dname=dataset_name Pathname for the dataset\n"); - printf(" -n, --noop Perform all the steps except the actual conversion\n"); - printf("\n"); - printf("Examples of use:\n"); - printf("\n"); - printf("h5format_convert -d /group/dataset file_name\n"); - printf(" Convert the dataset in the HDF5 file :\n"); - printf(" a. chunked dataset: convert the chunk indexing type to version 1 B-tree\n"); - printf(" b. compact/contiguous dataset: downgrade the layout version to 3\n"); - printf(" c. virtual dataset: no action\n"); - printf("\n"); - printf("h5format_convert file_name\n"); - printf(" Convert all datasets in the HDF5 file :\n"); - printf(" a. chunked dataset: convert the chunk indexing type to version 1 B-tree\n"); - printf(" b. compact/contiguous dataset: downgrade the layout version to 3\n"); - printf(" c. virtual dataset: no action\n"); - printf("\n"); - printf("h5format_convert -n -d /group/dataset file_name\n"); - printf(" Go through all the steps except the actual conversion when \n"); - printf(" converting the dataset in the HDF5 file .\n"); + printf("usage: %s [OPTIONS] file_name\n", prog); + printf(" OPTIONS\n"); + printf(" -h, --help Print a usage message and exit\n"); + printf(" -V, --version Print version number and exit\n"); + printf(" -v, --verbose Turn on verbose mode\n"); + printf(" -d dname, --dname=dataset_name Pathname for the dataset\n"); + printf(" -n, --noop Perform all the steps except the actual conversion\n"); + printf("\n"); + printf("Examples of use:\n"); + printf("\n"); + printf("h5format_convert -d /group/dataset file_name\n"); + printf(" Convert the dataset in the HDF5 file :\n"); + printf(" a. chunked dataset: convert the chunk indexing type to version 1 B-tree\n"); + printf(" b. compact/contiguous dataset: downgrade the layout version to 3\n"); + printf(" c. virtual dataset: no action\n"); + printf("\n"); + printf("h5format_convert file_name\n"); + printf(" Convert all datasets in the HDF5 file :\n"); + printf(" a. chunked dataset: convert the chunk indexing type to version 1 B-tree\n"); + printf(" b. compact/contiguous dataset: downgrade the layout version to 3\n"); + printf(" c. virtual dataset: no action\n"); + printf("\n"); + printf("h5format_convert -n -d /group/dataset file_name\n"); + printf(" Go through all the steps except the actual conversion when \n"); + printf(" converting the dataset in the HDF5 file .\n"); } /* usage() */ /*------------------------------------------------------------------------- @@ -110,68 +110,68 @@ static void usage(const char *prog) * Purpose: parse command line input * * Return: Success: 0 - * Failure: 1 + * Failure: 1 * *------------------------------------------------------------------------- */ static int -parse_command_line(int argc, const char **argv) +parse_command_line(int argc, const char **argv) { int opt; /* no arguments */ if (argc == 1) { usage(h5tools_getprogname()); - h5tools_setstatus(EXIT_FAILURE); + h5tools_setstatus(EXIT_FAILURE); goto error; } /* parse command line options */ while ((opt = get_option(argc, argv, s_opts, l_opts)) != EOF) { - switch((char) opt) { - case 'h': - usage(h5tools_getprogname()); - h5tools_setstatus(EXIT_SUCCESS); - goto error; - - case 'V': - print_version(h5tools_getprogname()); - h5tools_setstatus(EXIT_SUCCESS); - goto error; - - case 'v': - verbose_g = TRUE; - break; - - case 'd': /* -d dname */ - if(opt_arg != NULL && *opt_arg) - /* if(opt_arg != NULL)*/ - dname_g = HDstrdup(opt_arg); - if(dname_g == NULL) { - h5tools_setstatus(EXIT_FAILURE); - error_msg("No dataset name\n", opt_arg); - usage(h5tools_getprogname()); - goto error; - } - dset_g = TRUE; - break; - - case 'n': /* -n */ - noop_g = TRUE; - break; - - default: - h5tools_setstatus(EXIT_FAILURE); - usage(h5tools_getprogname()); - goto error; - break; - } /* switch */ + switch((char) opt) { + case 'h': + usage(h5tools_getprogname()); + h5tools_setstatus(EXIT_SUCCESS); + goto error; + + case 'V': + print_version(h5tools_getprogname()); + h5tools_setstatus(EXIT_SUCCESS); + goto error; + + case 'v': + verbose_g = TRUE; + break; + + case 'd': /* -d dname */ + if(opt_arg != NULL && *opt_arg) + /* if(opt_arg != NULL)*/ + dname_g = HDstrdup(opt_arg); + if(dname_g == NULL) { + h5tools_setstatus(EXIT_FAILURE); + error_msg("No dataset name\n", opt_arg); + usage(h5tools_getprogname()); + goto error; + } + dset_g = TRUE; + break; + + case 'n': /* -n */ + noop_g = TRUE; + break; + + default: + h5tools_setstatus(EXIT_FAILURE); + usage(h5tools_getprogname()); + goto error; + break; + } /* switch */ } /* while */ if (argc <= opt_ind) { error_msg("missing file name\n"); usage(h5tools_getprogname()); - h5tools_setstatus(EXIT_FAILURE); + h5tools_setstatus(EXIT_FAILURE); goto error; } @@ -205,17 +205,17 @@ leave(int ret) * Function: convert() * * Purpose: To downgrade a dataset's indexing type or layout version: - * For chunked: - * Downgrade the chunk indexing type to version 1 B-tree - * If type is already version 1 B-tree, no further action - * For compact/contiguous: - * Downgrade the layout version from 4 to 3 - * If version is already <= 3, no further action - * For virtual: - * No further action + * For chunked: + * Downgrade the chunk indexing type to version 1 B-tree + * If type is already version 1 B-tree, no further action + * For compact/contiguous: + * Downgrade the layout version from 4 to 3 + * If version is already <= 3, no further action + * For virtual: + * No further action * * Return: Success: 0 - * Failure: 1 + * Failure: 1 * *------------------------------------------------------------------------- */ @@ -229,114 +229,114 @@ convert(hid_t fid, const char *dname) /* Open the dataset */ if((did = H5Dopen2(fid, dname, H5P_DEFAULT)) < 0) { - error_msg("unable to open dataset \"%s\"\n", dname); - h5tools_setstatus(EXIT_FAILURE); - goto error; + error_msg("unable to open dataset \"%s\"\n", dname); + h5tools_setstatus(EXIT_FAILURE); + goto error; } else if(verbose_g) - printf("Open the dataset\n"); + printf("Open the dataset\n"); /* Get the dataset's creation property list */ if((dcpl = H5Dget_create_plist(did)) < 0) { - error_msg("unable to get the dataset creation property list\n"); - h5tools_setstatus(EXIT_FAILURE); - goto error; + error_msg("unable to get the dataset creation property list\n"); + h5tools_setstatus(EXIT_FAILURE); + goto error; } /* Get the dataset's layout */ if((layout_type = H5Pget_layout(dcpl)) < 0) { - error_msg("unable to get the dataset layout type\n"); - h5tools_setstatus(EXIT_FAILURE); - goto error; + error_msg("unable to get the dataset layout type\n"); + h5tools_setstatus(EXIT_FAILURE); + goto error; } else if(verbose_g) - printf("Retrieve the dataset's layout\n"); + printf("Retrieve the dataset's layout\n"); switch(layout_type) { - case H5D_CHUNKED: - if(verbose_g) - printf("Dataset is a chunked dataset\n"); - - /* Get the dataset's chunk indexing type */ - if(H5Dget_chunk_index_type(did, &idx_type) < 0) { - error_msg("unable to get the chunk indexing type for \"%s\"\n", dname); - h5tools_setstatus(EXIT_FAILURE); - goto error; - } else if(verbose_g) - printf("Retrieve the dataset's chunk indexing type\n"); - - if(idx_type == H5D_CHUNK_IDX_BTREE) { - if(verbose_g) - printf("Dataset's chunk indexing type is already version 1 B-tree: no further action\n"); - h5tools_setstatus(EXIT_SUCCESS); - goto done; - } else if (verbose_g) - printf("Dataset's chunk indexing type is not version 1 B-tree\n"); - break; - - case H5D_CONTIGUOUS: - if(verbose_g) - printf("Dataset is a contiguous dataset: downgrade layout version as needed\n"); - break; + case H5D_CHUNKED: + if(verbose_g) + printf("Dataset is a chunked dataset\n"); + + /* Get the dataset's chunk indexing type */ + if(H5Dget_chunk_index_type(did, &idx_type) < 0) { + error_msg("unable to get the chunk indexing type for \"%s\"\n", dname); + h5tools_setstatus(EXIT_FAILURE); + goto error; + } else if(verbose_g) + printf("Retrieve the dataset's chunk indexing type\n"); + + if(idx_type == H5D_CHUNK_IDX_BTREE) { + if(verbose_g) + printf("Dataset's chunk indexing type is already version 1 B-tree: no further action\n"); + h5tools_setstatus(EXIT_SUCCESS); + goto done; + } else if (verbose_g) + printf("Dataset's chunk indexing type is not version 1 B-tree\n"); + break; + + case H5D_CONTIGUOUS: + if(verbose_g) + printf("Dataset is a contiguous dataset: downgrade layout version as needed\n"); + break; case H5D_COMPACT: - if(verbose_g) - printf("Dataset is a compact dataset: downgrade layout version as needed\n"); - break; + if(verbose_g) + printf("Dataset is a compact dataset: downgrade layout version as needed\n"); + break; case H5D_VIRTUAL: - if(verbose_g) - printf("No further action for virtual dataset\n"); - goto done; + if(verbose_g) + printf("No further action for virtual dataset\n"); + goto done; - default: - error_msg("unknown layout type for \"%s\"\n", dname); - h5tools_setstatus(EXIT_FAILURE); - goto error; + default: + error_msg("unknown layout type for \"%s\"\n", dname); + h5tools_setstatus(EXIT_FAILURE); + goto error; } /* end switch */ /* No further action if it is a noop */ if(noop_g) { - if(verbose_g) - printf("Not converting the dataset\n"); - h5tools_setstatus(EXIT_SUCCESS); - goto done; + if(verbose_g) + printf("Not converting the dataset\n"); + h5tools_setstatus(EXIT_SUCCESS); + goto done; } if(verbose_g) - printf("Converting the dataset...\n"); + printf("Converting the dataset...\n"); /* Downgrade the dataset */ if(H5Dformat_convert(did) < 0) { - error_msg("unable to downgrade dataset for \"%s\"\n", dname); - h5tools_setstatus(EXIT_FAILURE); - goto error; + error_msg("unable to downgrade dataset for \"%s\"\n", dname); + h5tools_setstatus(EXIT_FAILURE); + goto error; } else if(verbose_g) - printf("Done\n"); + printf("Done\n"); done: /* Close the dataset */ if(H5Dclose(did) < 0) { error_msg("unable to close dataset \"%s\"\n", dname); h5tools_setstatus(EXIT_FAILURE); - goto error; + goto error; } else if(verbose_g) - printf("Close the dataset\n"); - + printf("Close the dataset\n"); + /* Close the dataset creation property list */ if(H5Pclose(dcpl) < 0) { error_msg("unable to close dataset creation property list\n"); h5tools_setstatus(EXIT_FAILURE); - goto error; + goto error; } else if(verbose_g) - printf("Close the dataset creation property list\n"); + printf("Close the dataset creation property list\n"); return(0); error: if(verbose_g) - printf("Error encountered\n"); + printf("Error encountered\n"); H5E_BEGIN_TRY { H5Pclose(dcpl); @@ -351,10 +351,10 @@ error: * Function: convert_dsets_cb() * * Purpose: The callback routine from the traversal to convert the - * chunk indexing type of the dataset object. + * chunk indexing type of the dataset object. * * Return: Success: 0 - * Failure: 1 + * Failure: 1 *------------------------------------------------------------------------- */ static int @@ -366,11 +366,11 @@ convert_dsets_cb(const char *path, const H5O_info_t *oi, const char *already_vis if(NULL == already_visited) { if(oi->type == H5O_TYPE_DATASET) { - if(verbose_g) - printf("Going to process dataset:%s...\n", path); - if(convert(fid, path) < 0) - goto error; - } + if(verbose_g) + printf("Going to process dataset:%s...\n", path); + if(convert(fid, path) < 0) + goto error; + } } /* end if */ @@ -386,10 +386,10 @@ error: * Function: main * * Purpose: To convert the chunk indexing type of a dataset in a file to - * version 1 B-tree. + * version 1 B-tree. * * Return: Success: 0 - * Failure: 1 + * Failure: 1 * *------------------------------------------------------------------------- */ @@ -412,31 +412,31 @@ main(int argc, const char *argv[]) /* Parse command line options */ if(parse_command_line(argc, argv) < 0) - goto done; + goto done; else if(verbose_g) - printf("Process command line options\n"); + printf("Process command line options\n"); if(noop_g && verbose_g) - printf("It is noop...\n"); + printf("It is noop...\n"); /* Open the HDF5 file */ if((fid = h5tools_fopen(fname_g, H5F_ACC_RDWR, H5P_DEFAULT, NULL, NULL, 0)) < 0) { - error_msg("unable to open file \"%s\"\n", fname_g); - h5tools_setstatus(EXIT_FAILURE); - goto done; + error_msg("unable to open file \"%s\"\n", fname_g); + h5tools_setstatus(EXIT_FAILURE); + goto done; } else if(verbose_g) - printf("Open the file %s\n", fname_g); + printf("Open the file %s\n", fname_g); if(dset_g) { /* Convert a specified dataset in the file */ - if(verbose_g) - printf("Going to process dataset: %s...\n", dname_g); - if(convert(fid, dname_g) < 0) - goto done; + if(verbose_g) + printf("Going to process dataset: %s...\n", dname_g); + if(convert(fid, dname_g) < 0) + goto done; } else { /* Convert all datasets in the file */ - if(verbose_g) - printf("Processing all datasets in the file...\n"); - if(h5trav_visit(fid, "/", TRUE, TRUE, convert_dsets_cb, NULL, &fid) < 0) - goto done; + if(verbose_g) + printf("Processing all datasets in the file...\n"); + if(h5trav_visit(fid, "/", TRUE, TRUE, convert_dsets_cb, NULL, &fid) < 0) + goto done; } if(verbose_g) { @@ -458,18 +458,18 @@ main(int argc, const char *argv[]) done: /* Close the file */ if(fid >= 0) { - if(H5Fclose(fid) < 0) { - error_msg("unable to close file \"%s\"\n", fname_g); - h5tools_setstatus(EXIT_FAILURE); - } else if(verbose_g) - printf("Close the file\n"); - } + if(H5Fclose(fid) < 0) { + error_msg("unable to close file \"%s\"\n", fname_g); + h5tools_setstatus(EXIT_FAILURE); + } else if(verbose_g) + printf("Close the file\n"); + } if(fname_g) - HDfree(fname_g); + HDfree(fname_g); if(dname_g) - HDfree(dname_g); - + HDfree(dname_g); + H5Eset_auto2(H5E_DEFAULT, func, edata); leave(h5tools_getstatus()); diff --git a/tools/h5format_convert/testfiles/h5fc_d_file.ddl b/tools/h5format_convert/testfiles/h5fc_d_file.ddl index ad7a2f4..38fc432 100644 --- a/tools/h5format_convert/testfiles/h5fc_d_file.ddl +++ b/tools/h5format_convert/testfiles/h5fc_d_file.ddl @@ -1,10 +1,10 @@ usage: h5format_convert [OPTIONS] file_name OPTIONS - -h, --help Print a usage message and exit - -V, --version Print version number and exit - -v, --verbose Turn on verbose mode - -d dname, --dname=dataset_name Pathname for the dataset - -n, --noop Perform all the steps except the actual conversion + -h, --help Print a usage message and exit + -V, --version Print version number and exit + -v, --verbose Turn on verbose mode + -d dname, --dname=dataset_name Pathname for the dataset + -n, --noop Perform all the steps except the actual conversion Examples of use: diff --git a/tools/h5format_convert/testfiles/h5fc_dname.ddl b/tools/h5format_convert/testfiles/h5fc_dname.ddl index 0de42cb..48564b7 100644 --- a/tools/h5format_convert/testfiles/h5fc_dname.ddl +++ b/tools/h5format_convert/testfiles/h5fc_dname.ddl @@ -1,10 +1,10 @@ usage: h5format_convert [OPTIONS] file_name OPTIONS - -h, --help Print a usage message and exit - -V, --version Print version number and exit - -v, --verbose Turn on verbose mode - -d dname, --dname=dataset_name Pathname for the dataset - -n, --noop Perform all the steps except the actual conversion + -h, --help Print a usage message and exit + -V, --version Print version number and exit + -v, --verbose Turn on verbose mode + -d dname, --dname=dataset_name Pathname for the dataset + -n, --noop Perform all the steps except the actual conversion Examples of use: diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl b/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl index fb5192d..dae9284 100644 --- a/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl +++ b/tools/h5format_convert/testfiles/h5fc_ext1_f.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl b/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl index 2fff4ac..8ec4656 100644 --- a/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl +++ b/tools/h5format_convert/testfiles/h5fc_ext1_i.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl b/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl index fb5192d..dae9284 100644 --- a/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl +++ b/tools/h5format_convert/testfiles/h5fc_ext1_s.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl b/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl index 2fff4ac..8ec4656 100644 --- a/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl +++ b/tools/h5format_convert/testfiles/h5fc_ext2_if.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl b/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl index 2fff4ac..8ec4656 100644 --- a/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl +++ b/tools/h5format_convert/testfiles/h5fc_ext2_is.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl b/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl index fb5192d..dae9284 100644 --- a/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl +++ b/tools/h5format_convert/testfiles/h5fc_ext2_sf.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl b/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl index 2fff4ac..8ec4656 100644 --- a/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl +++ b/tools/h5format_convert/testfiles/h5fc_ext3_isf.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/h5fc_help.ddl b/tools/h5format_convert/testfiles/h5fc_help.ddl index aef8c63..bc0229c 100644 --- a/tools/h5format_convert/testfiles/h5fc_help.ddl +++ b/tools/h5format_convert/testfiles/h5fc_help.ddl @@ -1,10 +1,10 @@ usage: h5format_convert [OPTIONS] file_name OPTIONS - -h, --help Print a usage message and exit - -V, --version Print version number and exit - -v, --verbose Turn on verbose mode - -d dname, --dname=dataset_name Pathname for the dataset - -n, --noop Perform all the steps except the actual conversion + -h, --help Print a usage message and exit + -V, --version Print version number and exit + -v, --verbose Turn on verbose mode + -d dname, --dname=dataset_name Pathname for the dataset + -n, --noop Perform all the steps except the actual conversion Examples of use: diff --git a/tools/h5format_convert/testfiles/h5fc_nooption.ddl b/tools/h5format_convert/testfiles/h5fc_nooption.ddl index aef8c63..bc0229c 100644 --- a/tools/h5format_convert/testfiles/h5fc_nooption.ddl +++ b/tools/h5format_convert/testfiles/h5fc_nooption.ddl @@ -1,10 +1,10 @@ usage: h5format_convert [OPTIONS] file_name OPTIONS - -h, --help Print a usage message and exit - -V, --version Print version number and exit - -v, --verbose Turn on verbose mode - -d dname, --dname=dataset_name Pathname for the dataset - -n, --noop Perform all the steps except the actual conversion + -h, --help Print a usage message and exit + -V, --version Print version number and exit + -v, --verbose Turn on verbose mode + -d dname, --dname=dataset_name Pathname for the dataset + -n, --noop Perform all the steps except the actual conversion Examples of use: diff --git a/tools/h5format_convert/testfiles/h5fc_v_all.ddl b/tools/h5format_convert/testfiles/h5fc_v_all.ddl index 5e7365d..a1af831 100644 --- a/tools/h5format_convert/testfiles/h5fc_v_all.ddl +++ b/tools/h5format_convert/testfiles/h5fc_v_all.ddl @@ -1,5 +1,5 @@ Process command line options -Open the file tmp.h5 +Open the file outtmp.h5 Processing all datasets in the file... Going to process dataset:/DSET_CONTIGUOUS... Open the dataset diff --git a/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl b/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl index c501eb0..31de12a 100644 --- a/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl +++ b/tools/h5format_convert/testfiles/h5fc_v_bt1.ddl @@ -1,5 +1,5 @@ Process command line options -Open the file tmp.h5 +Open the file outtmp.h5 Going to process dataset: /GROUP/DSET_BT2... Open the dataset Retrieve the dataset's layout diff --git a/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl b/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl index ff5da4a..fcdadd8 100644 --- a/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl +++ b/tools/h5format_convert/testfiles/h5fc_v_n_1d.ddl @@ -1,6 +1,6 @@ Process command line options It is noop... -Open the file tmp.h5 +Open the file outtmp.h5 Going to process dataset: /DSET_EA... Open the dataset Retrieve the dataset's layout diff --git a/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl b/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl index d2ffbbf..074ce6f 100644 --- a/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl +++ b/tools/h5format_convert/testfiles/h5fc_v_n_all.ddl @@ -1,6 +1,6 @@ Process command line options It is noop... -Open the file tmp.h5 +Open the file outtmp.h5 Processing all datasets in the file... Going to process dataset:/DSET_CONTIGUOUS... Open the dataset diff --git a/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl b/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl index ba794a7..c75699a 100644 --- a/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl +++ b/tools/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl @@ -1,6 +1,6 @@ Process command line options It is noop... -Open the file tmp.h5 +Open the file outtmp.h5 Going to process dataset: /DSET_NDATA_BT2... Open the dataset Retrieve the dataset's layout diff --git a/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl b/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl index aba0740..5945389 100644 --- a/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl +++ b/tools/h5format_convert/testfiles/h5fc_v_non_chunked.ddl @@ -1,5 +1,5 @@ Process command line options -Open the file tmp.h5 +Open the file outtmp.h5 Going to process dataset: /DSET_CONTIGUOUS... Open the dataset Retrieve the dataset's layout diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl index fb5192d..dae9284 100644 --- a/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl +++ b/tools/h5format_convert/testfiles/old_h5fc_ext1_f.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl index c906082..d1768c8 100644 --- a/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl +++ b/tools/h5format_convert/testfiles/old_h5fc_ext1_i.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 1 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl index fb5192d..dae9284 100644 --- a/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl +++ b/tools/h5format_convert/testfiles/old_h5fc_ext1_s.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl index 2fff4ac..8ec4656 100644 --- a/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl +++ b/tools/h5format_convert/testfiles/old_h5fc_ext2_if.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl index 2fff4ac..8ec4656 100644 --- a/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl +++ b/tools/h5format_convert/testfiles/old_h5fc_ext2_is.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl index fb5192d..dae9284 100644 --- a/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl +++ b/tools/h5format_convert/testfiles/old_h5fc_ext2_sf.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl b/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl index 2fff4ac..8ec4656 100644 --- a/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl +++ b/tools/h5format_convert/testfiles/old_h5fc_ext3_isf.ddl @@ -1,4 +1,4 @@ -HDF5 "./testfiles/tmp.h5" { +HDF5 "./testfiles/dmptmp.h5" { SUPER_BLOCK { SUPERBLOCK_VERSION 2 FREELIST_VERSION 0 diff --git a/tools/h5format_convert/testh5fc.sh.in b/tools/h5format_convert/testh5fc.sh.in index f712434..f3eadd6 100644 --- a/tools/h5format_convert/testh5fc.sh.in +++ b/tools/h5format_convert/testh5fc.sh.in @@ -34,8 +34,8 @@ EXIT_FAILURE=1 FORMCONV=h5format_convert # The tool name FORMCONV_BIN=`pwd`/$FORMCONV # The path of the tool binary -CHK_IDX=h5fc_chk_idx # The program name -CHK_IDX_BIN=`pwd`/$CHK_IDX # The program to verify the chunk indexing type is v1 B-tree +CHK_IDX=h5fc_chk_idx # The program name +CHK_IDX_BIN=`pwd`/$CHK_IDX # The program to verify the chunk indexing type is v1 B-tree RM='rm -rf' CMP='cmp -s' @@ -69,7 +69,10 @@ TESTDIR=./testfiles test -d $TESTDIR || mkdir $TESTDIR # Copy the testfile to a temporary file for testing as h5format_convert is changing the file in place +TMPOUTFILE=outtmp.h5 TMPFILE=tmp.h5 +TMPCHKFILE=chktmp.h5 +TMPDMPFILE=dmptmp.h5 ###################################################################### # test files @@ -151,10 +154,10 @@ COPY_TESTFILES_TO_TESTDIR() INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'` INODE_DDIR=`$LS -i -d $TESTDIR | $AWK -F' ' '{print $1}'` if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then - $CP -f $tstfile $TESTDIR + $CP -f $tstfile $TESTDIR if [ $? -ne 0 ]; then echo "Error: FAILED to copy $tstfile ." - + # Comment out this to CREATE expected file exit $EXIT_FAILURE fi @@ -168,13 +171,13 @@ CLEAN_TESTFILES_AND_TESTDIR() # skip rm if srcdir is same as destdir # this occurs when build/test performed in source dir and # make cp fail - SDIR=`$DIRNAME $tstfile` + SDIR=`$DIRNAME $SRC_H5FORMCONV_TESTFILES/h5fc_help.ddl` INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'` INODE_DDIR=`$LS -i -d $TESTDIR | $AWK -F' ' '{print $1}'` if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then $RM $TESTDIR else - $RM $TESTDIR/$TMPFILE + $RM $TESTDIR/$TMPFILE fi } @@ -195,13 +198,13 @@ TESTING() { # non-zero value. # # $1: expected output -# $2: the test file name -# --fname might be empty or fname does not exist -# --fname is copied to a temporary file for testing +# $2: the test file name +# --fname might be empty or fname does not exist +# --fname is copied to a temporary file for testing # $3 to at most $6--options to the tool such as: -# -d dname or --dname=dname -# -v or --verbose -# -n or --noop +# -d dname or --dname=dname +# -v or --verbose +# -n or --noop TOOLTEST_OUT() { # Prepare expected and actual output expect="$TESTDIR/$1" @@ -211,18 +214,18 @@ TOOLTEST_OUT() { actual_err_sav=${actual_err}-sav # Prepare the test file - $RM $TESTDIR/$TMPFILE + $RM $TESTDIR/$TMPOUTFILE TFILE=$2 if [ ! -z "$2" ] && [ -e $TESTDIR/$2 ] ; then - $CP $TESTDIR/$2 $TESTDIR/$TMPFILE - TFILE=$TMPFILE + $CP $TESTDIR/$2 $TESTDIR/$TMPOUTFILE + TFILE=$TMPOUTFILE fi # Run test. TESTING $FORMCONV $3 $4 $5 $6 $2 ( - cd $TESTDIR - $RUNSERIAL $FORMCONV_BIN $3 $4 $5 $6 $TFILE + cd $TESTDIR + $RUNSERIAL $FORMCONV_BIN $3 $4 $5 $6 $TFILE ) >$actual 2>$actual_err cp $actual $actual_sav cp $actual_err $actual_err_sav @@ -233,19 +236,19 @@ TOOLTEST_OUT() { # Clean up output file if test -z "$HDF5_NOCLEANUP"; then - $RM $actual $actual_err - $RM $actual $actual_err $actual_sav $actual_err_sav + $RM $actual $actual_err + $RM $actual $actual_err $actual_sav $actual_err_sav fi } -# To check that the tool exits success, no output +# To check that the tool exits success, no output # Assume all short options -# $1 is the test file name -# --fname exists -# --fname is copied to a temporary file for testing +# $1 is the test file name +# --fname exists +# --fname is copied to a temporary file for testing # $2 to at most $4--options to the tool such as: -# -d dname -# -n +# -d dname +# -n TOOLTEST() { TESTING $FORMCONV $2 $3 $4 $1 $RM $TESTDIR/$TMPFILE @@ -253,11 +256,41 @@ TOOLTEST() { $RUNSERIAL $FORMCONV_BIN $2 $3 $4 $TESTDIR/$TMPFILE exitcode=$? if [ $exitcode -ne 0 ]; then - echo "*FAILED*" - echo " The tool exits failure" - nerrors="`expr $nerrors + 1`" + echo "*FAILED*" + echo " The tool exits failure" + nerrors="`expr $nerrors + 1`" + else + echo " PASSED" + fi +} +# Like TOOLTEST but tmpfile is for IDX_CHECK +TOOLTEST_CHK() { + TESTING $FORMCONV $2 $3 $4 $1 + $RM $TESTDIR/$TMPCHKFILE + $CP $TESTDIR/$1 $TESTDIR/$TMPCHKFILE + $RUNSERIAL $FORMCONV_BIN $2 $3 $4 $TESTDIR/$TMPCHKFILE + exitcode=$? + if [ $exitcode -ne 0 ]; then + echo "*FAILED*" + echo " The tool exits failure" + nerrors="`expr $nerrors + 1`" + else + echo " PASSED" + fi +} +# Like TOOLTEST but tmpfile is for H5DUMP_CHECK +TOOLTEST_DMP() { + TESTING $FORMCONV $2 $3 $4 $1 + $RM $TESTDIR/$TMPDMPFILE + $CP $TESTDIR/$1 $TESTDIR/$TMPDMPFILE + $RUNSERIAL $FORMCONV_BIN $2 $3 $4 $TESTDIR/$TMPDMPFILE + exitcode=$? + if [ $exitcode -ne 0 ]; then + echo "*FAILED*" + echo " The tool exits failure" + nerrors="`expr $nerrors + 1`" else - echo " PASSED" + echo " PASSED" fi } @@ -270,14 +303,14 @@ CHECKING() { # $1 dataset name IDX_CHECK() { CHECKING $1 - $RUNSERIAL $CHK_IDX_BIN $TESTDIR/$TMPFILE $1 + $RUNSERIAL $CHK_IDX_BIN $TESTDIR/$TMPCHKFILE $1 ret=$? if [ $ret -eq 0 ]; then - echo " PASSED" + echo " PASSED" else - echo "*FAILED*" - echo " The chunk indexing type is not correct" - nerrors="`expr $nerrors + 1`" + echo "*FAILED*" + echo " The chunk indexing type is not correct" + nerrors="`expr $nerrors + 1`" fi } @@ -302,7 +335,7 @@ H5DUMP_CHECK() { expect="$TESTDIR/$2" actual="$TESTDIR/`basename $2 .ddl`.out" actual_err="$TESTDIR/`basename $2 .ddl`.err" - $RUNSERIAL $H5DUMP_BIN -BH $TESTDIR/$TMPFILE > $actual 2>$actual_err + $RUNSERIAL $H5DUMP_BIN -BH $TESTDIR/$TMPDMPFILE > $actual 2>$actual_err cat $actual_err >> $actual # Compare output @@ -310,7 +343,7 @@ H5DUMP_CHECK() { # Clean up output file if test -z "$HDF5_NOCLEANUP"; then - $RM $actual $actual_err + $RM $actual $actual_err fi } @@ -319,12 +352,12 @@ SKIP() { TESTING $STAT $@ echo " -SKIP-" } - + ############################################################################## ############################################################################## -### T H E T E S T S ### +### T H E T E S T S ### ############################################################################## ############################################################################## # prepare for test @@ -380,28 +413,28 @@ TOOLTEST_OUT h5fc_v_n_all.ddl h5fc_non_v3.h5 -v -n # h5format_convert -d /GROUP/DSET_FA h5fc_ext_none.h5 # h5format_convert -d /DSET_NONE h5fc_ext_none.h5 # h5format_convert -d /GROUP/DSET_NDATA_NONE h5fc_ext_none.h5 -TOOLTEST h5fc_ext_none.h5 -d /DSET_EA +TOOLTEST_CHK h5fc_ext_none.h5 -d /DSET_EA IDX_CHECK /DSET_EA # -TOOLTEST h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_EA +TOOLTEST_CHK h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_EA IDX_CHECK /GROUP/DSET_NDATA_EA # -TOOLTEST h5fc_ext_none.h5 -d /GROUP/DSET_BT2 +TOOLTEST_CHK h5fc_ext_none.h5 -d /GROUP/DSET_BT2 IDX_CHECK /GROUP/DSET_BT2 # -TOOLTEST h5fc_ext_none.h5 -d /DSET_NDATA_BT2 +TOOLTEST_CHK h5fc_ext_none.h5 -d /DSET_NDATA_BT2 IDX_CHECK /DSET_NDATA_BT2 # -TOOLTEST h5fc_ext_none.h5 -d /DSET_FA +TOOLTEST_CHK h5fc_ext_none.h5 -d /DSET_FA IDX_CHECK /DSET_FA # -TOOLTEST h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_FA +TOOLTEST_CHK h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_FA IDX_CHECK /GROUP/DSET_NDATA_FA # -TOOLTEST h5fc_ext_none.h5 -d /DSET_NONE +TOOLTEST_CHK h5fc_ext_none.h5 -d /DSET_NONE IDX_CHECK /DSET_NONE # -TOOLTEST h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_NONE +TOOLTEST_CHK h5fc_ext_none.h5 -d /GROUP/DSET_NDATA_NONE IDX_CHECK /GROUP/DSET_NDATA_NONE # # @@ -424,9 +457,9 @@ TOOLTEST h5fc_non_v3.h5 -n # # No output from tests: just check exit code # h5format_convert h5fc_non_v3.h5 -# 1) convert all datasets +# 1) convert all datasets # 2) verify indexing types -TOOLTEST h5fc_non_v3.h5 +TOOLTEST_CHK h5fc_non_v3.h5 IDX_CHECK /DSET_NDATA_EA IDX_CHECK /DSET_NDATA_BT2 IDX_CHECK /GROUP/DSET_BT2 @@ -438,47 +471,47 @@ IDX_CHECK /GROUP/DSET_EA # h5format_convert h5fc_edge_v3.h5 # 1) convert the chunked dataset (filter, no-filter-edge-chunk) # 2) verify the indexing type -TOOLTEST h5fc_edge_v3.h5 +TOOLTEST_CHK h5fc_edge_v3.h5 IDX_CHECK /DSET_EDGE # # # The following test files have messages in the superblock extension. # Verify h5dump output for correctness after conversion -TOOLTEST h5fc_ext1_i.h5 +TOOLTEST_DMP h5fc_ext1_i.h5 H5DUMP_CHECK h5fc_ext1_i.h5 h5fc_ext1_i.ddl -TOOLTEST h5fc_ext1_s.h5 +TOOLTEST_DMP h5fc_ext1_s.h5 H5DUMP_CHECK h5fc_ext1_s.h5 h5fc_ext1_s.ddl -TOOLTEST h5fc_ext1_f.h5 +TOOLTEST_DMP h5fc_ext1_f.h5 H5DUMP_CHECK h5fc_ext1_f.h5 h5fc_ext1_f.ddl # -TOOLTEST h5fc_ext2_if.h5 +TOOLTEST_DMP h5fc_ext2_if.h5 H5DUMP_CHECK h5fc_ext2_if.h5 h5fc_ext2_if.ddl -TOOLTEST h5fc_ext2_is.h5 +TOOLTEST_DMP h5fc_ext2_is.h5 H5DUMP_CHECK h5fc_ext2_is.h5 h5fc_ext2_is.ddl -TOOLTEST h5fc_ext2_sf.h5 +TOOLTEST_DMP h5fc_ext2_sf.h5 H5DUMP_CHECK h5fc_ext2_sf.h5 h5fc_ext2_sf.ddl # -TOOLTEST h5fc_ext3_isf.h5 +TOOLTEST_DMP h5fc_ext3_isf.h5 H5DUMP_CHECK h5fc_ext3_isf.h5 h5fc_ext3_isf.ddl # # # -TOOLTEST old_h5fc_ext1_i.h5 +TOOLTEST_DMP old_h5fc_ext1_i.h5 H5DUMP_CHECK old_h5fc_ext1_i.h5 old_h5fc_ext1_i.ddl -TOOLTEST old_h5fc_ext1_s.h5 +TOOLTEST_DMP old_h5fc_ext1_s.h5 H5DUMP_CHECK old_h5fc_ext1_s.h5 old_h5fc_ext1_s.ddl -TOOLTEST old_h5fc_ext1_f.h5 +TOOLTEST_DMP old_h5fc_ext1_f.h5 H5DUMP_CHECK old_h5fc_ext1_f.h5 old_h5fc_ext1_f.ddl # -TOOLTEST old_h5fc_ext2_if.h5 +TOOLTEST_DMP old_h5fc_ext2_if.h5 H5DUMP_CHECK old_h5fc_ext2_if.h5 old_h5fc_ext2_if.ddl -TOOLTEST old_h5fc_ext2_is.h5 +TOOLTEST_DMP old_h5fc_ext2_is.h5 H5DUMP_CHECK old_h5fc_ext2_is.h5 old_h5fc_ext2_is.ddl -TOOLTEST old_h5fc_ext2_sf.h5 +TOOLTEST_DMP old_h5fc_ext2_sf.h5 H5DUMP_CHECK old_h5fc_ext2_sf.h5 old_h5fc_ext2_sf.ddl # -TOOLTEST old_h5fc_ext3_isf.h5 +TOOLTEST_DMP old_h5fc_ext3_isf.h5 H5DUMP_CHECK old_h5fc_ext3_isf.h5 old_h5fc_ext3_isf.ddl # # Clean up temporary files/directories diff --git a/tools/h5repack/CMakeTests.cmake b/tools/h5repack/CMakeTests.cmake index 1f4887f..4ec9ff2 100644 --- a/tools/h5repack/CMakeTests.cmake +++ b/tools/h5repack/CMakeTests.cmake @@ -117,15 +117,10 @@ ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/plugin_test.h5repack_layout.h5.tst ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/h5repack_layout.UD.h5-plugin_none.ddl ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/plugin_none.h5repack_layout.UD.h5.tst - ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/1_vds.h5-vds_dset_compa-v.ddl - ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/1_vds.h5-vds_dset_conti-v.ddl - ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/2_vds.h5-vds_null_compa-v.ddl - ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/2_vds.h5-vds_null_conti-v.ddl - ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_compa_compa-v.ddl - ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_compa_conti-v.ddl + ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl + ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl + ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_compa-v.ddl - ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_conti_compa-v.ddl - ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_conti_conti-v.ddl ${HDF5_TOOLS_H5REPACK_SOURCE_DIR}/testfiles/4_vds.h5-vds_conti-v.ddl ) @@ -361,22 +356,22 @@ if ("${testtype}" STREQUAL "SKIP") if (NOT HDF5_ENABLE_USING_MEMCHECKER) add_test ( - NAME H5REPACK_VERIFY_LAYOUT-${testname}-SKIPPED + NAME H5REPACK_VERIFY_LAYOUT_VDS-${testname}-SKIPPED COMMAND ${CMAKE_COMMAND} -E echo "SKIP -d ${testdset} -pH ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile}" ) endif (NOT HDF5_ENABLE_USING_MEMCHECKER) else ("${testtype}" STREQUAL "SKIP") if (NOT HDF5_ENABLE_USING_MEMCHECKER) add_test ( - NAME H5REPACK_VERIFY_LAYOUT-${testname} + NAME H5REPACK_VERIFY_LAYOUT_VDS-${testname} COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) - set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") + set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") if (NOT "${last_test}" STREQUAL "") - set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname} PROPERTIES DEPENDS ${last_test}) + set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname} PROPERTIES DEPENDS ${last_test}) endif (NOT "${last_test}" STREQUAL "") add_test ( - NAME H5REPACK_VERIFY_LAYOUT-${testname}_DMP + NAME H5REPACK_VERIFY_LAYOUT_VDS-${testname}_DMP COMMAND "${CMAKE_COMMAND}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-d;${testdset};-p;out-${testname}.${testfile}" @@ -386,8 +381,8 @@ -D "TEST_REFERENCE=${testfile}-${testname}-v.ddl" -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" ) - set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname}_DMP PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") - set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname}_DMP PROPERTIES DEPENDS H5REPACK_VERIFY_LAYOUT-${testname}) + set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname}_DMP PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") + set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname}_DMP PROPERTIES DEPENDS H5REPACK_VERIFY_LAYOUT_VDS-${testname}) endif (NOT HDF5_ENABLE_USING_MEMCHECKER) endif ("${testtype}" STREQUAL "SKIP") ENDMACRO (ADD_H5_VERIFY_VDS) @@ -1104,21 +1099,12 @@ # VDS tests -######################################################### -# layout options -######################################################### - ADD_H5_VERIFY_VDS (vds_dset_conti "TEST" 0 ${FILEV1} vds_dset CONTIGUOUS -l vds_dset:CONTI) - ADD_H5_VERIFY_VDS (vds_null_conti "TEST" 1 ${FILEV2} null CONTIGUOUS -l CONTI) - ADD_H5_VERIFY_VDS (vds_dset_compa "TEST" 0 ${FILEV1} vds_dset COMPACT -l vds_dset:COMPA) - ADD_H5_VERIFY_VDS (vds_null_compa "TEST" 1 ${FILEV2} null COMPACT -l COMPA) - ################################################################ # layout conversions ############################################################### - ADD_H5_VERIFY_VDS (vds_compa_conti "TEST" 0 ${FILEV4} vds_dset CONTIGUOUS -l vds_dset:CONTI) - ADD_H5_VERIFY_VDS (vds_compa_compa "TEST" 0 ${FILEV4} vds_dset COMPACT -l vds_dset:COMPA) - ADD_H5_VERIFY_VDS (vds_conti_compa "TEST" 0 ${FILEV4} vds_dset COMPACT -l vds_dset:COMPA) - ADD_H5_VERIFY_VDS (vds_conti_conti "TEST" 0 ${FILEV4} vds_dset CONTIGUOUS -l vds_dset:CONTI) + ADD_H5_VERIFY_VDS (vds_dset_chunk20x10x5 "TEST" 0 ${FILEV1} vds_dset CHUNKED -l vds_dset:CHUNK=20x10x5) + ADD_H5_VERIFY_VDS (vds_chunk2x5x8 "TEST" 0 ${FILEV3_1} vds_dset CHUNKED -l vds_dset:CHUNK=2x5x8) + ADD_H5_VERIFY_VDS (vds_chunk3x6x9 "TEST" 0 ${FILEV2} vds_dset CHUNKED -l vds_dset:CHUNK=3x6x9) ADD_H5_VERIFY_VDS (vds_compa "TEST" 0 ${FILEV4} vds_dset COMPACT -l vds_dset:COMPA) ADD_H5_VERIFY_VDS (vds_conti "TEST" 0 ${FILEV4} vds_dset CONTIGUOUS -l vds_dset:CONTI) diff --git a/tools/h5repack/h5repack.sh.in b/tools/h5repack/h5repack.sh.in index bb686db..a721c8f 100644 --- a/tools/h5repack/h5repack.sh.in +++ b/tools/h5repack/h5repack.sh.in @@ -150,15 +150,10 @@ $SRC_H5REPACK_TESTFILES/h5repack_layout.h5.ddl $SRC_H5REPACK_TESTFILES/h5repack_filters.h5.tst $SRC_H5REPACK_TESTFILES/h5repack_layout.h5-plugin_test.ddl $SRC_H5REPACK_TESTFILES/plugin_test.h5repack_layout.h5.tst -$SRC_H5REPACK_TESTFILES/1_vds.h5-vds_dset_compa-v.ddl -$SRC_H5REPACK_TESTFILES/1_vds.h5-vds_dset_conti-v.ddl -$SRC_H5REPACK_TESTFILES/2_vds.h5-vds_null_compa-v.ddl -$SRC_H5REPACK_TESTFILES/2_vds.h5-vds_null_conti-v.ddl -$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_compa_compa-v.ddl -$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_compa_conti-v.ddl +$SRC_H5REPACK_TESTFILES/1_vds.h5-vds_dset_chunk20x10x5-v.ddl +$SRC_H5REPACK_TESTFILES/2_vds.h5-vds_chunk3x6x9-v.ddl +$SRC_H5REPACK_TESTFILES/3_1_vds.h5-vds_chunk2x5x8-v.ddl $SRC_H5REPACK_TESTFILES/4_vds.h5-vds_compa-v.ddl -$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_conti_compa-v.ddl -$SRC_H5REPACK_TESTFILES/4_vds.h5-vds_conti_conti-v.ddl $SRC_H5REPACK_TESTFILES/4_vds.h5-vds_conti-v.ddl " @@ -1164,21 +1159,12 @@ TOOLTEST_META meta_long h5repack_layout.h5 --metadata_block_size=8192 # VDS tests -######################################################### -# layout options -######################################################### -VERIFY_LAYOUT_VDS vds_dset_conti 1_vds.h5 vds_dset CONTIGUOUS -l vds_dset:CONTI -VERIFY_LAYOUT_ALL vds_null_conti 2_vds.h5 CONTIGUOUS -l CONTI -VERIFY_LAYOUT_VDS vds_dset_compa 1_vds.h5 vds_dset COMPACT -l vds_dset:COMPA -VERIFY_LAYOUT_ALL vds_null_compa 2_vds.h5 COMPACT -l COMPA - ################################################################ # layout conversions ############################################################### -VERIFY_LAYOUT_VDS vds_compa_conti 4_vds.h5 vds_dset CONTIGUOUS -l vds_dset:CONTI -VERIFY_LAYOUT_VDS vds_compa_compa 4_vds.h5 vds_dset COMPACT -l vds_dset:COMPA -VERIFY_LAYOUT_VDS vds_conti_compa 4_vds.h5 vds_dset COMPACT -l vds_dset:COMPA -VERIFY_LAYOUT_VDS vds_conti_conti 4_vds.h5 vds_dset CONTIGUOUS -l vds_dset:CONTI +VERIFY_LAYOUT_VDS vds_dset_chunk_20x10x5 1_vds.h5 vds_dset CHUNKED --layout vds_dset:CHUNK=20x10x5 +VERIFY_LAYOUT_VDS vds_chunk2x5x8 3_1_vds.h5 vds_dset CHUNKED -l vds_dset:CHUNK=2x5x8 +VERIFY_LAYOUT_VDS vds_chunk3x6x9 2_vds.h5 vds_dset CHUNKED -l vds_dset:CHUNK=3x6x9 VERIFY_LAYOUT_VDS vds_compa 4_vds.h5 vds_dset COMPACT -l vds_dset:COMPA VERIFY_LAYOUT_VDS vds_conti 4_vds.h5 vds_dset CONTIGUOUS -l vds_dset:CONTI diff --git a/tools/h5repack/h5repack_main.c b/tools/h5repack/h5repack_main.c index 708c173..c03b7a7 100644 --- a/tools/h5repack/h5repack_main.c +++ b/tools/h5repack/h5repack_main.c @@ -193,7 +193,6 @@ static void usage(const char *prog) { printf("\n"); } - /*------------------------------------------------------------------------- * Function: leave * diff --git a/tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl b/tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl new file mode 100644 index 0000000..fab9494 --- /dev/null +++ b/tools/h5repack/testfiles/1_vds.h5-vds_dset_chunk20x10x5-v.ddl @@ -0,0 +1,112 @@ +HDF5 "out-vds_dset_chunk20x10x5.1_vds.h5" { +DATASET "vds_dset" { + DATATYPE H5T_STD_I32LE + DATASPACE SIMPLE { ( 5, 18, 8 ) / ( H5S_UNLIMITED, 18, 8 ) } + STORAGE_LAYOUT { + CHUNKED ( 20, 10, 5 ) + SIZE 16000 + } + FILTERS { + NONE + } + FILLVALUE { + FILL_TIME H5D_FILL_TIME_IFSET + VALUE -9 + } + ALLOCATION_TIME { + H5D_ALLOC_TIME_INCR + } + DATA { + (0,0,0): 10, 10, 10, 10, 10, 10, 10, 10, + (0,1,0): 10, 10, 10, 10, 10, 10, 10, 10, + (0,2,0): 20, 20, 20, 20, 20, 20, 20, 20, + (0,3,0): 20, 20, 20, 20, 20, 20, 20, 20, + (0,4,0): 20, 20, 20, 20, 20, 20, 20, 20, + (0,5,0): 20, 20, 20, 20, 20, 20, 20, 20, + (0,6,0): 30, 30, 30, 30, 30, 30, 30, 30, + (0,7,0): 30, 30, 30, 30, 30, 30, 30, 30, + (0,8,0): 40, 40, 40, 40, 40, 40, 40, 40, + (0,9,0): 40, 40, 40, 40, 40, 40, 40, 40, + (0,10,0): 40, 40, 40, 40, 40, 40, 40, 40, + (0,11,0): 40, 40, 40, 40, 40, 40, 40, 40, + (0,12,0): 50, 50, 50, 50, 50, 50, 50, 50, + (0,13,0): 50, 50, 50, 50, 50, 50, 50, 50, + (0,14,0): 60, 60, 60, 60, 60, 60, 60, 60, + (0,15,0): 60, 60, 60, 60, 60, 60, 60, 60, + (0,16,0): 60, 60, 60, 60, 60, 60, 60, 60, + (0,17,0): 60, 60, 60, 60, 60, 60, 60, 60, + (1,0,0): 11, 11, 11, 11, 11, 11, 11, 11, + (1,1,0): 11, 11, 11, 11, 11, 11, 11, 11, + (1,2,0): 21, 21, 21, 21, 21, 21, 21, 21, + (1,3,0): 21, 21, 21, 21, 21, 21, 21, 21, + (1,4,0): 21, 21, 21, 21, 21, 21, 21, 21, + (1,5,0): 21, 21, 21, 21, 21, 21, 21, 21, + (1,6,0): 31, 31, 31, 31, 31, 31, 31, 31, + (1,7,0): 31, 31, 31, 31, 31, 31, 31, 31, + (1,8,0): 41, 41, 41, 41, 41, 41, 41, 41, + (1,9,0): 41, 41, 41, 41, 41, 41, 41, 41, + (1,10,0): 41, 41, 41, 41, 41, 41, 41, 41, + (1,11,0): 41, 41, 41, 41, 41, 41, 41, 41, + (1,12,0): 51, 51, 51, 51, 51, 51, 51, 51, + (1,13,0): 51, 51, 51, 51, 51, 51, 51, 51, + (1,14,0): 61, 61, 61, 61, 61, 61, 61, 61, + (1,15,0): 61, 61, 61, 61, 61, 61, 61, 61, + (1,16,0): 61, 61, 61, 61, 61, 61, 61, 61, + (1,17,0): 61, 61, 61, 61, 61, 61, 61, 61, + (2,0,0): 12, 12, 12, 12, 12, 12, 12, 12, + (2,1,0): 12, 12, 12, 12, 12, 12, 12, 12, + (2,2,0): 22, 22, 22, 22, 22, 22, 22, 22, + (2,3,0): 22, 22, 22, 22, 22, 22, 22, 22, + (2,4,0): 22, 22, 22, 22, 22, 22, 22, 22, + (2,5,0): 22, 22, 22, 22, 22, 22, 22, 22, + (2,6,0): 32, 32, 32, 32, 32, 32, 32, 32, + (2,7,0): 32, 32, 32, 32, 32, 32, 32, 32, + (2,8,0): 42, 42, 42, 42, 42, 42, 42, 42, + (2,9,0): 42, 42, 42, 42, 42, 42, 42, 42, + (2,10,0): 42, 42, 42, 42, 42, 42, 42, 42, + (2,11,0): 42, 42, 42, 42, 42, 42, 42, 42, + (2,12,0): 52, 52, 52, 52, 52, 52, 52, 52, + (2,13,0): 52, 52, 52, 52, 52, 52, 52, 52, + (2,14,0): 62, 62, 62, 62, 62, 62, 62, 62, + (2,15,0): 62, 62, 62, 62, 62, 62, 62, 62, + (2,16,0): 62, 62, 62, 62, 62, 62, 62, 62, + (2,17,0): 62, 62, 62, 62, 62, 62, 62, 62, + (3,0,0): 13, 13, 13, 13, 13, 13, 13, 13, + (3,1,0): 13, 13, 13, 13, 13, 13, 13, 13, + (3,2,0): 23, 23, 23, 23, 23, 23, 23, 23, + (3,3,0): 23, 23, 23, 23, 23, 23, 23, 23, + (3,4,0): 23, 23, 23, 23, 23, 23, 23, 23, + (3,5,0): 23, 23, 23, 23, 23, 23, 23, 23, + (3,6,0): 33, 33, 33, 33, 33, 33, 33, 33, + (3,7,0): 33, 33, 33, 33, 33, 33, 33, 33, + (3,8,0): 43, 43, 43, 43, 43, 43, 43, 43, + (3,9,0): 43, 43, 43, 43, 43, 43, 43, 43, + (3,10,0): 43, 43, 43, 43, 43, 43, 43, 43, + (3,11,0): 43, 43, 43, 43, 43, 43, 43, 43, + (3,12,0): 53, 53, 53, 53, 53, 53, 53, 53, + (3,13,0): 53, 53, 53, 53, 53, 53, 53, 53, + (3,14,0): 63, 63, 63, 63, 63, 63, 63, 63, + (3,15,0): 63, 63, 63, 63, 63, 63, 63, 63, + (3,16,0): 63, 63, 63, 63, 63, 63, 63, 63, + (3,17,0): 63, 63, 63, 63, 63, 63, 63, 63, + (4,0,0): 14, 14, 14, 14, 14, 14, 14, 14, + (4,1,0): 14, 14, 14, 14, 14, 14, 14, 14, + (4,2,0): 24, 24, 24, 24, 24, 24, 24, 24, + (4,3,0): 24, 24, 24, 24, 24, 24, 24, 24, + (4,4,0): 24, 24, 24, 24, 24, 24, 24, 24, + (4,5,0): 24, 24, 24, 24, 24, 24, 24, 24, + (4,6,0): 34, 34, 34, 34, 34, 34, 34, 34, + (4,7,0): 34, 34, 34, 34, 34, 34, 34, 34, + (4,8,0): 44, 44, 44, 44, 44, 44, 44, 44, + (4,9,0): 44, 44, 44, 44, 44, 44, 44, 44, + (4,10,0): 44, 44, 44, 44, 44, 44, 44, 44, + (4,11,0): 44, 44, 44, 44, 44, 44, 44, 44, + (4,12,0): 54, 54, 54, 54, 54, 54, 54, 54, + (4,13,0): 54, 54, 54, 54, 54, 54, 54, 54, + (4,14,0): 64, 64, 64, 64, 64, 64, 64, 64, + (4,15,0): 64, 64, 64, 64, 64, 64, 64, 64, + (4,16,0): 64, 64, 64, 64, 64, 64, 64, 64, + (4,17,0): 64, 64, 64, 64, 64, 64, 64, 64 + } +} +} diff --git a/tools/h5repack/testfiles/1_vds.h5-vds_dset_compa-v.ddl b/tools/h5repack/testfiles/1_vds.h5-vds_dset_compa-v.ddl deleted file mode 100644 index 781c7dc..0000000 --- a/tools/h5repack/testfiles/1_vds.h5-vds_dset_compa-v.ddl +++ /dev/null @@ -1,112 +0,0 @@ -HDF5 "out-vds_dset_compa.1_vds.h5" { -DATASET "vds_dset" { - DATATYPE H5T_STD_I32LE - DATASPACE SIMPLE { ( 5, 18, 8 ) / ( 5, 18, 8 ) } - STORAGE_LAYOUT { - COMPACT - SIZE 2880 - } - FILTERS { - NONE - } - FILLVALUE { - FILL_TIME H5D_FILL_TIME_IFSET - VALUE -9 - } - ALLOCATION_TIME { - H5D_ALLOC_TIME_EARLY - } - DATA { - (0,0,0): 10, 10, 10, 10, 10, 10, 10, 10, - (0,1,0): 10, 10, 10, 10, 10, 10, 10, 10, - (0,2,0): 20, 20, 20, 20, 20, 20, 20, 20, - (0,3,0): 20, 20, 20, 20, 20, 20, 20, 20, - (0,4,0): 20, 20, 20, 20, 20, 20, 20, 20, - (0,5,0): 20, 20, 20, 20, 20, 20, 20, 20, - (0,6,0): 30, 30, 30, 30, 30, 30, 30, 30, - (0,7,0): 30, 30, 30, 30, 30, 30, 30, 30, - (0,8,0): 40, 40, 40, 40, 40, 40, 40, 40, - (0,9,0): 40, 40, 40, 40, 40, 40, 40, 40, - (0,10,0): 40, 40, 40, 40, 40, 40, 40, 40, - (0,11,0): 40, 40, 40, 40, 40, 40, 40, 40, - (0,12,0): 50, 50, 50, 50, 50, 50, 50, 50, - (0,13,0): 50, 50, 50, 50, 50, 50, 50, 50, - (0,14,0): 60, 60, 60, 60, 60, 60, 60, 60, - (0,15,0): 60, 60, 60, 60, 60, 60, 60, 60, - (0,16,0): 60, 60, 60, 60, 60, 60, 60, 60, - (0,17,0): 60, 60, 60, 60, 60, 60, 60, 60, - (1,0,0): 11, 11, 11, 11, 11, 11, 11, 11, - (1,1,0): 11, 11, 11, 11, 11, 11, 11, 11, - (1,2,0): 21, 21, 21, 21, 21, 21, 21, 21, - (1,3,0): 21, 21, 21, 21, 21, 21, 21, 21, - (1,4,0): 21, 21, 21, 21, 21, 21, 21, 21, - (1,5,0): 21, 21, 21, 21, 21, 21, 21, 21, - (1,6,0): 31, 31, 31, 31, 31, 31, 31, 31, - (1,7,0): 31, 31, 31, 31, 31, 31, 31, 31, - (1,8,0): 41, 41, 41, 41, 41, 41, 41, 41, - (1,9,0): 41, 41, 41, 41, 41, 41, 41, 41, - (1,10,0): 41, 41, 41, 41, 41, 41, 41, 41, - (1,11,0): 41, 41, 41, 41, 41, 41, 41, 41, - (1,12,0): 51, 51, 51, 51, 51, 51, 51, 51, - (1,13,0): 51, 51, 51, 51, 51, 51, 51, 51, - (1,14,0): 61, 61, 61, 61, 61, 61, 61, 61, - (1,15,0): 61, 61, 61, 61, 61, 61, 61, 61, - (1,16,0): 61, 61, 61, 61, 61, 61, 61, 61, - (1,17,0): 61, 61, 61, 61, 61, 61, 61, 61, - (2,0,0): 12, 12, 12, 12, 12, 12, 12, 12, - (2,1,0): 12, 12, 12, 12, 12, 12, 12, 12, - (2,2,0): 22, 22, 22, 22, 22, 22, 22, 22, - (2,3,0): 22, 22, 22, 22, 22, 22, 22, 22, - (2,4,0): 22, 22, 22, 22, 22, 22, 22, 22, - (2,5,0): 22, 22, 22, 22, 22, 22, 22, 22, - (2,6,0): 32, 32, 32, 32, 32, 32, 32, 32, - (2,7,0): 32, 32, 32, 32, 32, 32, 32, 32, - (2,8,0): 42, 42, 42, 42, 42, 42, 42, 42, - (2,9,0): 42, 42, 42, 42, 42, 42, 42, 42, - (2,10,0): 42, 42, 42, 42, 42, 42, 42, 42, - (2,11,0): 42, 42, 42, 42, 42, 42, 42, 42, - (2,12,0): 52, 52, 52, 52, 52, 52, 52, 52, - (2,13,0): 52, 52, 52, 52, 52, 52, 52, 52, - (2,14,0): 62, 62, 62, 62, 62, 62, 62, 62, - (2,15,0): 62, 62, 62, 62, 62, 62, 62, 62, - (2,16,0): 62, 62, 62, 62, 62, 62, 62, 62, - (2,17,0): 62, 62, 62, 62, 62, 62, 62, 62, - (3,0,0): 13, 13, 13, 13, 13, 13, 13, 13, - (3,1,0): 13, 13, 13, 13, 13, 13, 13, 13, - (3,2,0): 23, 23, 23, 23, 23, 23, 23, 23, - (3,3,0): 23, 23, 23, 23, 23, 23, 23, 23, - (3,4,0): 23, 23, 23, 23, 23, 23, 23, 23, - (3,5,0): 23, 23, 23, 23, 23, 23, 23, 23, - (3,6,0): 33, 33, 33, 33, 33, 33, 33, 33, - (3,7,0): 33, 33, 33, 33, 33, 33, 33, 33, - (3,8,0): 43, 43, 43, 43, 43, 43, 43, 43, - (3,9,0): 43, 43, 43, 43, 43, 43, 43, 43, - (3,10,0): 43, 43, 43, 43, 43, 43, 43, 43, - (3,11,0): 43, 43, 43, 43, 43, 43, 43, 43, - (3,12,0): 53, 53, 53, 53, 53, 53, 53, 53, - (3,13,0): 53, 53, 53, 53, 53, 53, 53, 53, - (3,14,0): 63, 63, 63, 63, 63, 63, 63, 63, - (3,15,0): 63, 63, 63, 63, 63, 63, 63, 63, - (3,16,0): 63, 63, 63, 63, 63, 63, 63, 63, - (3,17,0): 63, 63, 63, 63, 63, 63, 63, 63, - (4,0,0): 14, 14, 14, 14, 14, 14, 14, 14, - (4,1,0): 14, 14, 14, 14, 14, 14, 14, 14, - (4,2,0): 24, 24, 24, 24, 24, 24, 24, 24, - (4,3,0): 24, 24, 24, 24, 24, 24, 24, 24, - (4,4,0): 24, 24, 24, 24, 24, 24, 24, 24, - (4,5,0): 24, 24, 24, 24, 24, 24, 24, 24, - (4,6,0): 34, 34, 34, 34, 34, 34, 34, 34, - (4,7,0): 34, 34, 34, 34, 34, 34, 34, 34, - (4,8,0): 44, 44, 44, 44, 44, 44, 44, 44, - (4,9,0): 44, 44, 44, 44, 44, 44, 44, 44, - (4,10,0): 44, 44, 44, 44, 44, 44, 44, 44, - (4,11,0): 44, 44, 44, 44, 44, 44, 44, 44, - (4,12,0): 54, 54, 54, 54, 54, 54, 54, 54, - (4,13,0): 54, 54, 54, 54, 54, 54, 54, 54, - (4,14,0): 64, 64, 64, 64, 64, 64, 64, 64, - (4,15,0): 64, 64, 64, 64, 64, 64, 64, 64, - (4,16,0): 64, 64, 64, 64, 64, 64, 64, 64, - (4,17,0): 64, 64, 64, 64, 64, 64, 64, 64 - } -} -} diff --git a/tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl b/tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl deleted file mode 100644 index 994129b..0000000 --- a/tools/h5repack/testfiles/1_vds.h5-vds_dset_conti-v.ddl +++ /dev/null @@ -1,113 +0,0 @@ -HDF5 "out-vds_dset_conti.1_vds.h5" { -DATASET "vds_dset" { - DATATYPE H5T_STD_I32LE - DATASPACE SIMPLE { ( 5, 18, 8 ) / ( 5, 18, 8 ) } - STORAGE_LAYOUT { - CONTIGUOUS - SIZE 2880 - OFFSET 2144 - } - FILTERS { - NONE - } - FILLVALUE { - FILL_TIME H5D_FILL_TIME_IFSET - VALUE -9 - } - ALLOCATION_TIME { - H5D_ALLOC_TIME_LATE - } - DATA { - (0,0,0): 10, 10, 10, 10, 10, 10, 10, 10, - (0,1,0): 10, 10, 10, 10, 10, 10, 10, 10, - (0,2,0): 20, 20, 20, 20, 20, 20, 20, 20, - (0,3,0): 20, 20, 20, 20, 20, 20, 20, 20, - (0,4,0): 20, 20, 20, 20, 20, 20, 20, 20, - (0,5,0): 20, 20, 20, 20, 20, 20, 20, 20, - (0,6,0): 30, 30, 30, 30, 30, 30, 30, 30, - (0,7,0): 30, 30, 30, 30, 30, 30, 30, 30, - (0,8,0): 40, 40, 40, 40, 40, 40, 40, 40, - (0,9,0): 40, 40, 40, 40, 40, 40, 40, 40, - (0,10,0): 40, 40, 40, 40, 40, 40, 40, 40, - (0,11,0): 40, 40, 40, 40, 40, 40, 40, 40, - (0,12,0): 50, 50, 50, 50, 50, 50, 50, 50, - (0,13,0): 50, 50, 50, 50, 50, 50, 50, 50, - (0,14,0): 60, 60, 60, 60, 60, 60, 60, 60, - (0,15,0): 60, 60, 60, 60, 60, 60, 60, 60, - (0,16,0): 60, 60, 60, 60, 60, 60, 60, 60, - (0,17,0): 60, 60, 60, 60, 60, 60, 60, 60, - (1,0,0): 11, 11, 11, 11, 11, 11, 11, 11, - (1,1,0): 11, 11, 11, 11, 11, 11, 11, 11, - (1,2,0): 21, 21, 21, 21, 21, 21, 21, 21, - (1,3,0): 21, 21, 21, 21, 21, 21, 21, 21, - (1,4,0): 21, 21, 21, 21, 21, 21, 21, 21, - (1,5,0): 21, 21, 21, 21, 21, 21, 21, 21, - (1,6,0): 31, 31, 31, 31, 31, 31, 31, 31, - (1,7,0): 31, 31, 31, 31, 31, 31, 31, 31, - (1,8,0): 41, 41, 41, 41, 41, 41, 41, 41, - (1,9,0): 41, 41, 41, 41, 41, 41, 41, 41, - (1,10,0): 41, 41, 41, 41, 41, 41, 41, 41, - (1,11,0): 41, 41, 41, 41, 41, 41, 41, 41, - (1,12,0): 51, 51, 51, 51, 51, 51, 51, 51, - (1,13,0): 51, 51, 51, 51, 51, 51, 51, 51, - (1,14,0): 61, 61, 61, 61, 61, 61, 61, 61, - (1,15,0): 61, 61, 61, 61, 61, 61, 61, 61, - (1,16,0): 61, 61, 61, 61, 61, 61, 61, 61, - (1,17,0): 61, 61, 61, 61, 61, 61, 61, 61, - (2,0,0): 12, 12, 12, 12, 12, 12, 12, 12, - (2,1,0): 12, 12, 12, 12, 12, 12, 12, 12, - (2,2,0): 22, 22, 22, 22, 22, 22, 22, 22, - (2,3,0): 22, 22, 22, 22, 22, 22, 22, 22, - (2,4,0): 22, 22, 22, 22, 22, 22, 22, 22, - (2,5,0): 22, 22, 22, 22, 22, 22, 22, 22, - (2,6,0): 32, 32, 32, 32, 32, 32, 32, 32, - (2,7,0): 32, 32, 32, 32, 32, 32, 32, 32, - (2,8,0): 42, 42, 42, 42, 42, 42, 42, 42, - (2,9,0): 42, 42, 42, 42, 42, 42, 42, 42, - (2,10,0): 42, 42, 42, 42, 42, 42, 42, 42, - (2,11,0): 42, 42, 42, 42, 42, 42, 42, 42, - (2,12,0): 52, 52, 52, 52, 52, 52, 52, 52, - (2,13,0): 52, 52, 52, 52, 52, 52, 52, 52, - (2,14,0): 62, 62, 62, 62, 62, 62, 62, 62, - (2,15,0): 62, 62, 62, 62, 62, 62, 62, 62, - (2,16,0): 62, 62, 62, 62, 62, 62, 62, 62, - (2,17,0): 62, 62, 62, 62, 62, 62, 62, 62, - (3,0,0): 13, 13, 13, 13, 13, 13, 13, 13, - (3,1,0): 13, 13, 13, 13, 13, 13, 13, 13, - (3,2,0): 23, 23, 23, 23, 23, 23, 23, 23, - (3,3,0): 23, 23, 23, 23, 23, 23, 23, 23, - (3,4,0): 23, 23, 23, 23, 23, 23, 23, 23, - (3,5,0): 23, 23, 23, 23, 23, 23, 23, 23, - (3,6,0): 33, 33, 33, 33, 33, 33, 33, 33, - (3,7,0): 33, 33, 33, 33, 33, 33, 33, 33, - (3,8,0): 43, 43, 43, 43, 43, 43, 43, 43, - (3,9,0): 43, 43, 43, 43, 43, 43, 43, 43, - (3,10,0): 43, 43, 43, 43, 43, 43, 43, 43, - (3,11,0): 43, 43, 43, 43, 43, 43, 43, 43, - (3,12,0): 53, 53, 53, 53, 53, 53, 53, 53, - (3,13,0): 53, 53, 53, 53, 53, 53, 53, 53, - (3,14,0): 63, 63, 63, 63, 63, 63, 63, 63, - (3,15,0): 63, 63, 63, 63, 63, 63, 63, 63, - (3,16,0): 63, 63, 63, 63, 63, 63, 63, 63, - (3,17,0): 63, 63, 63, 63, 63, 63, 63, 63, - (4,0,0): 14, 14, 14, 14, 14, 14, 14, 14, - (4,1,0): 14, 14, 14, 14, 14, 14, 14, 14, - (4,2,0): 24, 24, 24, 24, 24, 24, 24, 24, - (4,3,0): 24, 24, 24, 24, 24, 24, 24, 24, - (4,4,0): 24, 24, 24, 24, 24, 24, 24, 24, - (4,5,0): 24, 24, 24, 24, 24, 24, 24, 24, - (4,6,0): 34, 34, 34, 34, 34, 34, 34, 34, - (4,7,0): 34, 34, 34, 34, 34, 34, 34, 34, - (4,8,0): 44, 44, 44, 44, 44, 44, 44, 44, - (4,9,0): 44, 44, 44, 44, 44, 44, 44, 44, - (4,10,0): 44, 44, 44, 44, 44, 44, 44, 44, - (4,11,0): 44, 44, 44, 44, 44, 44, 44, 44, - (4,12,0): 54, 54, 54, 54, 54, 54, 54, 54, - (4,13,0): 54, 54, 54, 54, 54, 54, 54, 54, - (4,14,0): 64, 64, 64, 64, 64, 64, 64, 64, - (4,15,0): 64, 64, 64, 64, 64, 64, 64, 64, - (4,16,0): 64, 64, 64, 64, 64, 64, 64, 64, - (4,17,0): 64, 64, 64, 64, 64, 64, 64, 64 - } -} -} diff --git a/tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl b/tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl new file mode 100644 index 0000000..51df9dd --- /dev/null +++ b/tools/h5repack/testfiles/2_vds.h5-vds_chunk3x6x9-v.ddl @@ -0,0 +1,70 @@ +HDF5 "out-vds_chunk3x6x9.2_vds.h5" { +DATASET "vds_dset" { + DATATYPE H5T_STD_I32LE + DATASPACE SIMPLE { ( 6, 8, 14 ) / ( H5S_UNLIMITED, 8, 14 ) } + STORAGE_LAYOUT { + CHUNKED ( 3, 6, 9 ) + SIZE 5184 + } + FILTERS { + NONE + } + FILLVALUE { + FILL_TIME H5D_FILL_TIME_IFSET + VALUE -9 + } + ALLOCATION_TIME { + H5D_ALLOC_TIME_INCR + } + DATA { + (0,0,0): 10, 10, 10, 10, 10, 10, 10, 40, 40, 40, 40, 40, 40, 40, + (0,1,0): 10, 10, 10, 10, 10, 10, 10, 40, 40, 40, 40, 40, 40, 40, + (0,2,0): 20, 20, 20, 20, 20, 20, 20, 40, 40, 40, 40, 40, 40, 40, + (0,3,0): 20, 20, 20, 20, 20, 20, 20, 40, 40, 40, 40, 40, 40, 40, + (0,4,0): 20, 20, 20, 20, 20, 20, 20, 40, 40, 40, 40, 40, 40, 40, + (0,5,0): 20, 20, 20, 20, 20, 20, 20, 50, 50, 50, 50, 50, 50, 50, + (0,6,0): 30, 30, 30, 30, 30, 30, 30, 50, 50, 50, 50, 50, 50, 50, + (0,7,0): 30, 30, 30, 30, 30, 30, 30, 50, 50, 50, 50, 50, 50, 50, + (1,0,0): 11, 11, 11, 11, 11, 11, 11, 41, 41, 41, 41, 41, 41, 41, + (1,1,0): 11, 11, 11, 11, 11, 11, 11, 41, 41, 41, 41, 41, 41, 41, + (1,2,0): 21, 21, 21, 21, 21, 21, 21, 41, 41, 41, 41, 41, 41, 41, + (1,3,0): 21, 21, 21, 21, 21, 21, 21, 41, 41, 41, 41, 41, 41, 41, + (1,4,0): 21, 21, 21, 21, 21, 21, 21, 41, 41, 41, 41, 41, 41, 41, + (1,5,0): 21, 21, 21, 21, 21, 21, 21, 51, 51, 51, 51, 51, 51, 51, + (1,6,0): 31, 31, 31, 31, 31, 31, 31, 51, 51, 51, 51, 51, 51, 51, + (1,7,0): 31, 31, 31, 31, 31, 31, 31, 51, 51, 51, 51, 51, 51, 51, + (2,0,0): 12, 12, 12, 12, 12, 12, 12, 42, 42, 42, 42, 42, 42, 42, + (2,1,0): 12, 12, 12, 12, 12, 12, 12, 42, 42, 42, 42, 42, 42, 42, + (2,2,0): 22, 22, 22, 22, 22, 22, 22, 42, 42, 42, 42, 42, 42, 42, + (2,3,0): 22, 22, 22, 22, 22, 22, 22, 42, 42, 42, 42, 42, 42, 42, + (2,4,0): 22, 22, 22, 22, 22, 22, 22, 42, 42, 42, 42, 42, 42, 42, + (2,5,0): 22, 22, 22, 22, 22, 22, 22, 52, 52, 52, 52, 52, 52, 52, + (2,6,0): 32, 32, 32, 32, 32, 32, 32, 52, 52, 52, 52, 52, 52, 52, + (2,7,0): 32, 32, 32, 32, 32, 32, 32, 52, 52, 52, 52, 52, 52, 52, + (3,0,0): 13, 13, 13, 13, 13, 13, 13, 43, 43, 43, 43, 43, 43, 43, + (3,1,0): 13, 13, 13, 13, 13, 13, 13, 43, 43, 43, 43, 43, 43, 43, + (3,2,0): 23, 23, 23, 23, 23, 23, 23, 43, 43, 43, 43, 43, 43, 43, + (3,3,0): 23, 23, 23, 23, 23, 23, 23, 43, 43, 43, 43, 43, 43, 43, + (3,4,0): 23, 23, 23, 23, 23, 23, 23, 43, 43, 43, 43, 43, 43, 43, + (3,5,0): 23, 23, 23, 23, 23, 23, 23, 53, 53, 53, 53, 53, 53, 53, + (3,6,0): 33, 33, 33, 33, 33, 33, 33, 53, 53, 53, 53, 53, 53, 53, + (3,7,0): 33, 33, 33, 33, 33, 33, 33, 53, 53, 53, 53, 53, 53, 53, + (4,0,0): 14, 14, 14, 14, 14, 14, 14, 44, 44, 44, 44, 44, 44, 44, + (4,1,0): 14, 14, 14, 14, 14, 14, 14, 44, 44, 44, 44, 44, 44, 44, + (4,2,0): 24, 24, 24, 24, 24, 24, 24, 44, 44, 44, 44, 44, 44, 44, + (4,3,0): 24, 24, 24, 24, 24, 24, 24, 44, 44, 44, 44, 44, 44, 44, + (4,4,0): 24, 24, 24, 24, 24, 24, 24, 44, 44, 44, 44, 44, 44, 44, + (4,5,0): 24, 24, 24, 24, 24, 24, 24, 54, 54, 54, 54, 54, 54, 54, + (4,6,0): 34, 34, 34, 34, 34, 34, 34, 54, 54, 54, 54, 54, 54, 54, + (4,7,0): 34, 34, 34, 34, 34, 34, 34, 54, 54, 54, 54, 54, 54, 54, + (5,0,0): 15, 15, 15, 15, 15, 15, 15, 45, 45, 45, 45, 45, 45, 45, + (5,1,0): 15, 15, 15, 15, 15, 15, 15, 45, 45, 45, 45, 45, 45, 45, + (5,2,0): 25, 25, 25, 25, 25, 25, 25, 45, 45, 45, 45, 45, 45, 45, + (5,3,0): 25, 25, 25, 25, 25, 25, 25, 45, 45, 45, 45, 45, 45, 45, + (5,4,0): 25, 25, 25, 25, 25, 25, 25, 45, 45, 45, 45, 45, 45, 45, + (5,5,0): 25, 25, 25, 25, 25, 25, 25, 55, 55, 55, 55, 55, 55, 55, + (5,6,0): 35, 35, 35, 35, 35, 35, 35, 55, 55, 55, 55, 55, 55, 55, + (5,7,0): 35, 35, 35, 35, 35, 35, 35, 55, 55, 55, 55, 55, 55, 55 + } +} +} diff --git a/tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl b/tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl deleted file mode 100644 index 0efa6b4..0000000 --- a/tools/h5repack/testfiles/2_vds.h5-vds_null_compa-v.ddl +++ /dev/null @@ -1,3 +0,0 @@ -HDF5 "out-vds_null_compa.2_vds.h5" { -} -h5dump error: unable to get link info from "null" diff --git a/tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl b/tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl deleted file mode 100644 index ceb8cf7..0000000 --- a/tools/h5repack/testfiles/2_vds.h5-vds_null_conti-v.ddl +++ /dev/null @@ -1,3 +0,0 @@ -HDF5 "out-vds_null_conti.2_vds.h5" { -} -h5dump error: unable to get link info from "null" diff --git a/tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl b/tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl new file mode 100644 index 0000000..dcd172c --- /dev/null +++ b/tools/h5repack/testfiles/3_1_vds.h5-vds_chunk2x5x8-v.ddl @@ -0,0 +1,147 @@ +HDF5 "out-vds_chunk2x5x8.3_1_vds.h5" { +DATASET "vds_dset" { + DATATYPE H5T_STD_I32LE + DATASPACE SIMPLE { ( 5, 25, 8 ) / ( H5S_UNLIMITED, 25, 8 ) } + STORAGE_LAYOUT { + CHUNKED ( 2, 5, 8 ) + SIZE 4800 + } + FILTERS { + NONE + } + FILLVALUE { + FILL_TIME H5D_FILL_TIME_IFSET + VALUE -9 + } + ALLOCATION_TIME { + H5D_ALLOC_TIME_INCR + } + DATA { + (0,0,0): -9, -9, -9, -9, -9, -9, -9, -9, + (0,1,0): 10, 10, 10, 10, 10, 10, 10, 10, + (0,2,0): 10, 10, 10, 10, 10, 10, 10, 10, + (0,3,0): -9, -9, -9, -9, -9, -9, -9, -9, + (0,4,0): 20, 20, 20, 20, 20, 20, 20, 20, + (0,5,0): 20, 20, 20, 20, 20, 20, 20, 20, + (0,6,0): 20, 20, 20, 20, 20, 20, 20, 20, + (0,7,0): 20, 20, 20, 20, 20, 20, 20, 20, + (0,8,0): -9, -9, -9, -9, -9, -9, -9, -9, + (0,9,0): 30, 30, 30, 30, 30, 30, 30, 30, + (0,10,0): 30, 30, 30, 30, 30, 30, 30, 30, + (0,11,0): -9, -9, -9, -9, -9, -9, -9, -9, + (0,12,0): 40, 40, 40, 40, 40, 40, 40, 40, + (0,13,0): 40, 40, 40, 40, 40, 40, 40, 40, + (0,14,0): 40, 40, 40, 40, 40, 40, 40, 40, + (0,15,0): 40, 40, 40, 40, 40, 40, 40, 40, + (0,16,0): -9, -9, -9, -9, -9, -9, -9, -9, + (0,17,0): 50, 50, 50, 50, 50, 50, 50, 50, + (0,18,0): 50, 50, 50, 50, 50, 50, 50, 50, + (0,19,0): -9, -9, -9, -9, -9, -9, -9, -9, + (0,20,0): 60, 60, 60, 60, 60, 60, 60, 60, + (0,21,0): 60, 60, 60, 60, 60, 60, 60, 60, + (0,22,0): 60, 60, 60, 60, 60, 60, 60, 60, + (0,23,0): 60, 60, 60, 60, 60, 60, 60, 60, + (0,24,0): -9, -9, -9, -9, -9, -9, -9, -9, + (1,0,0): -9, -9, -9, -9, -9, -9, -9, -9, + (1,1,0): 11, 11, 11, 11, 11, 11, 11, 11, + (1,2,0): 11, 11, 11, 11, 11, 11, 11, 11, + (1,3,0): -9, -9, -9, -9, -9, -9, -9, -9, + (1,4,0): 21, 21, 21, 21, 21, 21, 21, 21, + (1,5,0): 21, 21, 21, 21, 21, 21, 21, 21, + (1,6,0): 21, 21, 21, 21, 21, 21, 21, 21, + (1,7,0): 21, 21, 21, 21, 21, 21, 21, 21, + (1,8,0): -9, -9, -9, -9, -9, -9, -9, -9, + (1,9,0): 31, 31, 31, 31, 31, 31, 31, 31, + (1,10,0): 31, 31, 31, 31, 31, 31, 31, 31, + (1,11,0): -9, -9, -9, -9, -9, -9, -9, -9, + (1,12,0): 41, 41, 41, 41, 41, 41, 41, 41, + (1,13,0): 41, 41, 41, 41, 41, 41, 41, 41, + (1,14,0): 41, 41, 41, 41, 41, 41, 41, 41, + (1,15,0): 41, 41, 41, 41, 41, 41, 41, 41, + (1,16,0): -9, -9, -9, -9, -9, -9, -9, -9, + (1,17,0): 51, 51, 51, 51, 51, 51, 51, 51, + (1,18,0): 51, 51, 51, 51, 51, 51, 51, 51, + (1,19,0): -9, -9, -9, -9, -9, -9, -9, -9, + (1,20,0): 61, 61, 61, 61, 61, 61, 61, 61, + (1,21,0): 61, 61, 61, 61, 61, 61, 61, 61, + (1,22,0): 61, 61, 61, 61, 61, 61, 61, 61, + (1,23,0): 61, 61, 61, 61, 61, 61, 61, 61, + (1,24,0): -9, -9, -9, -9, -9, -9, -9, -9, + (2,0,0): -9, -9, -9, -9, -9, -9, -9, -9, + (2,1,0): 12, 12, 12, 12, 12, 12, 12, 12, + (2,2,0): 12, 12, 12, 12, 12, 12, 12, 12, + (2,3,0): -9, -9, -9, -9, -9, -9, -9, -9, + (2,4,0): 22, 22, 22, 22, 22, 22, 22, 22, + (2,5,0): 22, 22, 22, 22, 22, 22, 22, 22, + (2,6,0): 22, 22, 22, 22, 22, 22, 22, 22, + (2,7,0): 22, 22, 22, 22, 22, 22, 22, 22, + (2,8,0): -9, -9, -9, -9, -9, -9, -9, -9, + (2,9,0): 32, 32, 32, 32, 32, 32, 32, 32, + (2,10,0): 32, 32, 32, 32, 32, 32, 32, 32, + (2,11,0): -9, -9, -9, -9, -9, -9, -9, -9, + (2,12,0): 42, 42, 42, 42, 42, 42, 42, 42, + (2,13,0): 42, 42, 42, 42, 42, 42, 42, 42, + (2,14,0): 42, 42, 42, 42, 42, 42, 42, 42, + (2,15,0): 42, 42, 42, 42, 42, 42, 42, 42, + (2,16,0): -9, -9, -9, -9, -9, -9, -9, -9, + (2,17,0): 52, 52, 52, 52, 52, 52, 52, 52, + (2,18,0): 52, 52, 52, 52, 52, 52, 52, 52, + (2,19,0): -9, -9, -9, -9, -9, -9, -9, -9, + (2,20,0): 62, 62, 62, 62, 62, 62, 62, 62, + (2,21,0): 62, 62, 62, 62, 62, 62, 62, 62, + (2,22,0): 62, 62, 62, 62, 62, 62, 62, 62, + (2,23,0): 62, 62, 62, 62, 62, 62, 62, 62, + (2,24,0): -9, -9, -9, -9, -9, -9, -9, -9, + (3,0,0): -9, -9, -9, -9, -9, -9, -9, -9, + (3,1,0): 13, 13, 13, 13, 13, 13, 13, 13, + (3,2,0): 13, 13, 13, 13, 13, 13, 13, 13, + (3,3,0): -9, -9, -9, -9, -9, -9, -9, -9, + (3,4,0): 23, 23, 23, 23, 23, 23, 23, 23, + (3,5,0): 23, 23, 23, 23, 23, 23, 23, 23, + (3,6,0): 23, 23, 23, 23, 23, 23, 23, 23, + (3,7,0): 23, 23, 23, 23, 23, 23, 23, 23, + (3,8,0): -9, -9, -9, -9, -9, -9, -9, -9, + (3,9,0): 33, 33, 33, 33, 33, 33, 33, 33, + (3,10,0): 33, 33, 33, 33, 33, 33, 33, 33, + (3,11,0): -9, -9, -9, -9, -9, -9, -9, -9, + (3,12,0): 43, 43, 43, 43, 43, 43, 43, 43, + (3,13,0): 43, 43, 43, 43, 43, 43, 43, 43, + (3,14,0): 43, 43, 43, 43, 43, 43, 43, 43, + (3,15,0): 43, 43, 43, 43, 43, 43, 43, 43, + (3,16,0): -9, -9, -9, -9, -9, -9, -9, -9, + (3,17,0): 53, 53, 53, 53, 53, 53, 53, 53, + (3,18,0): 53, 53, 53, 53, 53, 53, 53, 53, + (3,19,0): -9, -9, -9, -9, -9, -9, -9, -9, + (3,20,0): 63, 63, 63, 63, 63, 63, 63, 63, + (3,21,0): 63, 63, 63, 63, 63, 63, 63, 63, + (3,22,0): 63, 63, 63, 63, 63, 63, 63, 63, + (3,23,0): 63, 63, 63, 63, 63, 63, 63, 63, + (3,24,0): -9, -9, -9, -9, -9, -9, -9, -9, + (4,0,0): -9, -9, -9, -9, -9, -9, -9, -9, + (4,1,0): 14, 14, 14, 14, 14, 14, 14, 14, + (4,2,0): 14, 14, 14, 14, 14, 14, 14, 14, + (4,3,0): -9, -9, -9, -9, -9, -9, -9, -9, + (4,4,0): 24, 24, 24, 24, 24, 24, 24, 24, + (4,5,0): 24, 24, 24, 24, 24, 24, 24, 24, + (4,6,0): 24, 24, 24, 24, 24, 24, 24, 24, + (4,7,0): 24, 24, 24, 24, 24, 24, 24, 24, + (4,8,0): -9, -9, -9, -9, -9, -9, -9, -9, + (4,9,0): 34, 34, 34, 34, 34, 34, 34, 34, + (4,10,0): 34, 34, 34, 34, 34, 34, 34, 34, + (4,11,0): -9, -9, -9, -9, -9, -9, -9, -9, + (4,12,0): 44, 44, 44, 44, 44, 44, 44, 44, + (4,13,0): 44, 44, 44, 44, 44, 44, 44, 44, + (4,14,0): 44, 44, 44, 44, 44, 44, 44, 44, + (4,15,0): 44, 44, 44, 44, 44, 44, 44, 44, + (4,16,0): -9, -9, -9, -9, -9, -9, -9, -9, + (4,17,0): 54, 54, 54, 54, 54, 54, 54, 54, + (4,18,0): 54, 54, 54, 54, 54, 54, 54, 54, + (4,19,0): -9, -9, -9, -9, -9, -9, -9, -9, + (4,20,0): 64, 64, 64, 64, 64, 64, 64, 64, + (4,21,0): 64, 64, 64, 64, 64, 64, 64, 64, + (4,22,0): 64, 64, 64, 64, 64, 64, 64, 64, + (4,23,0): 64, 64, 64, 64, 64, 64, 64, 64, + (4,24,0): -9, -9, -9, -9, -9, -9, -9, -9 + } +} +} diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl b/tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl deleted file mode 100644 index 1b7cdc0..0000000 --- a/tools/h5repack/testfiles/4_vds.h5-vds_compa_compa-v.ddl +++ /dev/null @@ -1,58 +0,0 @@ -HDF5 "out-vds_compa_compa.4_vds.h5" { -DATASET "vds_dset" { - DATATYPE H5T_STD_I32LE - DATASPACE SIMPLE { ( 9, 4, 4 ) / ( 9, 4, 4 ) } - STORAGE_LAYOUT { - COMPACT - SIZE 576 - } - FILTERS { - NONE - } - FILLVALUE { - FILL_TIME H5D_FILL_TIME_IFSET - VALUE -9 - } - ALLOCATION_TIME { - H5D_ALLOC_TIME_EARLY - } - DATA { - (0,0,0): 10, 10, 10, 10, - (0,1,0): 10, 10, 10, 10, - (0,2,0): 10, 10, 10, 10, - (0,3,0): 10, 10, 10, 10, - (1,0,0): 11, 11, 11, 11, - (1,1,0): 11, 11, 11, 11, - (1,2,0): 11, 11, 11, 11, - (1,3,0): 11, 11, 11, 11, - (2,0,0): 12, 12, 12, 12, - (2,1,0): 12, 12, 12, 12, - (2,2,0): 12, 12, 12, 12, - (2,3,0): 12, 12, 12, 12, - (3,0,0): 20, 20, 20, 20, - (3,1,0): 20, 20, 20, 20, - (3,2,0): 20, 20, 20, 20, - (3,3,0): 20, 20, 20, 20, - (4,0,0): 21, 21, 21, 21, - (4,1,0): 21, 21, 21, 21, - (4,2,0): 21, 21, 21, 21, - (4,3,0): 21, 21, 21, 21, - (5,0,0): 22, 22, 22, 22, - (5,1,0): 22, 22, 22, 22, - (5,2,0): 22, 22, 22, 22, - (5,3,0): 22, 22, 22, 22, - (6,0,0): 30, 30, 30, 30, - (6,1,0): 30, 30, 30, 30, - (6,2,0): 30, 30, 30, 30, - (6,3,0): 30, 30, 30, 30, - (7,0,0): 31, 31, 31, 31, - (7,1,0): 31, 31, 31, 31, - (7,2,0): 31, 31, 31, 31, - (7,3,0): 31, 31, 31, 31, - (8,0,0): 32, 32, 32, 32, - (8,1,0): 32, 32, 32, 32, - (8,2,0): 32, 32, 32, 32, - (8,3,0): 32, 32, 32, 32 - } -} -} diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl b/tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl deleted file mode 100644 index 1a4b4b5..0000000 --- a/tools/h5repack/testfiles/4_vds.h5-vds_compa_conti-v.ddl +++ /dev/null @@ -1,59 +0,0 @@ -HDF5 "out-vds_compa_conti.4_vds.h5" { -DATASET "vds_dset" { - DATATYPE H5T_STD_I32LE - DATASPACE SIMPLE { ( 9, 4, 4 ) / ( 9, 4, 4 ) } - STORAGE_LAYOUT { - CONTIGUOUS - SIZE 576 - OFFSET 2144 - } - FILTERS { - NONE - } - FILLVALUE { - FILL_TIME H5D_FILL_TIME_IFSET - VALUE -9 - } - ALLOCATION_TIME { - H5D_ALLOC_TIME_LATE - } - DATA { - (0,0,0): 10, 10, 10, 10, - (0,1,0): 10, 10, 10, 10, - (0,2,0): 10, 10, 10, 10, - (0,3,0): 10, 10, 10, 10, - (1,0,0): 11, 11, 11, 11, - (1,1,0): 11, 11, 11, 11, - (1,2,0): 11, 11, 11, 11, - (1,3,0): 11, 11, 11, 11, - (2,0,0): 12, 12, 12, 12, - (2,1,0): 12, 12, 12, 12, - (2,2,0): 12, 12, 12, 12, - (2,3,0): 12, 12, 12, 12, - (3,0,0): 20, 20, 20, 20, - (3,1,0): 20, 20, 20, 20, - (3,2,0): 20, 20, 20, 20, - (3,3,0): 20, 20, 20, 20, - (4,0,0): 21, 21, 21, 21, - (4,1,0): 21, 21, 21, 21, - (4,2,0): 21, 21, 21, 21, - (4,3,0): 21, 21, 21, 21, - (5,0,0): 22, 22, 22, 22, - (5,1,0): 22, 22, 22, 22, - (5,2,0): 22, 22, 22, 22, - (5,3,0): 22, 22, 22, 22, - (6,0,0): 30, 30, 30, 30, - (6,1,0): 30, 30, 30, 30, - (6,2,0): 30, 30, 30, 30, - (6,3,0): 30, 30, 30, 30, - (7,0,0): 31, 31, 31, 31, - (7,1,0): 31, 31, 31, 31, - (7,2,0): 31, 31, 31, 31, - (7,3,0): 31, 31, 31, 31, - (8,0,0): 32, 32, 32, 32, - (8,1,0): 32, 32, 32, 32, - (8,2,0): 32, 32, 32, 32, - (8,3,0): 32, 32, 32, 32 - } -} -} diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl b/tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl deleted file mode 100644 index bc4fdd1..0000000 --- a/tools/h5repack/testfiles/4_vds.h5-vds_conti_compa-v.ddl +++ /dev/null @@ -1,58 +0,0 @@ -HDF5 "out-vds_conti_compa.4_vds.h5" { -DATASET "vds_dset" { - DATATYPE H5T_STD_I32LE - DATASPACE SIMPLE { ( 9, 4, 4 ) / ( 9, 4, 4 ) } - STORAGE_LAYOUT { - COMPACT - SIZE 576 - } - FILTERS { - NONE - } - FILLVALUE { - FILL_TIME H5D_FILL_TIME_IFSET - VALUE -9 - } - ALLOCATION_TIME { - H5D_ALLOC_TIME_EARLY - } - DATA { - (0,0,0): 10, 10, 10, 10, - (0,1,0): 10, 10, 10, 10, - (0,2,0): 10, 10, 10, 10, - (0,3,0): 10, 10, 10, 10, - (1,0,0): 11, 11, 11, 11, - (1,1,0): 11, 11, 11, 11, - (1,2,0): 11, 11, 11, 11, - (1,3,0): 11, 11, 11, 11, - (2,0,0): 12, 12, 12, 12, - (2,1,0): 12, 12, 12, 12, - (2,2,0): 12, 12, 12, 12, - (2,3,0): 12, 12, 12, 12, - (3,0,0): 20, 20, 20, 20, - (3,1,0): 20, 20, 20, 20, - (3,2,0): 20, 20, 20, 20, - (3,3,0): 20, 20, 20, 20, - (4,0,0): 21, 21, 21, 21, - (4,1,0): 21, 21, 21, 21, - (4,2,0): 21, 21, 21, 21, - (4,3,0): 21, 21, 21, 21, - (5,0,0): 22, 22, 22, 22, - (5,1,0): 22, 22, 22, 22, - (5,2,0): 22, 22, 22, 22, - (5,3,0): 22, 22, 22, 22, - (6,0,0): 30, 30, 30, 30, - (6,1,0): 30, 30, 30, 30, - (6,2,0): 30, 30, 30, 30, - (6,3,0): 30, 30, 30, 30, - (7,0,0): 31, 31, 31, 31, - (7,1,0): 31, 31, 31, 31, - (7,2,0): 31, 31, 31, 31, - (7,3,0): 31, 31, 31, 31, - (8,0,0): 32, 32, 32, 32, - (8,1,0): 32, 32, 32, 32, - (8,2,0): 32, 32, 32, 32, - (8,3,0): 32, 32, 32, 32 - } -} -} diff --git a/tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl b/tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl deleted file mode 100644 index 88b1ab6..0000000 --- a/tools/h5repack/testfiles/4_vds.h5-vds_conti_conti-v.ddl +++ /dev/null @@ -1,59 +0,0 @@ -HDF5 "out-vds_conti_conti.4_vds.h5" { -DATASET "vds_dset" { - DATATYPE H5T_STD_I32LE - DATASPACE SIMPLE { ( 9, 4, 4 ) / ( 9, 4, 4 ) } - STORAGE_LAYOUT { - CONTIGUOUS - SIZE 576 - OFFSET 2144 - } - FILTERS { - NONE - } - FILLVALUE { - FILL_TIME H5D_FILL_TIME_IFSET - VALUE -9 - } - ALLOCATION_TIME { - H5D_ALLOC_TIME_LATE - } - DATA { - (0,0,0): 10, 10, 10, 10, - (0,1,0): 10, 10, 10, 10, - (0,2,0): 10, 10, 10, 10, - (0,3,0): 10, 10, 10, 10, - (1,0,0): 11, 11, 11, 11, - (1,1,0): 11, 11, 11, 11, - (1,2,0): 11, 11, 11, 11, - (1,3,0): 11, 11, 11, 11, - (2,0,0): 12, 12, 12, 12, - (2,1,0): 12, 12, 12, 12, - (2,2,0): 12, 12, 12, 12, - (2,3,0): 12, 12, 12, 12, - (3,0,0): 20, 20, 20, 20, - (3,1,0): 20, 20, 20, 20, - (3,2,0): 20, 20, 20, 20, - (3,3,0): 20, 20, 20, 20, - (4,0,0): 21, 21, 21, 21, - (4,1,0): 21, 21, 21, 21, - (4,2,0): 21, 21, 21, 21, - (4,3,0): 21, 21, 21, 21, - (5,0,0): 22, 22, 22, 22, - (5,1,0): 22, 22, 22, 22, - (5,2,0): 22, 22, 22, 22, - (5,3,0): 22, 22, 22, 22, - (6,0,0): 30, 30, 30, 30, - (6,1,0): 30, 30, 30, 30, - (6,2,0): 30, 30, 30, 30, - (6,3,0): 30, 30, 30, 30, - (7,0,0): 31, 31, 31, 31, - (7,1,0): 31, 31, 31, 31, - (7,2,0): 31, 31, 31, 31, - (7,3,0): 31, 31, 31, 31, - (8,0,0): 32, 32, 32, 32, - (8,1,0): 32, 32, 32, 32, - (8,2,0): 32, 32, 32, 32, - (8,3,0): 32, 32, 32, 32 - } -} -} -- cgit v0.12