Merge pull request #1349 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '139a12d13cda046fd3cd64a4f097eb3485f50173': HDFFV-10632 correct number HDFFV-10632 stder/stdout change note Add stamp files for generated files HDFFV-10632 update autotools test scripts to match cmake HDFFV=10632 test cleanup Fix special macro stdout as empty Need nonexistent file to skip stdout compare HDFFV-10632 - split stderr and stdout in cmake
This commit is contained in:
63
MANIFEST
63
MANIFEST
@@ -1388,14 +1388,16 @@
|
||||
./tools/test/h5format_convert/testfiles/h5fc_v_err.ddl.err
|
||||
./tools/test/h5format_convert/testfiles/h5fc_v_non_chunked.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_d_file.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_d_file.ddl.err
|
||||
./tools/test/h5format_convert/testfiles/h5fc_v_ndata_bt1.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_dname.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_dname.err
|
||||
./tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl.err
|
||||
./tools/test/h5format_convert/testfiles/h5fc_nonexistdset_file.ddl.err
|
||||
./tools/test/h5format_convert/testfiles/h5fc_help.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_v_all.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_nooption.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_v_n_1d.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_nonexistfile.ddl
|
||||
./tools/test/h5format_convert/testfiles/h5fc_non_v3.h5
|
||||
./tools/test/h5format_convert/testfiles/h5fc_edge_v3.h5
|
||||
./tools/test/h5format_convert/testfiles/h5fc_err_level.h5
|
||||
@@ -1465,6 +1467,11 @@
|
||||
./tools/test/h5ls/vds_prefix/tvds-4.ls
|
||||
./tools/test/h5ls/vds_prefix/tvds-5.ls
|
||||
|
||||
# h5ls test error files
|
||||
./tools/test/h5ls/errfiles/nosuchfile.err
|
||||
./tools/test/h5ls/errfiles/textlinksrc-nodangle-1.err
|
||||
./tools/test/h5ls/errfiles/tgroup-1.err
|
||||
|
||||
# h5copy sources
|
||||
./tools/src/h5copy/Makefile.am
|
||||
./tools/src/h5copy/h5copy.c
|
||||
@@ -1522,8 +1529,8 @@
|
||||
./tools/test/misc/testfiles/h5clear_missing_file.ddl
|
||||
./tools/test/misc/testfiles/h5clear_noclose_after_size.ddl
|
||||
./tools/test/misc/testfiles/h5clear_noclose_before_size.ddl
|
||||
./tools/test/misc/testfiles/h5clear_no_mdc_image.ddl
|
||||
./tools/test/misc/testfiles/h5clear_open_fail.ddl
|
||||
./tools/test/misc/testfiles/h5clear_no_mdc_image.err
|
||||
./tools/test/misc/testfiles/h5clear_open_fail.err
|
||||
./tools/test/misc/testfiles/h5clear_status_noclose_after_size.ddl
|
||||
./tools/test/misc/testfiles/h5clear_usage.ddl
|
||||
./tools/test/misc/testfiles/h5clear_user_equal_after_size.ddl
|
||||
@@ -1577,10 +1584,6 @@
|
||||
./tools/test/h5stat/testh5stat.sh.in
|
||||
./tools/test/h5stat/testfiles/h5stat_dims1.ddl
|
||||
./tools/test/h5stat/testfiles/h5stat_dims2.ddl
|
||||
./tools/test/h5stat/testfiles/h5stat_err1_dims.ddl
|
||||
./tools/test/h5stat/testfiles/h5stat_err1_links.ddl
|
||||
./tools/test/h5stat/testfiles/h5stat_err1_numattrs.ddl
|
||||
./tools/test/h5stat/testfiles/h5stat_err2_numattrs.ddl
|
||||
./tools/test/h5stat/testfiles/h5stat_err_old_fill.h5
|
||||
./tools/test/h5stat/testfiles/h5stat_err_old_fill.ddl
|
||||
./tools/test/h5stat/testfiles/h5stat_err_old_layout.h5
|
||||
@@ -1618,6 +1621,15 @@
|
||||
./tools/test/h5stat/testfiles/h5stat_threshold.h5
|
||||
./tools/test/h5stat/testfiles/h5stat_tsohm.ddl
|
||||
./tools/test/h5stat/testfiles/h5stat_tsohm.h5
|
||||
./tools/test/h5stat/testfiles/h5stat_err_refcount.err
|
||||
./tools/test/h5stat/testfiles/h5stat_err_old_layout.err
|
||||
./tools/test/h5stat/testfiles/h5stat_err_old_fill.err
|
||||
./tools/test/h5stat/testfiles/h5stat_err1_dims.err
|
||||
./tools/test/h5stat/testfiles/h5stat_err1_links.err
|
||||
./tools/test/h5stat/testfiles/h5stat_err1_numattrs.err
|
||||
./tools/test/h5stat/testfiles/h5stat_err2_numattrs.err
|
||||
./tools/test/h5stat/testfiles/h5stat_notexist.err
|
||||
./tools/test/h5stat/testfiles/h5stat_nofile.err
|
||||
|
||||
# h5dump test files
|
||||
./tools/testfiles/charsets.h5
|
||||
@@ -2279,7 +2291,6 @@
|
||||
./tools/test/h5diff/testfiles/h5diff_600.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_601.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_601_ERR.err
|
||||
./tools/test/h5diff/testfiles/h5diff_601_ERR.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_603.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_604.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_605.txt
|
||||
@@ -2386,21 +2397,12 @@
|
||||
./tools/test/h5diff/testfiles/h5diff_452.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_453.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_454.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_454_ERR.err
|
||||
./tools/test/h5diff/testfiles/h5diff_454_ERR.txt
|
||||
./tools/test/h5diff/testfiles/dangling_link.err
|
||||
./tools/test/h5diff/testfiles/h5diff_455.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_455_ERR.err
|
||||
./tools/test/h5diff/testfiles/h5diff_455_ERR.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_456.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_457.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_457_ERR.err
|
||||
./tools/test/h5diff/testfiles/h5diff_457_ERR.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_458.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_458_ERR.err
|
||||
./tools/test/h5diff/testfiles/h5diff_458_ERR.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_459.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_459_ERR.err
|
||||
./tools/test/h5diff/testfiles/h5diff_459_ERR.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_465.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_466.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_467.txt
|
||||
@@ -2490,6 +2492,7 @@
|
||||
./tools/test/h5diff/testfiles/tudfilter.h5
|
||||
./tools/test/h5diff/testfiles/tudfilter2.h5
|
||||
./tools/test/h5diff/testfiles/h5diff_ud.txt
|
||||
./tools/test/h5diff/testfiles/h5diff_udfail.err
|
||||
./tools/test/h5diff/testfiles/h5diff_udfail.txt
|
||||
./tools/test/h5diff/testfiles/diff_strings1.h5
|
||||
./tools/test/h5diff/testfiles/diff_strings2.h5
|
||||
@@ -2590,6 +2593,7 @@
|
||||
./tools/test/h5copy/testfiles/h5copy_extlinks_src.h5
|
||||
./tools/test/h5copy/testfiles/h5copy_extlinks_trg.h5
|
||||
./tools/test/h5copy/testfiles/h5copy_extlinks_src.out.ls
|
||||
./tools/test/h5copy/testfiles/h5copy_misc1.err
|
||||
./tools/test/h5copy/testfiles/h5copy_misc1.out
|
||||
./tools/test/h5copy/testfiles/h5copytst_new.h5
|
||||
./tools/test/h5copy/testfiles/h5copytst_new.out.ls
|
||||
@@ -2758,16 +2762,17 @@
|
||||
|
||||
# expected test output from testing h5watch
|
||||
#
|
||||
./hl/tools/testfiles/w-err-cmpd1.ddl
|
||||
./hl/tools/testfiles/w-err-cmpd2.ddl
|
||||
./hl/tools/testfiles/w-err-cmpd3.ddl
|
||||
./hl/tools/testfiles/w-err-cmpd4.ddl
|
||||
./hl/tools/testfiles/w-err-cmpd5.ddl
|
||||
./hl/tools/testfiles/w-err-dset1.ddl
|
||||
./hl/tools/testfiles/w-err-dset2.ddl
|
||||
./hl/tools/testfiles/w-err-dset-nomax.ddl
|
||||
./hl/tools/testfiles/w-err-dset-none.ddl
|
||||
./hl/tools/testfiles/w-err-file.ddl
|
||||
./hl/tools/testfiles/w-err-std.ddl
|
||||
./hl/tools/testfiles/w-err-cmpd1.err
|
||||
./hl/tools/testfiles/w-err-cmpd2.err
|
||||
./hl/tools/testfiles/w-err-cmpd3.err
|
||||
./hl/tools/testfiles/w-err-cmpd4.err
|
||||
./hl/tools/testfiles/w-err-cmpd5.err
|
||||
./hl/tools/testfiles/w-err-dset1.err
|
||||
./hl/tools/testfiles/w-err-dset2.err
|
||||
./hl/tools/testfiles/w-err-dset-nomax.err
|
||||
./hl/tools/testfiles/w-err-dset-none.err
|
||||
./hl/tools/testfiles/w-err-file.err
|
||||
./hl/tools/testfiles/w-err-poll0.ddl
|
||||
./hl/tools/testfiles/w-err-poll.ddl
|
||||
./hl/tools/testfiles/w-err-width.ddl
|
||||
|
||||
@@ -32,9 +32,6 @@ endif ()
|
||||
if (NOT TEST_CLASSPATH)
|
||||
message (STATUS "Require TEST_CLASSPATH to be defined")
|
||||
endif ()
|
||||
if (NOT TEST_REFERENCE)
|
||||
message (FATAL_ERROR "Require TEST_REFERENCE to be defined")
|
||||
endif ()
|
||||
|
||||
if (EXISTS ${TEST_FOLDER}/${TEST_OUTPUT})
|
||||
file (REMOVE ${TEST_FOLDER}/${TEST_OUTPUT})
|
||||
@@ -44,14 +41,6 @@ if (EXISTS ${TEST_FOLDER}/${TEST_OUTPUT}.err)
|
||||
file (REMOVE ${TEST_FOLDER}/${TEST_OUTPUT}.err)
|
||||
endif ()
|
||||
|
||||
# if there is not an error reference file add the error output to the stdout file
|
||||
if (NOT TEST_ERRREF)
|
||||
if (NOT SKIP_APPEND)
|
||||
# append error file since skip was not defined
|
||||
set (ERROR_APPEND 1)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (NOT TEST_LOG_LEVEL)
|
||||
set (LOG_LEVEL "info")
|
||||
else ()
|
||||
@@ -131,54 +120,56 @@ message (STATUS "COMMAND Error: ${TEST_ERROR}")
|
||||
|
||||
# compare output files to references unless this must be skipped
|
||||
if (NOT TEST_SKIP_COMPARE)
|
||||
if (WIN32 AND NOT MINGW)
|
||||
file (READ ${TEST_FOLDER}/${TEST_REFERENCE} TEST_STREAM)
|
||||
file (WRITE ${TEST_FOLDER}/${TEST_REFERENCE} "${TEST_STREAM}")
|
||||
endif ()
|
||||
if (EXISTS ${TEST_FOLDER}/${TEST_REFERENCE})
|
||||
if (WIN32 AND NOT MINGW)
|
||||
file (READ ${TEST_FOLDER}/${TEST_REFERENCE} TEST_STREAM)
|
||||
file (WRITE ${TEST_FOLDER}/${TEST_REFERENCE} "${TEST_STREAM}")
|
||||
endif ()
|
||||
|
||||
# now compare the output with the reference
|
||||
execute_process (
|
||||
COMMAND ${CMAKE_COMMAND} -E compare_files ${TEST_FOLDER}/${TEST_OUTPUT} ${TEST_FOLDER}/${TEST_REFERENCE}
|
||||
RESULT_VARIABLE TEST_RESULT
|
||||
)
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
set (TEST_RESULT 0)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_OUTPUT} test_act)
|
||||
list (LENGTH test_act len_act)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_REFERENCE} test_ref)
|
||||
list (LENGTH test_ref len_ref)
|
||||
if (NOT "${len_act}" STREQUAL "0" AND NOT "${len_ref}" STREQUAL "0")
|
||||
math (EXPR _FP_LEN "${len_ref} - 1")
|
||||
foreach (line RANGE 0 ${_FP_LEN})
|
||||
list (GET test_act ${line} str_act)
|
||||
list (GET test_ref ${line} str_ref)
|
||||
if (NOT "${str_act}" STREQUAL "${str_ref}")
|
||||
if (NOT "${str_act}" STREQUAL "")
|
||||
set (TEST_RESULT 1)
|
||||
message ("line = ${line}\n***ACTUAL: ${str_act}\n****REFER: ${str_ref}\n")
|
||||
# now compare the output with the reference
|
||||
execute_process (
|
||||
COMMAND ${CMAKE_COMMAND} -E compare_files ${TEST_FOLDER}/${TEST_OUTPUT} ${TEST_FOLDER}/${TEST_REFERENCE}
|
||||
RESULT_VARIABLE TEST_RESULT
|
||||
)
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
set (TEST_RESULT 0)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_OUTPUT} test_act)
|
||||
list (LENGTH test_act len_act)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_REFERENCE} test_ref)
|
||||
list (LENGTH test_ref len_ref)
|
||||
if (NOT "${len_act}" STREQUAL "0" AND NOT "${len_ref}" STREQUAL "0")
|
||||
math (EXPR _FP_LEN "${len_ref} - 1")
|
||||
foreach (line RANGE 0 ${_FP_LEN})
|
||||
list (GET test_act ${line} str_act)
|
||||
list (GET test_ref ${line} str_ref)
|
||||
if (NOT "${str_act}" STREQUAL "${str_ref}")
|
||||
if (NOT "${str_act}" STREQUAL "")
|
||||
set (TEST_RESULT 1)
|
||||
message ("line = ${line}\n***ACTUAL: ${str_act}\n****REFER: ${str_ref}\n")
|
||||
endif ()
|
||||
endif ()
|
||||
endforeach ()
|
||||
else ()
|
||||
if ("${len_act}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_OUTPUT} is empty")
|
||||
endif ()
|
||||
if ("${len_ref}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_REFERENCE} is empty")
|
||||
endif ()
|
||||
endforeach ()
|
||||
else ()
|
||||
if ("${len_act}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_OUTPUT} is empty")
|
||||
endif ()
|
||||
if ("${len_ref}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_REFERENCE} is empty")
|
||||
if (NOT "${len_act}" STREQUAL "${len_ref}")
|
||||
set (TEST_RESULT 1)
|
||||
endif ()
|
||||
endif ()
|
||||
if (NOT "${len_act}" STREQUAL "${len_ref}")
|
||||
set (TEST_RESULT 1)
|
||||
|
||||
message (STATUS "COMPARE Result: ${TEST_RESULT}")
|
||||
|
||||
# again, if return value is !=0 scream and shout
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
message (FATAL_ERROR "Failed: The output of ${TEST_OUTPUT} did not match ${TEST_REFERENCE}")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
message (STATUS "COMPARE Result: ${TEST_RESULT}")
|
||||
|
||||
# again, if return value is !=0 scream and shout
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
message (FATAL_ERROR "Failed: The output of ${TEST_OUTPUT} did not match ${TEST_REFERENCE}")
|
||||
endif ()
|
||||
|
||||
# now compare the .err file with the error reference, if supplied
|
||||
if (TEST_ERRREF)
|
||||
if (WIN32 AND NOT MINGW)
|
||||
@@ -217,7 +208,7 @@ if (NOT TEST_SKIP_COMPARE)
|
||||
if ("${len_ref}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_ERRREF} is empty")
|
||||
endif ()
|
||||
endif()
|
||||
endif ()
|
||||
if (NOT "${len_act}" STREQUAL "${len_ref}")
|
||||
set (TEST_RESULT 1)
|
||||
endif ()
|
||||
@@ -226,7 +217,7 @@ if (NOT TEST_SKIP_COMPARE)
|
||||
message (STATUS "COMPARE Result: ${TEST_RESULT}")
|
||||
|
||||
# again, if return value is !=0 scream and shout
|
||||
if (NOT ${TEST_RESULT} STREQUAL 0)
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
message (FATAL_ERROR "Failed: The error output of ${TEST_OUTPUT}.err did not match ${TEST_ERRREF}")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
@@ -58,12 +58,13 @@ set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ALLOW_EXTERNAL_SUPPORT:STRIN
|
||||
### ext libs from git
|
||||
#set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ALLOW_EXTERNAL_SUPPORT:STRING=GIT")
|
||||
### ext libs on system
|
||||
#set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ALLOW_EXTERNAL_SUPPORT:STRING=NO")
|
||||
#set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DZLIB_LIBRARY:FILEPATH=some_location/lib/zlib.lib -DZLIB_INCLUDE_DIR:PATH=some_location/include")
|
||||
#set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DSZIP_LIBRARY:FILEPATH=some_location/lib/szlib.lib -DSZIP_INCLUDE_DIR:PATH=some_location/include")
|
||||
|
||||
### disable ext zlib building
|
||||
### disable using ext zlib
|
||||
#set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ENABLE_Z_LIB_SUPPORT:BOOL=OFF")
|
||||
### disable ext szip building
|
||||
### disable using ext szip
|
||||
#set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ENABLE_SZIP_SUPPORT:BOOL=OFF")
|
||||
#set (ADD_BUILD_OPTIONS "${ADD_BUILD_OPTIONS} -DHDF5_ENABLE_SZIP_ENCODING:BOOL=OFF")
|
||||
|
||||
|
||||
@@ -32,9 +32,9 @@ if (EXISTS ${TEST_FOLDER}/${TEST_OUTPUT}.err)
|
||||
endif ()
|
||||
|
||||
# if there is not an error reference file add the error output to the stdout file
|
||||
if (NOT TEST_ERRREF)
|
||||
set (ERROR_APPEND 1)
|
||||
endif ()
|
||||
#if (NOT TEST_ERRREF)
|
||||
# set (ERROR_APPEND 1)
|
||||
#endif ()
|
||||
|
||||
message (STATUS "USING ${TEST_VFD} ON COMMAND: ${TEST_PROGRAM} ${TEST_ARGS}")
|
||||
|
||||
|
||||
@@ -26,9 +26,6 @@ endif ()
|
||||
if (NOT TEST_EXPECT)
|
||||
message (STATUS "Require TEST_EXPECT to be defined")
|
||||
endif ()
|
||||
if (NOT TEST_SKIP_COMPARE AND NOT TEST_REFERENCE)
|
||||
message (FATAL_ERROR "Require TEST_REFERENCE to be defined")
|
||||
endif ()
|
||||
|
||||
if (EXISTS ${TEST_FOLDER}/${TEST_OUTPUT})
|
||||
file (REMOVE ${TEST_FOLDER}/${TEST_OUTPUT})
|
||||
@@ -38,11 +35,6 @@ if (EXISTS ${TEST_FOLDER}/${TEST_OUTPUT}.err)
|
||||
file (REMOVE ${TEST_FOLDER}/${TEST_OUTPUT}.err)
|
||||
endif ()
|
||||
|
||||
# if there is not an error reference file add the error output to the stdout file
|
||||
if (NOT TEST_ERRREF)
|
||||
set (ERROR_APPEND 1)
|
||||
endif ()
|
||||
|
||||
message (STATUS "COMMAND: ${TEST_PROGRAM} ${TEST_ARGS}")
|
||||
|
||||
if (TEST_LIBRARY_DIRECTORY)
|
||||
@@ -96,9 +88,19 @@ endif ()
|
||||
message (STATUS "COMMAND Result: ${TEST_RESULT}")
|
||||
|
||||
# if the .err file exists and ERRROR_APPEND is enabled
|
||||
if (ERROR_APPEND AND EXISTS ${TEST_FOLDER}/${TEST_OUTPUT}.err)
|
||||
if (EXISTS ${TEST_FOLDER}/${TEST_OUTPUT}.err)
|
||||
file (READ ${TEST_FOLDER}/${TEST_OUTPUT}.err TEST_STREAM)
|
||||
file (APPEND ${TEST_FOLDER}/${TEST_OUTPUT} "${TEST_STREAM}")
|
||||
if (TEST_MASK_FILE)
|
||||
STRING(REGEX REPLACE "CurrentDir is [^\n]+\n" "CurrentDir is (dir name)\n" TEST_STREAM "${TEST_STREAM}")
|
||||
endif ()
|
||||
|
||||
if (NOT ERROR_APPEND)
|
||||
# append error output to the stdout output file
|
||||
file (WRITE ${TEST_FOLDER}/${TEST_OUTPUT}.err "${TEST_STREAM}")
|
||||
else ()
|
||||
# write back to original .err file
|
||||
file (APPEND ${TEST_FOLDER}/${TEST_OUTPUT} "${TEST_STREAM}")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
# append the test result status with a predefined text
|
||||
@@ -142,6 +144,7 @@ if (TEST_MASK_ERROR)
|
||||
# the error stack remains in the .err file
|
||||
file (READ ${TEST_FOLDER}/${TEST_OUTPUT}.err TEST_STREAM)
|
||||
endif ()
|
||||
string (REGEX REPLACE "[.]*_pmi_alps[.]*\n" "" TEST_STREAM "${TEST_STREAM}")
|
||||
string (REGEX REPLACE "thread [0-9]*:" "thread (IDs):" TEST_STREAM "${TEST_STREAM}")
|
||||
string (REGEX REPLACE ": ([^\n]*)[.]c " ": (file name) " TEST_STREAM "${TEST_STREAM}")
|
||||
string (REGEX REPLACE " line [0-9]*" " line (number)" TEST_STREAM "${TEST_STREAM}")
|
||||
@@ -173,63 +176,65 @@ endif ()
|
||||
|
||||
# compare output files to references unless this must be skipped
|
||||
if (NOT TEST_SKIP_COMPARE)
|
||||
if (WIN32 AND NOT MINGW)
|
||||
file (READ ${TEST_FOLDER}/${TEST_REFERENCE} TEST_STREAM)
|
||||
file (WRITE ${TEST_FOLDER}/${TEST_REFERENCE} "${TEST_STREAM}")
|
||||
endif ()
|
||||
|
||||
if (NOT TEST_SORT_COMPARE)
|
||||
# now compare the output with the reference
|
||||
execute_process (
|
||||
COMMAND ${CMAKE_COMMAND} -E compare_files ${TEST_FOLDER}/${TEST_OUTPUT} ${TEST_FOLDER}/${TEST_REFERENCE}
|
||||
RESULT_VARIABLE TEST_RESULT
|
||||
)
|
||||
else ()
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_OUTPUT} v1)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_REFERENCE} v2)
|
||||
list (SORT v1)
|
||||
list (SORT v2)
|
||||
if (NOT v1 STREQUAL v2)
|
||||
set(TEST_RESULT 1)
|
||||
if (EXISTS ${TEST_FOLDER}/${TEST_REFERENCE})
|
||||
if (WIN32 AND NOT MINGW)
|
||||
file (READ ${TEST_FOLDER}/${TEST_REFERENCE} TEST_STREAM)
|
||||
file (WRITE ${TEST_FOLDER}/${TEST_REFERENCE} "${TEST_STREAM}")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
set (TEST_RESULT 0)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_OUTPUT} test_act)
|
||||
list (LENGTH test_act len_act)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_REFERENCE} test_ref)
|
||||
list (LENGTH test_ref len_ref)
|
||||
if (NOT "${len_act}" STREQUAL "0" AND NOT "${len_ref}" STREQUAL "0")
|
||||
math (EXPR _FP_LEN "${len_ref} - 1")
|
||||
foreach (line RANGE 0 ${_FP_LEN})
|
||||
list (GET test_act ${line} str_act)
|
||||
list (GET test_ref ${line} str_ref)
|
||||
if (NOT "${str_act}" STREQUAL "${str_ref}")
|
||||
if (NOT "${str_act}" STREQUAL "")
|
||||
set (TEST_RESULT 1)
|
||||
message ("line = ${line}\n***ACTUAL: ${str_act}\n****REFER: ${str_ref}\n")
|
||||
endif ()
|
||||
endif ()
|
||||
endforeach ()
|
||||
if (NOT TEST_SORT_COMPARE)
|
||||
# now compare the output with the reference
|
||||
execute_process (
|
||||
COMMAND ${CMAKE_COMMAND} -E compare_files ${TEST_FOLDER}/${TEST_OUTPUT} ${TEST_FOLDER}/${TEST_REFERENCE}
|
||||
RESULT_VARIABLE TEST_RESULT
|
||||
)
|
||||
else ()
|
||||
if ("${len_act}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_OUTPUT} is empty")
|
||||
endif ()
|
||||
if ("${len_ref}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_REFERENCE} is empty")
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_OUTPUT} v1)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_REFERENCE} v2)
|
||||
list (SORT v1)
|
||||
list (SORT v2)
|
||||
if (NOT v1 STREQUAL v2)
|
||||
set(TEST_RESULT 1)
|
||||
endif ()
|
||||
endif ()
|
||||
if (NOT "${len_act}" STREQUAL "${len_ref}")
|
||||
set (TEST_RESULT 1)
|
||||
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
set (TEST_RESULT 0)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_OUTPUT} test_act)
|
||||
list (LENGTH test_act len_act)
|
||||
file (STRINGS ${TEST_FOLDER}/${TEST_REFERENCE} test_ref)
|
||||
list (LENGTH test_ref len_ref)
|
||||
if (NOT "${len_act}" STREQUAL "0" AND NOT "${len_ref}" STREQUAL "0")
|
||||
math (EXPR _FP_LEN "${len_ref} - 1")
|
||||
foreach (line RANGE 0 ${_FP_LEN})
|
||||
list (GET test_act ${line} str_act)
|
||||
list (GET test_ref ${line} str_ref)
|
||||
if (NOT "${str_act}" STREQUAL "${str_ref}")
|
||||
if (NOT "${str_act}" STREQUAL "")
|
||||
set (TEST_RESULT 1)
|
||||
message ("line = ${line}\n***ACTUAL: ${str_act}\n****REFER: ${str_ref}\n")
|
||||
endif ()
|
||||
endif ()
|
||||
endforeach ()
|
||||
else ()
|
||||
if ("${len_act}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_OUTPUT} is empty")
|
||||
endif ()
|
||||
if ("${len_ref}" STREQUAL "0")
|
||||
message (STATUS "COMPARE Failed: ${TEST_FOLDER}/${TEST_REFERENCE} is empty")
|
||||
endif ()
|
||||
endif ()
|
||||
if (NOT "${len_act}" STREQUAL "${len_ref}")
|
||||
set (TEST_RESULT 1)
|
||||
endif ()
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
message (STATUS "COMPARE Result: ${TEST_RESULT}")
|
||||
message (STATUS "COMPARE Result: ${TEST_RESULT}")
|
||||
|
||||
# again, if return value is !=0 scream and shout
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
message (FATAL_ERROR "Failed: The output of ${TEST_OUTPUT} did not match ${TEST_REFERENCE}")
|
||||
# again, if return value is !=0 scream and shout
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
message (FATAL_ERROR "Failed: The output of ${TEST_OUTPUT} did not match ${TEST_REFERENCE}")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
# now compare the .err file with the error reference, if supplied
|
||||
@@ -260,7 +265,7 @@ if (NOT TEST_SKIP_COMPARE)
|
||||
if (NOT "${str_act}" STREQUAL "")
|
||||
set (TEST_RESULT 1)
|
||||
message ("line = ${line}\n***ACTUAL: ${str_act}\n****REFER: ${str_ref}\n")
|
||||
endif ()
|
||||
endif ()
|
||||
endif ()
|
||||
endforeach ()
|
||||
else ()
|
||||
@@ -285,5 +290,27 @@ if (NOT TEST_SKIP_COMPARE)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (TEST_GREP_COMPARE)
|
||||
# now grep the output with the reference
|
||||
file (READ ${TEST_FOLDER}/${TEST_OUTPUT} TEST_STREAM)
|
||||
|
||||
# TEST_REFERENCE should always be matched
|
||||
string (REGEX MATCH "${TEST_REFERENCE}" TEST_MATCH ${TEST_STREAM})
|
||||
string (COMPARE EQUAL "${TEST_REFERENCE}" "${TEST_MATCH}" TEST_RESULT)
|
||||
if ("${TEST_RESULT}" STREQUAL "0")
|
||||
message (FATAL_ERROR "Failed: The output of ${TEST_PROGRAM} did not contain ${TEST_REFERENCE}")
|
||||
endif ()
|
||||
|
||||
string (REGEX MATCH "${TEST_FILTER}" TEST_MATCH ${TEST_STREAM})
|
||||
if ("${TEST_EXPECT}" STREQUAL "1")
|
||||
# TEST_EXPECT (1) interperts TEST_FILTER as NOT to match
|
||||
string (LENGTH "${TEST_MATCH}" TEST_RESULT)
|
||||
if (NOT "${TEST_RESULT}" STREQUAL "0")
|
||||
message (FATAL_ERROR "Failed: The output of ${TEST_PROGRAM} did contain ${TEST_FILTER}")
|
||||
endif ()
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
# everything went fine...
|
||||
message ("Passed: The output of ${TEST_PROGRAM} matches ${TEST_REFERENCE}")
|
||||
message ("${TEST_PROGRAM} Passed")
|
||||
|
||||
|
||||
@@ -18,16 +18,16 @@
|
||||
|
||||
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-cmpd1.err
|
||||
w-err-cmpd2.err
|
||||
w-err-cmpd3.err
|
||||
w-err-cmpd4.err
|
||||
w-err-cmpd5.err
|
||||
w-err-dset1.err
|
||||
w-err-dset2.err
|
||||
w-err-dset-nomax.err
|
||||
w-err-dset-none.err
|
||||
w-err-file.err
|
||||
w-err-poll.ddl
|
||||
w-err-poll0.ddl
|
||||
w-err-width.ddl
|
||||
@@ -86,6 +86,25 @@ add_custom_target(H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tes
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_ERR_TEST resultfile resultcode)
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (
|
||||
NAME H5WATCH_ARGS-h5watch-${resultfile}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:h5watch>"
|
||||
-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}.mty"
|
||||
-D "TEST_ERRREF=${resultfile}.err"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (H5WATCH_ARGS-h5watch-${resultfile} PROPERTIES DEPENDS ${last_test})
|
||||
set (last_test "H5WATCH_ARGS-h5watch-${resultfile}")
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_WATCH resultfile resultcode)
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (
|
||||
@@ -162,20 +181,20 @@ if (NOT SWMR_INCOMPAT)
|
||||
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_ERR_TEST (w-err-dset1 1 WATCH.h5)
|
||||
ADD_H5_ERR_TEST (w-err-dset2 1 WATCH.h5/group/DSET_CMPD)
|
||||
ADD_H5_ERR_TEST (w-err-dset-none 1 WATCH.h5/DSET_NONE)
|
||||
ADD_H5_ERR_TEST (w-err-dset-nomax 1 WATCH.h5/DSET_NOMAX)
|
||||
ADD_H5_ERR_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)
|
||||
ADD_H5_ERR_TEST (w-err-cmpd1 1 --fields=fieldx WATCH.h5/DSET_CMPD)
|
||||
ADD_H5_ERR_TEST (w-err-cmpd2 1 --fields=field1,field2. WATCH.h5/DSET_CMPD)
|
||||
ADD_H5_ERR_TEST (w-err-cmpd3 1 --fields=field1,field2, WATCH.h5/DSET_CMPD)
|
||||
ADD_H5_ERR_TEST (w-err-cmpd4 1 --fields=field1,field2.b.k WATCH.h5/DSET_CMPD)
|
||||
ADD_H5_ERR_TEST (w-err-cmpd5 1 --fields=field1 --fields=field2.b.k WATCH.h5/DSET_CMPD)
|
||||
#
|
||||
endif ()
|
||||
|
||||
@@ -32,19 +32,19 @@ fi
|
||||
#echo
|
||||
#exit 0
|
||||
|
||||
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
|
||||
TRY_MAX=30 # Try running the test again
|
||||
TRY_MAX=30 # Try running the test again
|
||||
#
|
||||
# These 3 defines should be the same as the defines in ./extend_dset.c
|
||||
WRITER_MESSAGE=writer_message # The message file created by the "extend" process
|
||||
@@ -53,7 +53,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
|
||||
@@ -83,9 +83,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,
|
||||
@@ -137,7 +137,54 @@ TOOLTEST() {
|
||||
|
||||
# Clean up output file
|
||||
if test -z "$HDF5_NOCLEANUP"; then
|
||||
rm -f $actual $actual_err
|
||||
rm -f $actual $actual_err
|
||||
fi
|
||||
}
|
||||
#
|
||||
# TOOLTEST_ERR():
|
||||
# same as toolset only compare error file
|
||||
#
|
||||
# Arguments:
|
||||
#
|
||||
# $1 -- expected output
|
||||
# $2 -- expected return code
|
||||
# $3 and on -- arguments for h5watch
|
||||
TOOLTEST_ERR() {
|
||||
expect="$srcdir/../testfiles/$1"
|
||||
expect_err="$srcdir/../testfiles/`basename $1 .ddl`.err"
|
||||
actual="../testfiles/`basename $1 .ddl`.out"
|
||||
actual_err="../testfiles/`basename $1 .ddl`.out.err"
|
||||
shift
|
||||
retvalexpect=$1
|
||||
shift
|
||||
# Run test.
|
||||
TESTING $H5WATCH $@
|
||||
(
|
||||
$RUNSERIAL $H5WATCH_BIN "$@"
|
||||
) > $actual 2>$actual_err
|
||||
exitcode=$?
|
||||
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
|
||||
elif $CMP $expect_err $actual_err; then
|
||||
$ECHO " PASSED"
|
||||
else
|
||||
$ECHO "*FAILED*"
|
||||
$ECHO " Expected result differs from actual result"
|
||||
nerrors="`expr $nerrors + 1`"
|
||||
test yes = "$verbose" && $DIFF $expect_err $actual_err |sed 's/^/ /'
|
||||
fi
|
||||
|
||||
# Clean up output file
|
||||
if test -z "$HDF5_NOCLEANUP"; then
|
||||
rm -f $actual $actual_err
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -176,15 +223,15 @@ do
|
||||
# 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
|
||||
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
|
||||
mexist=1 # indicate the message file is found
|
||||
rm $WRITER_MESSAGE # remove the message file
|
||||
break # get out of the while loop
|
||||
fi
|
||||
@@ -211,8 +258,8 @@ do
|
||||
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*"
|
||||
@@ -265,7 +312,7 @@ done;
|
||||
# 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_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: #
|
||||
@@ -282,11 +329,11 @@ done;
|
||||
#################################################################################################
|
||||
# #
|
||||
# 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 #
|
||||
# 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 #
|
||||
# #
|
||||
#################################################################################################
|
||||
#
|
||||
@@ -296,21 +343,21 @@ $GEN_TEST_BIN
|
||||
TOOLTEST w-help1.ddl 0 --help
|
||||
#
|
||||
# Tests on expected failures
|
||||
TOOLTEST w-err-dset1.ddl 1 WATCH.h5
|
||||
TOOLTEST w-err-dset2.ddl 1 WATCH.h5/group/DSET_CMPD
|
||||
TOOLTEST w-err-dset-none.ddl 1 WATCH.h5/DSET_NONE
|
||||
TOOLTEST w-err-dset-nomax.ddl 1 WATCH.h5/DSET_NOMAX
|
||||
TOOLTEST w-err-file.ddl 1 ../WATCH.h5/DSET_CMPD
|
||||
TOOLTEST_ERR w-err-dset1.ddl 1 WATCH.h5
|
||||
TOOLTEST_ERR w-err-dset2.ddl 1 WATCH.h5/group/DSET_CMPD
|
||||
TOOLTEST_ERR w-err-dset-none.ddl 1 WATCH.h5/DSET_NONE
|
||||
TOOLTEST_ERR w-err-dset-nomax.ddl 1 WATCH.h5/DSET_NOMAX
|
||||
TOOLTEST_ERR w-err-file.ddl 1 ../WATCH.h5/DSET_CMPD
|
||||
TOOLTEST w-err-width.ddl 1 --width=-8 WATCH.h5/DSET_ONE
|
||||
TOOLTEST w-err-poll.ddl 1 --polling=-8 WATCH.h5/DSET_ONE
|
||||
TOOLTEST w-err-poll0.ddl 1 --polling=0 WATCH.h5/DSET_ONE
|
||||
#
|
||||
# Tests on invalid field names via --fields option for a compound typed dataset: DSET_CMPD
|
||||
TOOLTEST w-err-cmpd1.ddl 1 --fields=fieldx WATCH.h5/DSET_CMPD
|
||||
TOOLTEST w-err-cmpd2.ddl 1 --fields=field1,field2. WATCH.h5/DSET_CMPD
|
||||
TOOLTEST w-err-cmpd3.ddl 1 --fields=field1,field2, WATCH.h5/DSET_CMPD
|
||||
TOOLTEST w-err-cmpd4.ddl 1 --fields=field1,field2.b.k WATCH.h5/DSET_CMPD
|
||||
TOOLTEST w-err-cmpd5.ddl 1 --fields=field1 --fields=field2.b.k WATCH.h5/DSET_CMPD
|
||||
TOOLTEST_ERR w-err-cmpd1.ddl 1 --fields=fieldx WATCH.h5/DSET_CMPD
|
||||
TOOLTEST_ERR w-err-cmpd2.ddl 1 --fields=field1,field2. WATCH.h5/DSET_CMPD
|
||||
TOOLTEST_ERR w-err-cmpd3.ddl 1 --fields=field1,field2, WATCH.h5/DSET_CMPD
|
||||
TOOLTEST_ERR w-err-cmpd4.ddl 1 --fields=field1,field2.b.k WATCH.h5/DSET_CMPD
|
||||
TOOLTEST_ERR w-err-cmpd5.ddl 1 --fields=field1 --fields=field2.b.k WATCH.h5/DSET_CMPD
|
||||
#
|
||||
echo "DONE WITH 1st SET OF TESTS"
|
||||
#
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
Opened "WATCH.h5" with sec2 driver.
|
||||
h5watch error: error in processing <list_of_fields>
|
||||
@@ -1,2 +1 @@
|
||||
Opened "WATCH.h5" with sec2 driver.
|
||||
h5watch error: error in processing <list_of_fields>
|
||||
@@ -1,2 +1 @@
|
||||
Opened "WATCH.h5" with sec2 driver.
|
||||
h5watch error: error in processing <list_of_fields>
|
||||
@@ -1,2 +1 @@
|
||||
Opened "WATCH.h5" with sec2 driver.
|
||||
h5watch error: error in processing <list_of_fields>
|
||||
1
hl/tools/testfiles/w-err-cmpd5.err
Normal file
1
hl/tools/testfiles/w-err-cmpd5.err
Normal file
@@ -0,0 +1 @@
|
||||
h5watch error: error in processing <list_of_fields>
|
||||
@@ -1,2 +1 @@
|
||||
Opened "WATCH.h5" with sec2 driver.
|
||||
h5watch error: "/DSET_NOMAX" should have unlimited or max. dimension setting
|
||||
@@ -1,2 +1 @@
|
||||
Opened "WATCH.h5" with sec2 driver.
|
||||
h5watch error: "/DSET_NONE" should be a chunked or virtual dataset
|
||||
@@ -1,2 +1 @@
|
||||
Opened "WATCH.h5" with sec2 driver.
|
||||
h5watch error: no dataset specified
|
||||
@@ -1,2 +1 @@
|
||||
Opened "WATCH.h5" with sec2 driver.
|
||||
h5watch error: unable to open dataset "/group/DSET_CMPD"
|
||||
@@ -48,6 +48,15 @@ New Features
|
||||
|
||||
Configuration:
|
||||
-------------
|
||||
- Keep stderr and stdout separate in tests
|
||||
|
||||
Changed test handling of output capture. Tests now keep the stderr
|
||||
output separate from the stdout output. It is up to the test to decide
|
||||
which output to check against a reference. Also added the option
|
||||
to grep for a string in either output.
|
||||
|
||||
(ADB - 2018/12/12, HDFFV-10632)
|
||||
|
||||
- Add toolchain and cross-compile support
|
||||
|
||||
Added info on using a toolchain file to INSTALL_CMAKE.txt. A
|
||||
|
||||
@@ -954,6 +954,8 @@ if (NOT EXISTS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c)
|
||||
ARGS ${HDF5_BINARY_DIR}/${HDF5_BATCH_H5DETECT_SCRIPT}
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E echo "Executed batch command to create H5Tinit.c"
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp1
|
||||
DEPENDS H5detect
|
||||
WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR}
|
||||
)
|
||||
@@ -965,7 +967,10 @@ if (NOT EXISTS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c)
|
||||
OUTPUT ${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different "${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c" "${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c"
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp1
|
||||
DEPENDS gen_H5Tinit ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit_created
|
||||
WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR}
|
||||
)
|
||||
set_source_files_properties (${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c PROPERTIES GENERATED TRUE)
|
||||
endif ()
|
||||
@@ -974,6 +979,8 @@ if (NOT EXISTS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c)
|
||||
OUTPUT ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c
|
||||
COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR}$<TARGET_FILE:H5detect>
|
||||
ARGS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp1
|
||||
DEPENDS H5detect
|
||||
WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR}
|
||||
)
|
||||
@@ -982,7 +989,10 @@ if (NOT EXISTS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c)
|
||||
OUTPUT ${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different "${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c" "${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c"
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp1
|
||||
DEPENDS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c
|
||||
WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR}
|
||||
)
|
||||
set_source_files_properties (${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c PROPERTIES GENERATED TRUE)
|
||||
endif ()
|
||||
@@ -1003,6 +1013,8 @@ add_custom_command (
|
||||
OUTPUT ${HDF5_BINARY_DIR}/H5lib_settings.c
|
||||
COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR}$<TARGET_FILE:H5make_libsettings>
|
||||
ARGS ${HDF5_BINARY_DIR}/H5lib_settings.c
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp2
|
||||
DEPENDS H5make_libsettings
|
||||
WORKING_DIRECTORY ${HDF5_BINARY_DIR}
|
||||
)
|
||||
@@ -1012,7 +1024,10 @@ if (BUILD_SHARED_LIBS)
|
||||
OUTPUT ${HDF5_BINARY_DIR}/shared/H5lib_settings.c
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different "${HDF5_BINARY_DIR}/H5lib_settings.c" "${HDF5_BINARY_DIR}/shared/H5lib_settings.c"
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp2
|
||||
DEPENDS ${HDF5_BINARY_DIR}/H5lib_settings.c
|
||||
WORKING_DIRECTORY ${HDF5_BINARY_DIR}
|
||||
)
|
||||
set_source_files_properties (${HDF5_BINARY_DIR}/shared/H5lib_settings.c PROPERTIES GENERATED TRUE)
|
||||
endif ()
|
||||
@@ -1025,8 +1040,8 @@ option (HDF5_ENABLE_DEBUG_APIS "Turn on extra debug output in all packages" OFF)
|
||||
# Add H5Tinit source to build - generated by H5detect/CMake at configure time
|
||||
#-----------------------------------------------------------------------------
|
||||
set (gen_SRCS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c ${HDF5_BINARY_DIR}/H5lib_settings.c)
|
||||
add_custom_target (gen_${HDF5_LIB_TARGET} ALL DEPENDS ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp1 ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp2)
|
||||
|
||||
add_custom_target (gen_${HDF5_LIB_TARGET} ALL DEPENDS ${gen_SRCS})
|
||||
add_library (${HDF5_LIB_TARGET} STATIC ${common_SRCS} ${gen_SRCS} ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS})
|
||||
target_include_directories(${HDF5_LIB_TARGET}
|
||||
PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
|
||||
@@ -1055,8 +1070,8 @@ set (install_targets ${HDF5_LIB_TARGET})
|
||||
|
||||
if (BUILD_SHARED_LIBS)
|
||||
set (shared_gen_SRCS ${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c ${HDF5_BINARY_DIR}/shared/H5lib_settings.c)
|
||||
add_custom_target (gen_${HDF5_LIBSH_TARGET} ALL DEPENDS ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp1 ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp2)
|
||||
|
||||
add_custom_target (gen_${HDF5_LIBSH_TARGET} ALL DEPENDS ${shared_gen_SRCS})
|
||||
add_library (${HDF5_LIBSH_TARGET} SHARED ${common_SRCS} ${shared_gen_SRCS} ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS})
|
||||
target_include_directories(${HDF5_LIBSH_TARGET}
|
||||
PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
|
||||
|
||||
@@ -843,6 +843,7 @@ if (HDF5_ENABLE_DEPRECATED_SYMBOLS)
|
||||
-D "TEST_ARGS:STRING="
|
||||
-D "TEST_EXPECT=0"
|
||||
-D "TEST_MASK_ERROR=true"
|
||||
-D "ERROR_APPEND=1"
|
||||
-D "TEST_OUTPUT=err_compat.txt"
|
||||
-D "TEST_REFERENCE=err_compat_1"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/H5TEST"
|
||||
@@ -877,6 +878,7 @@ else ()
|
||||
-D "TEST_ARGS:STRING="
|
||||
-D "TEST_EXPECT=0"
|
||||
-D "TEST_MASK_ERROR=true"
|
||||
-D "ERROR_APPEND=1"
|
||||
-D "TEST_OUTPUT=error_test.txt"
|
||||
-D "TEST_REFERENCE=error_test_1"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/H5TEST"
|
||||
@@ -943,6 +945,7 @@ if (BUILD_SHARED_LIBS)
|
||||
-D "TEST_ARGS:STRING="
|
||||
-D "TEST_EXPECT=0"
|
||||
-D "TEST_MASK_ERROR=true"
|
||||
-D "ERROR_APPEND=1"
|
||||
-D "TEST_OUTPUT=err_compat.txt"
|
||||
-D "TEST_REFERENCE=err_compat_1"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/H5TEST-shared"
|
||||
@@ -977,6 +980,7 @@ if (BUILD_SHARED_LIBS)
|
||||
-D "TEST_ARGS:STRING="
|
||||
-D "TEST_EXPECT=0"
|
||||
-D "TEST_MASK_ERROR=true"
|
||||
-D "ERROR_APPEND=1"
|
||||
-D "TEST_OUTPUT=error_test.txt"
|
||||
-D "TEST_REFERENCE=error_test_1"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/H5TEST-shared"
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
|
||||
set (LIST_OTHER_TEST_FILES
|
||||
${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/h5copy_misc1.out
|
||||
${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/h5copy_misc1.err
|
||||
${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/tudfilter.h5.txt
|
||||
${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/tudfilter.h5_ERR.txt
|
||||
${HDF5_TOOLS_TEST_H5COPY_SOURCE_DIR}/testfiles/h5copy_plugin_fail_ERR.out.h5.txt
|
||||
@@ -250,6 +251,7 @@
|
||||
-D "TEST_OUTPUT=./testfiles/${testname}.out.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=./testfiles/${testname}.out"
|
||||
-D "TEST_ERRREF=./testfiles/${testname}.err"
|
||||
-D "TEST_MASK=true"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
|
||||
1
tools/test/h5copy/testfiles/h5copy_misc1.err
Normal file
1
tools/test/h5copy/testfiles/h5copy_misc1.err
Normal file
@@ -0,0 +1 @@
|
||||
h5copy error: group </g1> doesn't exist. Use -p to create parent groups.
|
||||
@@ -1,3 +1,2 @@
|
||||
Copying file <./testfiles/h5copytst.h5> and object </simple> to file <./testfiles/h5copy_misc1.out.h5> and object </g1/g2/simple>
|
||||
Error in copy...Exiting
|
||||
h5copy error: group </g1> doesn't exist. Use -p to create parent groups.
|
||||
|
||||
@@ -60,6 +60,7 @@ $SRC_H5COPY_TESTFILES/h5copy_extlinks_trg.h5
|
||||
# List of expect files that will be copied over to local test dir
|
||||
LIST_OTHER_TEST_FILES="
|
||||
$SRC_H5COPY_TESTFILES/h5copy_misc1.out
|
||||
$SRC_H5COPY_TESTFILES/h5copy_misc1.err
|
||||
"
|
||||
|
||||
H5COPY=../../src/h5copy/h5copy # The tool name
|
||||
@@ -396,6 +397,7 @@ CMP_OUTPUT()
|
||||
TOOLTEST_FAIL()
|
||||
{
|
||||
expectout="$TESTDIR/$1"
|
||||
expecterr="$TESTDIR/`basename $1 .out`.err"
|
||||
actualout="$TESTDIR/$1.actualout"
|
||||
actualerr="$TESTDIR/$1.actualerr"
|
||||
actualout_sav=${actualout}-sav
|
||||
@@ -426,10 +428,7 @@ TOOLTEST_FAIL()
|
||||
echo " PASSED"
|
||||
# Verifying output text from h5copy
|
||||
if [ "$expectout" != "SKIP" ]; then
|
||||
# combine stderr to stdout to compare the output at once.
|
||||
# We may seperate stdout and stderr later.
|
||||
cat $actualerr >> $actualout
|
||||
CMP_OUTPUT $expectout $actualout
|
||||
CMP_OUTPUT $expecterr $actualerr
|
||||
fi
|
||||
else
|
||||
echo "*FAILED*"
|
||||
|
||||
@@ -168,21 +168,12 @@
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_452.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_453.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_454.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_454_ERR.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_454_ERR.err
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/dangling_link.err
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_455.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_455_ERR.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_455_ERR.err
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_456.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_457.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_457_ERR.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_457_ERR.err
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_458.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_458_ERR.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_458_ERR.err
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_459.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_459_ERR.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_459_ERR.err
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_465.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_466.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_467.txt
|
||||
@@ -238,7 +229,6 @@
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_63.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_600.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_601.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_601_ERR.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_601_ERR.err
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_603.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_604.txt
|
||||
@@ -293,6 +283,7 @@
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_8625.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_8639.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_ud.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_udfail.err
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_udfail.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_v1.txt
|
||||
${HDF5_TOOLS_TEST_H5DIFF_SOURCE_DIR}/testfiles/h5diff_v2.txt
|
||||
@@ -400,47 +391,6 @@
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_ERR_TEST resultfile resultcode)
|
||||
# If using memchecker add tests without using scripts
|
||||
if (HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (NAME H5DIFF_ERR-${resultfile} COMMAND $<TARGET_FILE:h5diff> --enable-error-stack ${ARGN})
|
||||
set_tests_properties (H5DIFF_ERR-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
|
||||
if (NOT "${resultcode}" STREQUAL "0")
|
||||
set_tests_properties (H5DIFF_ERR-${resultfile} PROPERTIES WILL_FAIL "true")
|
||||
endif ()
|
||||
if (NOT "${last_test}" STREQUAL "")
|
||||
set_tests_properties (H5DIFF_ERR-${resultfile} PROPERTIES DEPENDS ${last_test})
|
||||
endif ()
|
||||
else ()
|
||||
# Remove any output file left over from previous test run
|
||||
add_test (
|
||||
NAME H5DIFF_ERR-${resultfile}-clear-objects
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E remove
|
||||
testfiles/${resultfile}_ERR.out
|
||||
testfiles/${resultfile}_ERR.out.err
|
||||
)
|
||||
if (NOT "${last_test}" STREQUAL "")
|
||||
set_tests_properties (H5DIFF_ERR-${resultfile}-clear-objects PROPERTIES DEPENDS ${last_test})
|
||||
endif ()
|
||||
add_test (
|
||||
NAME H5DIFF_ERR-${resultfile}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:h5diff>"
|
||||
-D "TEST_ARGS:STRING=--enable-error-stack;${ARGN}"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
|
||||
-D "TEST_OUTPUT=${resultfile}_ERR.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=${resultfile}_ERR.txt"
|
||||
-D "TEST_MASK_ERROR=true"
|
||||
-D "TEST_APPEND=EXIT CODE:"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (H5DIFF_ERR-${resultfile} PROPERTIES DEPENDS H5DIFF_ERR-${resultfile}-clear-objects)
|
||||
endif ()
|
||||
set (last_test "H5DIFF_ERR-${resultfile}")
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_PH5_TEST resultfile resultcode)
|
||||
# If using memchecker add tests without using scripts
|
||||
if (HDF5_ENABLE_USING_MEMCHECKER)
|
||||
@@ -529,53 +479,6 @@
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_UD_ERR_TEST testname resultcode resultfile)
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
# Remove any output file left over from previous test run
|
||||
add_test (
|
||||
NAME H5DIFF_UD_ERR-${testname}-clearall-objects
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E remove
|
||||
testfiles/${resultfile}_ERR.out
|
||||
testfiles/${resultfile}_ERR.out.err
|
||||
)
|
||||
if ("${resultcode}" STREQUAL "2")
|
||||
add_test (
|
||||
NAME H5DIFF_UD_ERR-${testname}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:h5diff-shared>"
|
||||
-D "TEST_ARGS:STRING=--enable-error-stack;${ARGN}"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
|
||||
-D "TEST_OUTPUT=${resultfile}_ERR.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=${resultfile}_ERR.txt"
|
||||
-D "TEST_MASK_ERROR=true"
|
||||
-D "TEST_APPEND=EXIT CODE:"
|
||||
-D "TEST_ENV_VAR=HDF5_PLUGIN_PATH"
|
||||
-D "TEST_ENV_VALUE=${CMAKE_BINARY_DIR}"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
else ()
|
||||
add_test (
|
||||
NAME H5DIFF_UD_ERR-${testname}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:h5diff-shared>"
|
||||
-D "TEST_ARGS:STRING=--enable-error-stack;${ARGN}"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
|
||||
-D "TEST_OUTPUT=${resultfile}_ERR.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=${resultfile}_ERR.txt"
|
||||
-D "TEST_MASK_ERROR=true"
|
||||
-D "TEST_APPEND=EXIT CODE:"
|
||||
-D "TEST_ENV_VAR=HDF5_PLUGIN_PATH"
|
||||
-D "TEST_ENV_VALUE=${CMAKE_BINARY_DIR}/plugins"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
endif ()
|
||||
set_tests_properties (H5DIFF_UD_ERR-${testname} PROPERTIES DEPENDS H5DIFF_UD_ERR-${testname}-clearall-objects)
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
##############################################################################
|
||||
##############################################################################
|
||||
### T H E T E S T S ###
|
||||
@@ -798,26 +701,16 @@
|
||||
h5diff_453.out.err
|
||||
h5diff_454.out
|
||||
h5diff_454.out.err
|
||||
h5diff_454_ERR.out
|
||||
h5diff_454_ERR.out.err
|
||||
h5diff_455.out
|
||||
h5diff_455.out.err
|
||||
h5diff_455_ERR.out
|
||||
h5diff_455_ERR.out.err
|
||||
h5diff_456.out
|
||||
h5diff_456.out.err
|
||||
h5diff_457.out
|
||||
h5diff_457.out.err
|
||||
h5diff_457_ERR.out
|
||||
h5diff_457_ERR.out.err
|
||||
h5diff_458.out
|
||||
h5diff_458.out.err
|
||||
h5diff_458_ERR.out
|
||||
h5diff_458_ERR.out.err
|
||||
h5diff_459.out
|
||||
h5diff_459.out.err
|
||||
h5diff_459_ERR.out
|
||||
h5diff_459_ERR.out.err
|
||||
h5diff_465.out
|
||||
h5diff_465.out.err
|
||||
h5diff_466.out
|
||||
@@ -922,8 +815,6 @@
|
||||
h5diff_600.out.err
|
||||
h5diff_601.out
|
||||
h5diff_601.out.err
|
||||
h5diff_601_ERR.out
|
||||
h5diff_601_ERR.out.err
|
||||
h5diff_603.out
|
||||
h5diff_603.out.err
|
||||
h5diff_604.out
|
||||
@@ -1181,7 +1072,6 @@ ADD_H5_TEST (h5diff_600 1 ${FILE1})
|
||||
|
||||
# 6.1: Check if non-exist object name is specified
|
||||
ADD_H5_TEST (h5diff_601 2 ${FILE1} ${FILE1} nono_obj)
|
||||
ADD_H5_ERR_TEST (h5diff_601 2 ${FILE1} ${FILE1} nono_obj)
|
||||
|
||||
# ##############################################################################
|
||||
# # -d
|
||||
@@ -1481,26 +1371,21 @@ ADD_H5_TEST (h5diff_453 2 --follow-symlinks -v --no-dangling-links ${FILE13} $
|
||||
|
||||
# dangling link found for soft links (obj to obj)
|
||||
ADD_H5_TEST (h5diff_454 2 --follow-symlinks -v --no-dangling-links ${FILE13} ${FILE13} /softlink_dset2 /softlink_noexist)
|
||||
ADD_H5_ERR_TEST (h5diff_454 2 --follow-symlinks -v --no-dangling-links ${FILE13} ${FILE13} /softlink_dset2 /softlink_noexist)
|
||||
|
||||
# dangling link found for soft links (obj to obj) Both dangle links
|
||||
ADD_H5_TEST (h5diff_455 2 --follow-symlinks -v --no-dangling-links ${FILE13} ${FILE13} /softlink_noexist /softlink_noexist)
|
||||
ADD_H5_ERR_TEST (h5diff_455 2 --follow-symlinks -v --no-dangling-links ${FILE13} ${FILE13} /softlink_noexist /softlink_noexist)
|
||||
|
||||
# dangling link found for ext links (FILE to FILE)
|
||||
ADD_H5_TEST (h5diff_456 2 --follow-symlinks -v --no-dangling-links ${FILE15} ${FILE15})
|
||||
|
||||
# dangling link found for ext links (obj to obj). target file exist
|
||||
ADD_H5_TEST (h5diff_457 2 --follow-symlinks -v --no-dangling-links ${FILE15} ${FILE15} /ext_link_dset1 /ext_link_noexist1)
|
||||
ADD_H5_ERR_TEST (h5diff_457 2 --follow-symlinks -v --no-dangling-links ${FILE15} ${FILE15} /ext_link_dset1 /ext_link_noexist1)
|
||||
|
||||
# dangling link found for ext links (obj to obj). target file NOT exist
|
||||
ADD_H5_TEST (h5diff_458 2 --follow-symlinks -v --no-dangling-links ${FILE15} ${FILE15} /ext_link_dset1 /ext_link_noexist2)
|
||||
ADD_H5_ERR_TEST (h5diff_458 2 --follow-symlinks -v --no-dangling-links ${FILE15} ${FILE15} /ext_link_dset1 /ext_link_noexist2)
|
||||
|
||||
# dangling link found for ext links (obj to obj). Both dangle links
|
||||
ADD_H5_TEST (h5diff_459 2 --follow-symlinks -v --no-dangling-links ${FILE15} ${FILE15} /ext_link_noexist1 /ext_link_noexist2)
|
||||
ADD_H5_ERR_TEST (h5diff_459 2 --follow-symlinks -v --no-dangling-links ${FILE15} ${FILE15} /ext_link_noexist1 /ext_link_noexist2)
|
||||
|
||||
# dangling link --follow-symlinks (obj vs obj)
|
||||
# (HDFFV-7836)
|
||||
|
||||
@@ -62,6 +62,7 @@ LIST_HDF5_TEST_FILES="
|
||||
$SRC_H5DIFF_TESTFILES/tudfilter.h5
|
||||
$SRC_H5DIFF_TESTFILES/tudfilter2.h5
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_ud.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_udfail.err
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_udfail.txt
|
||||
"
|
||||
|
||||
@@ -204,7 +205,7 @@ VERIFY() {
|
||||
TOOLTEST() {
|
||||
expect="$TESTDIR/$1"
|
||||
actual="$TESTDIR/`basename $1 .txt`.out"
|
||||
actual_err="$TESTDIR/`basename $1 .txt`.err"
|
||||
actual_err="$TESTDIR/`basename $1 .txt`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
shift
|
||||
@@ -287,6 +288,90 @@ TOOLTEST() {
|
||||
rm -f $actual_sorted $expect_sorted
|
||||
fi
|
||||
}
|
||||
# Same as TOOLSET except only err file checked
|
||||
TOOLTEST_ERR() {
|
||||
expect="$TESTDIR/$1"
|
||||
expect_err="$TESTDIR/`basename $1 .txt`.err"
|
||||
actual="$TESTDIR/`basename $1 .txt`.out"
|
||||
actual_err="$TESTDIR/`basename $1 .txt`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
shift
|
||||
if test -n "$pmode"; then
|
||||
RUNCMD=$RUNPARALLEL
|
||||
else
|
||||
RUNCMD=$RUNSERIAL
|
||||
fi
|
||||
|
||||
# Run test.
|
||||
TESTING $H5DIFF $@
|
||||
(
|
||||
#echo "#############################"
|
||||
#echo "Expected output for '$H5DIFF $@'"
|
||||
#echo "#############################"
|
||||
cd $TESTDIR
|
||||
eval $ENVCMD $RUNCMD $H5DIFF_BIN "$@"
|
||||
) >$actual 2>$actual_err
|
||||
EXIT_CODE=$?
|
||||
# save actual and actual_err in case they are needed later.
|
||||
cp $actual $actual_sav
|
||||
STDOUT_FILTER $actual
|
||||
cp $actual_err $actual_err_sav
|
||||
STDERR_FILTER $actual_err
|
||||
# don't add exit code check in pmode, as it causes failure. (exit code
|
||||
# is from mpirun not tool)
|
||||
# if any problem occurs relate to an exit code, it will be caught in
|
||||
# serial mode, so the test is fullfilled.
|
||||
if test $h5haveexitcode = 'yes' -a -z "$pmode"; then
|
||||
echo "EXIT CODE: $EXIT_CODE" >> $actual
|
||||
fi
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
echo " CREATED"
|
||||
cp $actual $expect
|
||||
echo " Expected result (*.ddl) missing"
|
||||
nerrors="`expr $nerrors + 1`"
|
||||
elif $CMP $expect_err $actual_err; then
|
||||
echo " PASSED"
|
||||
elif test $h5haveexitcode = 'yes' -a -z "$pmode"; then
|
||||
echo "*FAILED*"
|
||||
echo " Expected result ($expect_err) differs from actual result ($actual_err)"
|
||||
nerrors="`expr $nerrors + 1`"
|
||||
test yes = "$verbose" && $DIFF $expect_err $actual_err |sed 's/^/ /'
|
||||
else
|
||||
# parallel mode output are often of different ordering from serial
|
||||
# output. If the sorted expect_err and actual_err files compare the same,
|
||||
# it is safe to assume the actual output match the expected file.
|
||||
expect_sorted=expect_sorted
|
||||
actual_sorted=actual_sorted
|
||||
sort $expect_err -o $expect_sorted
|
||||
sort $actual_err -o $actual_sorted
|
||||
mv $expect_sorted.noexit $expect_sorted
|
||||
if $CMP $expect_sorted $actual_sorted; then
|
||||
echo " PASSED"
|
||||
else
|
||||
echo "*FAILED*"
|
||||
nerrors="`expr $nerrors + 1`"
|
||||
if test yes = "$verbose"; then
|
||||
echo "====Expected result ($expect_sorted) differs from actual result ($actual_sorted)"
|
||||
$DIFF $expect_sorted $actual_sorted |sed 's/^/ /'
|
||||
echo "====The actual output ($actual_sav)"
|
||||
sed 's/^/ /' < $actual_sav
|
||||
echo "====The actual stderr ($actual_err_sav)"
|
||||
sed 's/^/ /' < $actual_err_sav
|
||||
echo "====End of actual stderr ($actual_err_sav)"
|
||||
echo ""
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Clean up output file
|
||||
if test -z "$HDF5_NOCLEANUP"; then
|
||||
rm -f $actual $actual_err $actual_sav $actual_err_sav
|
||||
rm -f $actual_sorted $expect_sorted
|
||||
fi
|
||||
}
|
||||
|
||||
##############################################################################
|
||||
### T H E T E S T S
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
Warning: </softlink_noexist> is a dangling link.
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
EXIT CODE: 2
|
||||
@@ -1,4 +0,0 @@
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
@@ -1,6 +0,0 @@
|
||||
Warning: </softlink_noexist> is a dangling link.
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
EXIT CODE: 2
|
||||
@@ -1,4 +0,0 @@
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
@@ -1,6 +0,0 @@
|
||||
Warning: </ext_link_noexist1> is a dangling link.
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
EXIT CODE: 2
|
||||
@@ -1,4 +0,0 @@
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
@@ -1,6 +0,0 @@
|
||||
Warning: </ext_link_noexist2> is a dangling link.
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
EXIT CODE: 2
|
||||
@@ -1,4 +0,0 @@
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
@@ -1,6 +0,0 @@
|
||||
Warning: </ext_link_noexist1> is a dangling link.
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): treat dangling link as error
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
EXIT CODE: 2
|
||||
@@ -142,5 +142,4 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]]
|
||||
Use h5diff file1 file1 /g1/dset1 /g1/dset2 to compare
|
||||
'/g1/dset1' and '/g1/dset2' in the same file
|
||||
|
||||
h5diff error: missing file names
|
||||
EXIT CODE: 1
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
Object </nono_obj> could not be found in <h5diff_basic1.h5>
|
||||
H5tools-DIAG: Error detected in HDF5:tools (version (number)) thread (IDs):
|
||||
#000: (file name) line (number) in h5diff(): Error: Object could not be found
|
||||
major: Failure in tools library
|
||||
minor: error in function
|
||||
EXIT CODE: 2
|
||||
12
tools/test/h5diff/testfiles/h5diff_udfail.err
Normal file
12
tools/test/h5diff/testfiles/h5diff_udfail.err
Normal file
@@ -0,0 +1,12 @@
|
||||
|
||||
file1 file2
|
||||
---------------------------------------
|
||||
x x /
|
||||
x x /dynlibud
|
||||
|
||||
group : </> and </>
|
||||
0 differences found
|
||||
dataset: </dynlibud> and </dynlibud>
|
||||
0 differences found
|
||||
Warning: dataset </dynlibud> cannot be read, user defined filter is not available
|
||||
EXIT CODE: 2
|
||||
@@ -8,5 +8,4 @@ group : </> and </>
|
||||
0 differences found
|
||||
dataset: </dynlibud> and </dynlibud>
|
||||
0 differences found
|
||||
Warning: dataset </dynlibud> cannot be read, user defined filter is not available
|
||||
EXIT CODE: 2
|
||||
|
||||
@@ -226,6 +226,7 @@ $SRC_H5DIFF_TESTFILES/h5diff_451.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_452.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_453.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_454.txt
|
||||
$SRC_H5DIFF_TESTFILES/dangling_link.err
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_455.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_456.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_457.txt
|
||||
@@ -286,6 +287,7 @@ $SRC_H5DIFF_TESTFILES/h5diff_62.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_63.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_600.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_601.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_601_ERR.err
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_603.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_604.txt
|
||||
$SRC_H5DIFF_TESTFILES/h5diff_605.txt
|
||||
@@ -462,8 +464,9 @@ TESTING() {
|
||||
#
|
||||
TOOLTEST() {
|
||||
expect="$TESTDIR/$1"
|
||||
expect_err="$TESTDIR/`basename $1 .txt`.err"
|
||||
actual="$TESTDIR/`basename $1 .txt`.out"
|
||||
actual_err="$TESTDIR/`basename $1 .txt`.err"
|
||||
actual_err="$TESTDIR/`basename $1 .txt`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
shift
|
||||
@@ -488,7 +491,6 @@ TOOLTEST() {
|
||||
STDOUT_FILTER $actual
|
||||
cp $actual_err $actual_err_sav
|
||||
STDERR_FILTER $actual_err
|
||||
cat $actual_err >> $actual
|
||||
# don't add exit code check in pmode, as it causes failure. (exit code
|
||||
# is from mpirun not tool)
|
||||
# if any problem occurs relate to an exit code, it will be caught in
|
||||
|
||||
@@ -490,7 +490,6 @@ TOOLTEST() {
|
||||
STDOUT_FILTER $actual
|
||||
cp $actual_err $actual_err_sav
|
||||
STDERR_FILTER $actual_err
|
||||
cat $actual_err >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -534,7 +533,6 @@ TOOLTEST2() {
|
||||
cd $TESTDIR
|
||||
$RUNSERIAL $DUMPER_BIN "$@"
|
||||
) >$actual 2>$actual_err
|
||||
cat $actual_err >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -593,7 +591,6 @@ TOOLTEST2A() {
|
||||
cd $TESTDIR
|
||||
$RUNSERIAL $DUMPER_BIN "$@"
|
||||
) >$actual 2>$actual_err
|
||||
cat $actual_err >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -660,7 +657,6 @@ TOOLTEST2B() {
|
||||
cd $TESTDIR
|
||||
$RUNSERIAL $DUMPER_BIN "$@"
|
||||
) >$actual 2>$actual_err
|
||||
cat $actual_err >> $actual
|
||||
|
||||
if [ ! -f $expectdata ]; then
|
||||
# Create the expect data file if it doesn't yet exist.
|
||||
@@ -717,7 +713,6 @@ TOOLTEST3() {
|
||||
-e 's/H5Eget_auto[1-2]*/H5Eget_auto(1 or 2)/' \
|
||||
-e 's/H5Eset_auto[1-2]*/H5Eset_auto(1 or 2)/' \
|
||||
$actual_err > $actual_ext
|
||||
cat $actual_ext >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -776,7 +771,6 @@ TOOLTEST4() {
|
||||
-e 's/H5Eget_auto[1-2]*/H5Eget_auto(1 or 2)/' \
|
||||
-e 's/H5Eset_auto[1-2]*/H5Eset_auto(1 or 2)/' \
|
||||
$actual_err > $actual_ext
|
||||
#cat $actual_ext >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -842,7 +836,6 @@ TOOLTEST5() {
|
||||
-e 's/H5Eget_auto[1-2]*/H5Eget_auto(1 or 2)/' \
|
||||
-e 's/H5Eset_auto[1-2]*/H5Eset_auto(1 or 2)/' \
|
||||
$actual_err > $actual_ext
|
||||
#cat $actual_ext >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -886,7 +879,6 @@ TOOLTEST_HELP() {
|
||||
cd $TESTDIR
|
||||
$RUNSERIAL $DUMPER_BIN "$@"
|
||||
) >$actual 2>$actual_err
|
||||
cat $actual_err >> $actual
|
||||
|
||||
if [ ! -f $expectdata ]; then
|
||||
# Create the expect data file if it doesn't yet exist.
|
||||
|
||||
@@ -235,7 +235,6 @@ TOOLTEST() {
|
||||
STDOUT_FILTER $actual
|
||||
cp $actual_err $actual_err_sav
|
||||
STDERR_FILTER $actual_err
|
||||
cat $actual_err >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -278,7 +277,6 @@ TOOLTEST2() {
|
||||
cd $TESTDIR
|
||||
$RUNSERIAL $DUMPER_BIN "$@"
|
||||
) >$actual 2>$actual_err
|
||||
cat $actual_err >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -348,7 +346,6 @@ TOOLTEST3() {
|
||||
-e 's/H5Eget_auto[1-2]*/H5Eget_auto(1 or 2)/' \
|
||||
-e 's/H5Eset_auto[1-2]*/H5Eset_auto(1 or 2)/' \
|
||||
$actual_err > $actual_ext
|
||||
cat $actual_ext >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
@@ -406,7 +403,6 @@ TOOLTEST4() {
|
||||
-e 's/H5Eget_auto[1-2]*/H5Eget_auto(1 or 2)/' \
|
||||
-e 's/H5Eset_auto[1-2]*/H5Eset_auto(1 or 2)/' \
|
||||
$actual_err > $actual_ext
|
||||
#cat $actual_ext >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
|
||||
@@ -22,10 +22,8 @@
|
||||
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
|
||||
@@ -49,6 +47,12 @@
|
||||
h5fc_v_err.ddl
|
||||
h5fc_v_err.ddl.err
|
||||
)
|
||||
set (HDF5_REFERENCE_ERR_FILES
|
||||
h5fc_d_file.ddl.err
|
||||
h5fc_dname.err
|
||||
h5fc_nonexistfile.ddl.err
|
||||
h5fc_nonexistdset_file.ddl.err
|
||||
)
|
||||
set (HDF5_REFERENCE_TEST_FILES
|
||||
h5fc_non_v3.h5
|
||||
h5fc_edge_v3.h5
|
||||
@@ -78,6 +82,10 @@
|
||||
HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${ddl_file}" "${PROJECT_BINARY_DIR}/testfiles/${ddl_file}" "h5fc_files")
|
||||
endforeach ()
|
||||
|
||||
foreach (h5_file ${HDF5_REFERENCE_ERR_FILES})
|
||||
HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5fc_files")
|
||||
endforeach ()
|
||||
|
||||
foreach (h5_file ${HDF5_REFERENCE_TEST_FILES})
|
||||
HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5FC_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5fc_files")
|
||||
endforeach ()
|
||||
@@ -119,6 +127,7 @@
|
||||
-D "TEST_OUTPUT=${testname}.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=${resultfile}"
|
||||
-D "TEST_ERRREF=${resultfile}.err"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (H5FC-${testname}-${testfile} PROPERTIES DEPENDS "H5FC-${testname}-${testfile}-tmpfile")
|
||||
@@ -141,6 +150,42 @@
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_NOERR_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/outtmp.h5
|
||||
./testfiles/${testname}.out
|
||||
./testfiles/${testname}.out.err
|
||||
)
|
||||
if (NOT "${last_test}" STREQUAL "")
|
||||
set_tests_properties (H5FC-${testname}-clear-objects PROPERTIES DEPENDS ${last_test})
|
||||
endif ()
|
||||
add_test (
|
||||
NAME H5FC-${testname}-${testfile}-tmpfile
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E copy_if_different ${HDF5_TOOLS_TEST_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=$<TARGET_FILE:h5format_convert>"
|
||||
-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}")
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_MASK_OUTPUT testname resultfile resultcode testfile)
|
||||
# If using memchecker add tests without using scripts
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
@@ -433,17 +478,17 @@
|
||||
# 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)
|
||||
ADD_H5_NOERR_OUTPUT (h5fc_v_non_chunked h5fc_v_non_chunked.ddl 0 old_h5fc_ext_none.h5 -d /DSET_CONTIGUOUS -v)
|
||||
ADD_H5_NOERR_OUTPUT (h5fc_v_bt1 h5fc_v_bt1.ddl 0 old_h5fc_ext_none.h5 -d /GROUP/DSET_BT2 --verbose)
|
||||
ADD_H5_NOERR_OUTPUT (h5fc_v_ndata_bt1 h5fc_v_ndata_bt1.ddl 0 old_h5fc_ext_none.h5 -d /DSET_NDATA_BT2 -v -n)
|
||||
ADD_H5_NOERR_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)
|
||||
ADD_H5_NOERR_OUTPUT (h5fc_v_n_1d h5fc_v_n_1d.ddl 0 h5fc_ext_none.h5 -d /DSET_EA -v -n)
|
||||
ADD_H5_NOERR_OUTPUT (h5fc_v_n_all h5fc_v_n_all.ddl 0 h5fc_non_v3.h5 -v -n)
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
25
tools/test/h5format_convert/testfiles/h5fc_d_file-d.ddl
Normal file
25
tools/test/h5format_convert/testfiles/h5fc_d_file-d.ddl
Normal file
@@ -0,0 +1,25 @@
|
||||
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
|
||||
|
||||
Examples of use:
|
||||
|
||||
h5format_convert -d /group/dataset file_name
|
||||
Convert the dataset </group/dataset> in the HDF5 file <file_name>:
|
||||
a. chunked dataset: convert the chunk indexing type to version 1 B-tree
|
||||
b. compact/contiguous dataset: downgrade the layout version to 3
|
||||
c. virtual dataset: no action
|
||||
|
||||
h5format_convert file_name
|
||||
Convert all datasets in the HDF5 file <file_name>:
|
||||
a. chunked dataset: convert the chunk indexing type to version 1 B-tree
|
||||
b. compact/contiguous dataset: downgrade the layout version to 3
|
||||
c. virtual dataset: no action
|
||||
|
||||
h5format_convert -n -d /group/dataset file_name
|
||||
Go through all the steps except the actual conversion when
|
||||
converting the dataset </group/dataset> in the HDF5 file <file_name>.
|
||||
@@ -23,4 +23,3 @@ h5format_convert file_name
|
||||
h5format_convert -n -d /group/dataset file_name
|
||||
Go through all the steps except the actual conversion when
|
||||
converting the dataset </group/dataset> in the HDF5 file <file_name>.
|
||||
h5format_convert error: missing file name
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
h5format_convert error: missing file name
|
||||
@@ -23,4 +23,3 @@ h5format_convert file_name
|
||||
h5format_convert -n -d /group/dataset file_name
|
||||
Go through all the steps except the actual conversion when
|
||||
converting the dataset </group/dataset> in the HDF5 file <file_name>.
|
||||
h5format_convert error: No dataset name
|
||||
|
||||
1
tools/test/h5format_convert/testfiles/h5fc_dname.err
Normal file
1
tools/test/h5format_convert/testfiles/h5fc_dname.err
Normal file
@@ -0,0 +1 @@
|
||||
h5format_convert error: No dataset name
|
||||
@@ -103,13 +103,18 @@ $SRC_H5FORMCONV_TESTFILES/old_h5fc_ext3_isf.h5
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_err_level.h5
|
||||
"
|
||||
|
||||
LIST_ERR_TEST_FILES="
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_d_file.ddl.err
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_dname.err
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_nonexistfile.ddl.err
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_nonexistdset_file.ddl.err
|
||||
"
|
||||
|
||||
LIST_OTHER_TEST_FILES="
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_help.ddl
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_nooption.ddl
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_nonexistfile.ddl
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_d_file.ddl
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_dname.ddl
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_nonexistdset_file.ddl
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_v_non_chunked.ddl
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_v_bt1.ddl
|
||||
$SRC_H5FORMCONV_TESTFILES/h5fc_v_ndata_bt1.ddl
|
||||
@@ -137,7 +142,7 @@ $SRC_H5FORMCONV_TESTFILES/h5fc_v_err.ddl.err
|
||||
#
|
||||
# copy test files and expected output files from source dirs to test dir
|
||||
#
|
||||
COPY_TESTFILES="$LIST_HDF5_TEST_FILES $LIST_OTHER_TEST_FILES"
|
||||
COPY_TESTFILES="$LIST_HDF5_TEST_FILES $LIST_ERR_TEST_FILES $LIST_OTHER_TEST_FILES"
|
||||
|
||||
COPY_TESTFILES_TO_TESTDIR()
|
||||
{
|
||||
@@ -193,6 +198,9 @@ TESTING() {
|
||||
echo "Testing $* $SPACES" | cut -c1-80 | tr -d '\012'
|
||||
}
|
||||
|
||||
# Source in the output filter function definitions.
|
||||
. $srcdir/../../../bin/output_filter.sh
|
||||
|
||||
# Run a test and print PASS or *FAIL*. If a test fails then increment
|
||||
# the `nerrors' global variable and (if $verbose is set) display the
|
||||
# difference between the actual output and the expected output. The
|
||||
@@ -212,8 +220,9 @@ TESTING() {
|
||||
TOOLTEST_OUT() {
|
||||
# Prepare expected and actual output
|
||||
expect="$TESTDIR/$1"
|
||||
expect_err="$TESTDIR/`basename $1 .ddl`.err"
|
||||
actual="$TESTDIR/`basename $1 .ddl`.out"
|
||||
actual_err="$TESTDIR/`basename $1 .ddl`.err"
|
||||
actual_err="$TESTDIR/`basename $1 .ddl`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
|
||||
@@ -233,7 +242,6 @@ TOOLTEST_OUT() {
|
||||
) >$actual 2>$actual_err
|
||||
cp $actual $actual_sav
|
||||
cp $actual_err $actual_err_sav
|
||||
cat $actual_err >> $actual
|
||||
|
||||
# Compare output
|
||||
COMPARE_OUT $expect $actual
|
||||
@@ -251,7 +259,7 @@ TOOLTEST_MASK_OUT() {
|
||||
expect_err="$TESTDIR/$1.err"
|
||||
actual_ext="$TESTDIR/$1.ext"
|
||||
actual="$TESTDIR/`basename $1 .ddl`.out"
|
||||
actual_err="$TESTDIR/`basename $1 .ddl`.err"
|
||||
actual_err="$TESTDIR/`basename $1 .ddl`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
|
||||
@@ -305,6 +313,42 @@ TOOLTEST_MASK_OUT() {
|
||||
$RM $actual $actual_err $actual_sav $actual_err_sav
|
||||
fi
|
||||
}
|
||||
# Same as TOOLTEST_OUT except only compares error outout
|
||||
TOOLTEST_ERR() {
|
||||
# Prepare expected and actual output
|
||||
expect="$TESTDIR/$1"
|
||||
expect_err="$TESTDIR/$1.err"
|
||||
actual="$TESTDIR/`basename $1 .ddl`.out"
|
||||
actual_err="$TESTDIR/`basename $1 .ddl`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
|
||||
# Prepare the test file
|
||||
$RM $TESTDIR/$TMPOUTFILE
|
||||
TFILE=$2
|
||||
if [ ! -z "$2" ] && [ -e $TESTDIR/$2 ] ; then
|
||||
$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
|
||||
) >$actual 2>$actual_err
|
||||
cp $actual $actual_sav
|
||||
cp $actual_err $actual_err_sav
|
||||
|
||||
# Compare output
|
||||
COMPARE_OUT $expect_err $actual_err
|
||||
|
||||
# Clean up output file
|
||||
if test -z "$HDF5_NOCLEANUP"; then
|
||||
$RM $actual $actual_err
|
||||
$RM $actual $actual_err $actual_sav $actual_err_sav
|
||||
fi
|
||||
}
|
||||
|
||||
# To check that the tool exits success, no output
|
||||
# Assume all short options
|
||||
@@ -406,7 +450,7 @@ COPY_TESTFILES_TO_TESTDIR
|
||||
# h5format_convert nonexist.h5 (no options, file does not exist)
|
||||
TOOLTEST_OUT h5fc_help.ddl '' --help
|
||||
TOOLTEST_OUT h5fc_nooption.ddl ''
|
||||
TOOLTEST_OUT h5fc_nonexistfile.ddl nonexist.h5
|
||||
TOOLTEST_ERR h5fc_nonexistfile.ddl nonexist.h5
|
||||
#
|
||||
#
|
||||
# h5format_convert -d old_h5fc_ext_none.h5 (just -d option, file exists)
|
||||
@@ -416,7 +460,7 @@ TOOLTEST_OUT h5fc_nonexistfile.ddl nonexist.h5
|
||||
TOOLTEST_OUT h5fc_d_file.ddl old_h5fc_ext_none.h5 -d
|
||||
TOOLTEST_OUT h5fc_d_file.ddl old_h5fc_ext_none.h5 --dname
|
||||
TOOLTEST_OUT h5fc_dname.ddl '' --dname
|
||||
TOOLTEST_OUT h5fc_nonexistdset_file.ddl old_h5fc_ext_none.h5 --dname=nonexist
|
||||
TOOLTEST_ERR h5fc_nonexistdset_file.ddl old_h5fc_ext_none.h5 --dname=nonexist
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
@@ -74,6 +74,8 @@
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
|
||||
-D "TEST_OUTPUT=${expectfile}.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_ERRREF=testfiles/${expectfile}.txt"
|
||||
-D "TEST_SKIP_COMPARE=1"
|
||||
-D "TEST_REFERENCE=testfiles/${expectfile}.txt"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
|
||||
@@ -47,6 +47,12 @@
|
||||
${HDF5_TOOLS_DIR}/testfiles/tdset_idx.h5
|
||||
)
|
||||
|
||||
set (LIST_ERR_TEST_FILES
|
||||
${HDF5_TOOLS_DIR}/test/h5ls/errfiles/nosuchfile.err
|
||||
${HDF5_TOOLS_DIR}/test/h5ls/errfiles/textlinksrc-nodangle-1.err
|
||||
${HDF5_TOOLS_DIR}/test/h5ls/errfiles/tgroup-1.err
|
||||
)
|
||||
|
||||
set (LIST_OTHER_TEST_FILES
|
||||
${HDF5_TOOLS_DIR}/testfiles/help-1.ls
|
||||
${HDF5_TOOLS_DIR}/testfiles/help-2.ls
|
||||
@@ -116,6 +122,10 @@
|
||||
get_filename_component(fname "${listfiles}" NAME)
|
||||
HDFTEST_COPY_FILE("${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/${fname}" "h5ls_files")
|
||||
endforeach ()
|
||||
foreach (listfiles ${LIST_ERR_TEST_FILES})
|
||||
get_filename_component(fname "${listfiles}" NAME)
|
||||
HDFTEST_COPY_FILE("${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/${fname}" "h5ls_files")
|
||||
endforeach ()
|
||||
add_custom_target(h5ls_files ALL COMMENT "Copying files needed by h5ls tests" DEPENDS ${h5ls_files_list})
|
||||
|
||||
##############################################################################
|
||||
@@ -159,6 +169,42 @@
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_ERR_TEST resultfile resultcode)
|
||||
# If using memchecker add tests without using scripts
|
||||
if (HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (NAME H5LS-${resultfile} COMMAND $<TARGET_FILE:h5ls> ${ARGN})
|
||||
set_tests_properties (H5LS-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles")
|
||||
if ("${resultcode}" STREQUAL "1")
|
||||
set_tests_properties (H5LS-${resultfile} PROPERTIES WILL_FAIL "true")
|
||||
endif ()
|
||||
if (NOT "${last_test}" STREQUAL "")
|
||||
set_tests_properties (H5LS-${resultfile} PROPERTIES DEPENDS ${last_test})
|
||||
endif ()
|
||||
else ()
|
||||
# Remove any output file left over from previous test run
|
||||
add_test (
|
||||
NAME H5LS-${resultfile}-clear-objects
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E remove
|
||||
testfiles/${resultfile}.out
|
||||
testfiles/${resultfile}.out.err
|
||||
)
|
||||
add_test (
|
||||
NAME H5LS-${resultfile}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:h5ls>"
|
||||
-D "TEST_ARGS=${ARGN}"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
|
||||
-D "TEST_OUTPUT=${resultfile}.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=${resultfile}.ls"
|
||||
-D "TEST_ERRREF=${resultfile}.err"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (H5LS-${resultfile} PROPERTIES DEPENDS H5LS-${resultfile}-clear-objects)
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_UD_TEST testname resultcode resultfile)
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
# Remove any output file left over from previous test run
|
||||
@@ -341,7 +387,7 @@
|
||||
# test for displaying groups
|
||||
# The following combination of arguments is expected to return an error message
|
||||
# and return value 1
|
||||
ADD_H5_TEST (tgroup-1 1 -w80 -r -g tgroup.h5)
|
||||
ADD_H5_ERR_TEST (tgroup-1 1 -w80 -r -g tgroup.h5)
|
||||
ADD_H5_TEST (tgroup-2 0 -w80 -g tgroup.h5/g1)
|
||||
|
||||
# test for files with groups that have long comments
|
||||
@@ -382,7 +428,7 @@
|
||||
# tests for no-dangling-links
|
||||
# if this option is given on dangling link, h5ls should return exit code 1
|
||||
# when used alone , expect to print out help and return exit code 1
|
||||
ADD_H5_TEST (textlinksrc-nodangle-1 1 -w80 --no-dangling-links textlinksrc.h5)
|
||||
ADD_H5_ERR_TEST (textlinksrc-nodangle-1 1 -w80 --no-dangling-links textlinksrc.h5)
|
||||
# external dangling link - expected exit code 1
|
||||
ADD_H5_TEST (textlinksrc-nodangle-2 1 -w80 --follow-symlinks --no-dangling-links textlinksrc.h5)
|
||||
# soft dangling link - expected exit code 1
|
||||
@@ -444,7 +490,7 @@
|
||||
endif ()
|
||||
|
||||
# test for non-existing file
|
||||
ADD_H5_TEST (nosuchfile 1 nosuchfile.h5)
|
||||
ADD_H5_ERR_TEST (nosuchfile 1 nosuchfile.h5)
|
||||
|
||||
# test for variable length data types in verbose mode
|
||||
if (H5_WORDS_BIGENDIAN)
|
||||
|
||||
1
tools/test/h5ls/errfiles/nosuchfile.err
Normal file
1
tools/test/h5ls/errfiles/nosuchfile.err
Normal file
@@ -0,0 +1 @@
|
||||
nosuchfile.h5: unable to open file
|
||||
2
tools/test/h5ls/errfiles/textlinksrc-nodangle-1.err
Normal file
2
tools/test/h5ls/errfiles/textlinksrc-nodangle-1.err
Normal file
@@ -0,0 +1,2 @@
|
||||
Error: --no-dangling-links must be used along with --follow-symlinks option!
|
||||
|
||||
2
tools/test/h5ls/errfiles/tgroup-1.err
Normal file
2
tools/test/h5ls/errfiles/tgroup-1.err
Normal file
@@ -0,0 +1,2 @@
|
||||
Error: 'recursive' option not compatible with 'group info' option!
|
||||
|
||||
@@ -53,6 +53,7 @@ SRC_H5REPACK_TESTFILES="$SRC_TOOLS/test/h5repack/testfiles"
|
||||
SRC_H5JAM_TESTFILES="$SRC_TOOLS/test/h5jam/testfiles"
|
||||
SRC_H5STAT_TESTFILES="$SRC_TOOLS/test/h5stat/testfiles"
|
||||
SRC_H5IMPORT_TESTFILES="$SRC_TOOLS/test/h5import/testfiles"
|
||||
SRC_H5LS_ERRFILES="$SRC_TOOLS/test/h5ls/errfiles"
|
||||
|
||||
TESTDIR=./testfiles
|
||||
test -d $TESTDIR || mkdir $TESTDIR
|
||||
@@ -93,6 +94,12 @@ $SRC_H5LS_TESTFILES/tvldtypes1.h5
|
||||
$SRC_H5LS_TESTFILES/tdset_idx.h5
|
||||
"
|
||||
|
||||
LIST_ERROR_TEST_FILES="
|
||||
$SRC_H5LS_ERRFILES/nosuchfile.err
|
||||
$SRC_H5LS_ERRFILES/textlinksrc-nodangle-1.err
|
||||
$SRC_H5LS_ERRFILES/tgroup-1.err
|
||||
"
|
||||
|
||||
LIST_OTHER_TEST_FILES="
|
||||
$SRC_H5LS_TESTFILES/help-1.ls
|
||||
$SRC_H5LS_TESTFILES/help-2.ls
|
||||
@@ -228,8 +235,9 @@ TESTING() {
|
||||
# $2 and on -- argument for the h5ls tool
|
||||
TOOLTEST() {
|
||||
expect="$TESTDIR/$1"
|
||||
expect_err="$TESTDIR/`basename $1 .ls`.err"
|
||||
actual="$TESTDIR/`basename $1 .ls`.out"
|
||||
actual_err="$TESTDIR/`basename $1 .ls`.err"
|
||||
actual_err="$TESTDIR/`basename $1 .ls`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
shift
|
||||
@@ -251,7 +259,6 @@ TOOLTEST() {
|
||||
STDOUT_FILTER $actual
|
||||
cp $actual_err $actual_err_sav
|
||||
STDERR_FILTER $actual_err
|
||||
cat $actual_err >> $actual
|
||||
if [ $h5haveexitcode = 'yes' -a $exitcode -ne $retvalexpect ]; then
|
||||
echo "*FAILED*"
|
||||
nerrors="`expr $nerrors + 1`"
|
||||
|
||||
@@ -377,7 +377,8 @@
|
||||
-D "TEST_OUTPUT=${resultfile}-${testname}.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_MASK_ERROR=true"
|
||||
-D "TEST_REFERENCE=${resultfile}-${testname}.tst"
|
||||
-D "TEST_REFERENCE=${resultfile}.mty"
|
||||
-D "TEST_ERRREF=${resultfile}-${testname}.tst"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (H5REPACK_MASK-${testname} PROPERTIES DEPENDS H5REPACK_MASK-${testname}-clear-objects)
|
||||
|
||||
@@ -39,23 +39,30 @@
|
||||
h5stat_newgrat
|
||||
h5stat_newgrat-UG
|
||||
h5stat_newgrat-UA
|
||||
h5stat_err1_links
|
||||
h5stat_idx
|
||||
h5stat_links1
|
||||
h5stat_links2
|
||||
h5stat_links3
|
||||
h5stat_links4
|
||||
h5stat_links5
|
||||
h5stat_err1_dims
|
||||
h5stat_dims1
|
||||
h5stat_dims2
|
||||
h5stat_err1_numattrs
|
||||
h5stat_err2_numattrs
|
||||
h5stat_numattrs1
|
||||
h5stat_numattrs2
|
||||
h5stat_numattrs3
|
||||
h5stat_numattrs4
|
||||
)
|
||||
set (HDF5_REFERENCE_ERR_FILES
|
||||
h5stat_err_refcount
|
||||
h5stat_err_old_layout
|
||||
h5stat_err_old_fill
|
||||
h5stat_err1_dims
|
||||
h5stat_err1_links
|
||||
h5stat_err1_numattrs
|
||||
h5stat_err2_numattrs
|
||||
h5stat_notexist
|
||||
h5stat_nofile
|
||||
)
|
||||
set (HDF5_REFERENCE_TEST_FILES
|
||||
h5stat_err_refcount.h5
|
||||
h5stat_err_old_layout.h5
|
||||
@@ -71,6 +78,10 @@
|
||||
HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5STAT_SOURCE_DIR}/testfiles/${ddl_file}.ddl" "${PROJECT_BINARY_DIR}/${ddl_file}.ddl" "h5stat_files")
|
||||
endforeach ()
|
||||
|
||||
foreach (h5_file ${HDF5_REFERENCE_ERR_FILES})
|
||||
HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5STAT_SOURCE_DIR}/testfiles/${h5_file}.err" "${PROJECT_BINARY_DIR}/${h5_file}.err" "h5stat_files")
|
||||
endforeach ()
|
||||
|
||||
foreach (h5_file ${HDF5_REFERENCE_TEST_FILES})
|
||||
HDFTEST_COPY_FILE("${HDF5_TOOLS_TEST_H5STAT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5stat_files")
|
||||
endforeach ()
|
||||
@@ -118,6 +129,43 @@
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_ERR_TEST resultfile resultcode)
|
||||
# If using memchecker add tests without using scripts
|
||||
if (HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (NAME H5STAT-${resultfile} COMMAND $<TARGET_FILE:h5stat> ${ARGN})
|
||||
if (NOT "${resultcode}" STREQUAL "0")
|
||||
set_tests_properties (H5STAT-${resultfile} PROPERTIES WILL_FAIL "true")
|
||||
endif ()
|
||||
if (NOT "${last_test}" STREQUAL "")
|
||||
set_tests_properties (H5STAT-${resultfile} PROPERTIES DEPENDS ${last_test})
|
||||
endif ()
|
||||
else (HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (
|
||||
NAME H5STAT-${resultfile}-clear-objects
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E remove
|
||||
${resultfile}.out
|
||||
${resultfile}.out.err
|
||||
)
|
||||
if (NOT "${last_test}" STREQUAL "")
|
||||
set_tests_properties (H5STAT-${resultfile}-clear-objects PROPERTIES DEPENDS ${last_test})
|
||||
endif ()
|
||||
add_test (
|
||||
NAME H5STAT-${resultfile}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:h5stat>"
|
||||
-D "TEST_ARGS=${ARGN}"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
|
||||
-D "TEST_OUTPUT=${resultfile}.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=${resultfile}.mty"
|
||||
-D "TEST_ERRREF=${resultfile}.err"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (H5STAT-${resultfile} PROPERTIES DEPENDS H5STAT-${resultfile}-clear-objects)
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
##############################################################################
|
||||
##############################################################################
|
||||
### T H E T E S T S ###
|
||||
@@ -173,7 +221,7 @@
|
||||
# -g -l 8
|
||||
# --links=8
|
||||
# --links=20 -g
|
||||
ADD_H5_TEST (h5stat_err1_links 1 -l 0 h5stat_threshold.h5)
|
||||
ADD_H5_ERR_TEST (h5stat_err1_links 1 -l 0 h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_links1 0 -g -l 8 h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_links2 0 --links=8 h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_links3 0 --links=20 -g h5stat_threshold.h5)
|
||||
@@ -188,7 +236,7 @@
|
||||
# -d --dims=-1 (incorrect threshold value)
|
||||
# -gd -m 5
|
||||
# -d --di=15
|
||||
ADD_H5_TEST (h5stat_err1_dims 1 -d --dims=-1 h5stat_threshold.h5)
|
||||
ADD_H5_ERR_TEST (h5stat_err1_dims 1 -d --dims=-1 h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_dims1 0 -gd -m 5 h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_dims2 0 -d --di=15 h5stat_threshold.h5)
|
||||
#
|
||||
@@ -198,8 +246,8 @@
|
||||
# -AS -a 10
|
||||
# -a 1
|
||||
# -A --numattrs=25
|
||||
ADD_H5_TEST (h5stat_err1_numattrs 1 -a -2 h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_err2_numattrs 1 --numattrs h5stat_threshold.h5)
|
||||
ADD_H5_ERR_TEST (h5stat_err1_numattrs 1 -a -2 h5stat_threshold.h5)
|
||||
ADD_H5_ERR_TEST (h5stat_err2_numattrs 1 --numattrs h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_numattrs1 0 -AS -a 10 h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_numattrs2 0 -a 1 h5stat_threshold.h5)
|
||||
ADD_H5_TEST (h5stat_numattrs3 0 -A --numattrs=25 h5stat_threshold.h5)
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
Filename: h5stat_err_old_fill.h5
|
||||
h5stat error: unable to traverse objects/links in file "h5stat_err_old_fill.h5"
|
||||
|
||||
1
tools/test/h5stat/testfiles/h5stat_err_old_fill.err
Normal file
1
tools/test/h5stat/testfiles/h5stat_err_old_fill.err
Normal file
@@ -0,0 +1 @@
|
||||
h5stat error: unable to traverse objects/links in file "h5stat_err_old_fill.h5"
|
||||
@@ -1,2 +1 @@
|
||||
Filename: h5stat_err_old_layout.h5
|
||||
h5stat error: unable to traverse objects/links in file "h5stat_err_old_layout.h5"
|
||||
|
||||
1
tools/test/h5stat/testfiles/h5stat_err_old_layout.err
Normal file
1
tools/test/h5stat/testfiles/h5stat_err_old_layout.err
Normal file
@@ -0,0 +1 @@
|
||||
h5stat error: unable to traverse objects/links in file "h5stat_err_old_layout.h5"
|
||||
@@ -1,2 +1 @@
|
||||
Filename: h5stat_err_refcount.h5
|
||||
h5stat error: unable to traverse objects/links in file "h5stat_err_refcount.h5"
|
||||
|
||||
1
tools/test/h5stat/testfiles/h5stat_err_refcount.err
Normal file
1
tools/test/h5stat/testfiles/h5stat_err_refcount.err
Normal file
@@ -0,0 +1 @@
|
||||
h5stat error: unable to traverse objects/links in file "h5stat_err_refcount.h5"
|
||||
@@ -23,4 +23,3 @@ Usage: h5stat [OPTIONS] file
|
||||
-s, --freespace Print free space information
|
||||
-S, --summary Print summary of file space information
|
||||
--enable-error-stack Prints messages from the HDF5 error stack as they occur
|
||||
h5stat error: missing file name
|
||||
|
||||
1
tools/test/h5stat/testfiles/h5stat_nofile.err
Normal file
1
tools/test/h5stat/testfiles/h5stat_nofile.err
Normal file
@@ -0,0 +1 @@
|
||||
h5stat error: missing file name
|
||||
@@ -1,2 +1 @@
|
||||
Filename: notexist.h5
|
||||
h5stat error: unable to open file "notexist.h5"
|
||||
|
||||
1
tools/test/h5stat/testfiles/h5stat_notexist.err
Normal file
1
tools/test/h5stat/testfiles/h5stat_notexist.err
Normal file
@@ -0,0 +1 @@
|
||||
h5stat error: unable to open file "notexist.h5"
|
||||
@@ -79,6 +79,18 @@ $SRC_H5STAT_TESTFILES/h5stat_idx.h5
|
||||
$SRC_H5STAT_TESTFILES/h5stat_threshold.h5
|
||||
"
|
||||
|
||||
LIST_ERR_TEST_FILES="
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err_refcount.err
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err_old_layout.err
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err_old_fill.err
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err1_links.err
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err1_dims.err
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err1_numattrs.err
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err2_numattrs.err
|
||||
$SRC_H5STAT_TESTFILES/h5stat_notexist.err
|
||||
$SRC_H5STAT_TESTFILES/h5stat_nofile.err
|
||||
"
|
||||
|
||||
LIST_OTHER_TEST_FILES="
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err_refcount.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err_old_layout.ddl
|
||||
@@ -100,17 +112,13 @@ $SRC_H5STAT_TESTFILES/h5stat_newgrat.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_newgrat-UG.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_newgrat-UA.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_idx.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err1_links.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_links1.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_links2.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_links3.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_links4.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_links5.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err1_dims.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_dims1.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_dims2.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err1_numattrs.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_err2_numattrs.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_numattrs1.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_numattrs2.ddl
|
||||
$SRC_H5STAT_TESTFILES/h5stat_numattrs3.ddl
|
||||
@@ -120,7 +128,7 @@ $SRC_H5STAT_TESTFILES/h5stat_numattrs4.ddl
|
||||
#
|
||||
# copy test files and expected output files from source dirs to test dir
|
||||
#
|
||||
COPY_TESTFILES="$LIST_HDF5_TEST_FILES $LIST_OTHER_TEST_FILES"
|
||||
COPY_TESTFILES="$LIST_HDF5_TEST_FILES $LIST_ERR_TEST_FILES $LIST_OTHER_TEST_FILES"
|
||||
|
||||
COPY_TESTFILES_TO_TESTDIR()
|
||||
{
|
||||
@@ -184,8 +192,9 @@ TESTING() {
|
||||
#
|
||||
TOOLTEST() {
|
||||
expect="$TESTDIR/$1"
|
||||
expect_err="$TESTDIR/`basename $1 .ddl`.err"
|
||||
actual="$TESTDIR/`basename $1 .ddl`.out"
|
||||
actual_err="$TESTDIR/`basename $1 .ddl`.err"
|
||||
actual_err="$TESTDIR/`basename $1 .ddl`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
shift
|
||||
@@ -202,14 +211,17 @@ TOOLTEST() {
|
||||
STDOUT_FILTER $actual
|
||||
cp $actual_err $actual_err_sav
|
||||
STDERR_FILTER $actual_err
|
||||
cat $actual_err >> $actual
|
||||
|
||||
if [ ! -f $expect ]; then
|
||||
# Create the expect file if it doesn't yet exist.
|
||||
echo " CREATED"
|
||||
cp $actual $expect
|
||||
echo " Expected result (*.ddl) missing"
|
||||
nerrors="`expr $nerrors + 1`"
|
||||
# Compare error files if the expect file doesn't exist.
|
||||
if $CMP $expect_err $actual_err; then
|
||||
echo " PASSED"
|
||||
else
|
||||
echo "*FAILED*"
|
||||
echo " Expected result (*.err) differs from actual result (*.out.err)"
|
||||
nerrors="`expr $nerrors + 1`"
|
||||
test yes = "$verbose" && $DIFF $expect_err $actual_err |sed 's/^/ /'
|
||||
fi
|
||||
elif $CMP $expect $actual; then
|
||||
echo " PASSED"
|
||||
else
|
||||
|
||||
@@ -49,8 +49,6 @@
|
||||
h5clear_missing_file.ddl
|
||||
h5clear_noclose_after_size.ddl
|
||||
h5clear_noclose_before_size.ddl
|
||||
h5clear_no_mdc_image.ddl
|
||||
h5clear_open_fail.ddl
|
||||
h5clear_status_noclose_after_size.ddl
|
||||
h5clear_usage.ddl
|
||||
h5clear_user_equal_after_size.ddl
|
||||
@@ -60,10 +58,17 @@
|
||||
h5clear_user_less_after_size.ddl
|
||||
h5clear_user_less_before_size.ddl
|
||||
)
|
||||
set (HDF5_REFERENCE_ERR_FILES
|
||||
h5clear_no_mdc_image.err
|
||||
h5clear_open_fail.err
|
||||
)
|
||||
|
||||
foreach (h5_file ${HDF5_TEST_FILES} ${HDF5_SEC2_TEST_FILES} ${HDF5_REFERENCE_TEST_FILES})
|
||||
HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5clear_files")
|
||||
endforeach ()
|
||||
foreach (h5_file ${HDF5_REFERENCE_ERR_FILES})
|
||||
HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5clear_files")
|
||||
endforeach ()
|
||||
# make second copy of h5clear_sec2.h5
|
||||
foreach (h5_file ${HDF5_SEC2_TEST_FILES})
|
||||
HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/orig_${h5_file}" "h5clear_files")
|
||||
@@ -108,6 +113,35 @@
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_ERR_CMP testname resultfile resultcode)
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (
|
||||
NAME H5CLEAR_CMP-${testname}-clear-objects
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E remove
|
||||
testfiles/${testname}.out
|
||||
testfiles/${testname}.out.err
|
||||
)
|
||||
if (NOT "${last_test}" STREQUAL "")
|
||||
set_tests_properties (H5CLEAR_CMP-${testname}-clear-objects PROPERTIES DEPENDS ${last_test})
|
||||
endif ()
|
||||
add_test (
|
||||
NAME H5CLEAR_CMP-${testname}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:h5clear>"
|
||||
-D "TEST_ARGS:STRING=${ARGN}"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
|
||||
-D "TEST_OUTPUT=${testname}.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=${resultfile}.mty"
|
||||
-D "TEST_ERRREF=${resultfile}.err"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (H5CLEAR_CMP-${testname} PROPERTIES DEPENDS H5CLEAR_CMP-${testname}-clear-objects)
|
||||
set (last_test "H5CLEAR_CMP-${testname}")
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_CMP_WITH_COPY testname resultcode resultfile testfile)
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (
|
||||
@@ -144,6 +178,43 @@
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_ERR_CMP_WITH_COPY testname resultcode resultfile testfile)
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (
|
||||
NAME H5CLEAR_CMP-${testname}-clear-objects
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E remove
|
||||
testfiles/${testname}.out
|
||||
testfiles/${testname}.out.err
|
||||
testfiles/${testfile}
|
||||
)
|
||||
if (NOT "${last_test}" STREQUAL "")
|
||||
set_tests_properties (H5CLEAR_CMP-${testname}-clear-objects PROPERTIES DEPENDS ${last_test})
|
||||
endif ()
|
||||
add_test (
|
||||
NAME H5CLEAR_CMP-copy_${testname}
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E copy_if_different
|
||||
"${PROJECT_SOURCE_DIR}/testfiles/${testfile}" "${PROJECT_BINARY_DIR}/testfiles/${testfile}"
|
||||
)
|
||||
set_tests_properties (H5CLEAR_CMP-copy_${testname} PROPERTIES DEPENDS H5CLEAR_CMP-${testname}-clear-objects)
|
||||
add_test (
|
||||
NAME H5CLEAR_CMP-${testname}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:h5clear>"
|
||||
-D "TEST_ARGS:STRING=${ARGN};${testfile}"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles"
|
||||
-D "TEST_OUTPUT=${testname}.out"
|
||||
-D "TEST_EXPECT=${resultcode}"
|
||||
-D "TEST_REFERENCE=${resultfile}.mty"
|
||||
-D "TEST_ERRREF=${resultfile}.err"
|
||||
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (H5CLEAR_CMP-${testname} PROPERTIES DEPENDS H5CLEAR_CMP-copy_${testname})
|
||||
set (last_test "H5CLEAR_CMP-${testname}")
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
macro (ADD_H5_RETTEST testname resultcode)
|
||||
if (NOT HDF5_ENABLE_USING_MEMCHECKER)
|
||||
add_test (
|
||||
@@ -347,11 +418,11 @@ endif()
|
||||
ADD_H5_CMP (h5clr_usage_junk h5clear_usage 1 "" junk.h5)
|
||||
ADD_H5_CMP (h5clr_usage_none h5clear_usage 1 "" orig_h5clear_sec2_v3.h5)
|
||||
ADD_H5_CMP (h5clr_missing_file_m h5clear_missing_file 1 "-m")
|
||||
ADD_H5_CMP (h5clr_open_fail_s h5clear_open_fail 1 "-s" junk.h5)
|
||||
ADD_H5_ERR_CMP (h5clr_open_fail_s h5clear_open_fail 1 "-s" junk.h5)
|
||||
ADD_H5_CMP (h5clr_missing_file_ms h5clear_missing_file 1 "-m" "-s")
|
||||
ADD_H5_CMP (h5clr_open_fail_ms h5clear_open_fail 1 "-m" "-s" junk.h5)
|
||||
ADD_H5_CMP (h5clr_no_mdc_image_m h5clear_no_mdc_image 0 "-m" orig_h5clear_sec2_v2.h5)
|
||||
ADD_H5_CMP (h5clr_no_mdc_image_ms h5clear_no_mdc_image 0 "-s" "-m" orig_h5clear_sec2_v0.h5)
|
||||
ADD_H5_ERR_CMP (h5clr_open_fail_ms h5clear_open_fail 1 "-m" "-s" junk.h5)
|
||||
ADD_H5_ERR_CMP (h5clr_no_mdc_image_m h5clear_no_mdc_image 0 "-m" orig_h5clear_sec2_v2.h5)
|
||||
ADD_H5_ERR_CMP (h5clr_no_mdc_image_ms h5clear_no_mdc_image 0 "-s" "-m" orig_h5clear_sec2_v0.h5)
|
||||
#
|
||||
#
|
||||
#
|
||||
@@ -382,8 +453,8 @@ endif()
|
||||
#
|
||||
#
|
||||
# h5clear_mdc_image.h5 already has cache image removed earlier, verify the expected warning from h5clear:
|
||||
ADD_H5_CMP (h5clr_mdc_image_m h5clear_no_mdc_image 0 "-m" mod_h5clear_mdc_image.h5)
|
||||
ADD_H5_CMP (h5clr_mdc_image_sm h5clear_no_mdc_image 0 "-s" "-m" mod_h5clear_mdc_image2.h5)
|
||||
ADD_H5_ERR_CMP (h5clr_mdc_image_m h5clear_no_mdc_image 0 "-m" mod_h5clear_mdc_image.h5)
|
||||
ADD_H5_ERR_CMP (h5clr_mdc_image_sm h5clear_no_mdc_image 0 "-s" "-m" mod_h5clear_mdc_image2.h5)
|
||||
#
|
||||
#
|
||||
#
|
||||
@@ -404,7 +475,7 @@ endif()
|
||||
# "h5clear -s --increment=0 h5clear_status_noclose.h5" (clear status_flag, EOA = MAX(EOA, EOF) + 0)
|
||||
# (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_status_noclose.h5" (print EOA/EOF after the last action)
|
||||
ADD_H5_CMP_WITH_COPY (h5clr_open_fail_nc_s 1 h5clear_open_fail h5clear_status_noclose.h5 "--filesize")
|
||||
ADD_H5_ERR_CMP_WITH_COPY (h5clr_open_fail_nc_s 1 h5clear_open_fail h5clear_status_noclose.h5 "--filesize")
|
||||
ADD_H5_RETTEST (h5clr_mdc_image_nc "false" "-s" "--increment=0" h5clear_status_noclose.h5)
|
||||
ADD_H5_CMP (h5clr_no_mdc_image_nc_m h5clear_status_noclose_after_size 0 "--filesize" h5clear_status_noclose.h5)
|
||||
#
|
||||
|
||||
@@ -20,4 +20,3 @@ h5clear --increment file_name
|
||||
|
||||
h5clear --increment=512 file_name
|
||||
Set the EOA to the maximum of (EOA, EOF) + 512 for the file <file_name>.
|
||||
h5clear error: missing file name
|
||||
|
||||
1
tools/test/misc/testfiles/h5clear_missing_file.err
Normal file
1
tools/test/misc/testfiles/h5clear_missing_file.err
Normal file
@@ -0,0 +1 @@
|
||||
h5clear error: missing file name
|
||||
@@ -62,10 +62,10 @@ test -d $TESTDIR || mkdir -p $TESTDIR
|
||||
# copy test files and expected output files from source dirs to test dir
|
||||
#
|
||||
COPY_TESTFILES="
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_open_fail.err
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_no_mdc_image.err
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_usage.ddl
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_open_fail.ddl
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_missing_file.ddl
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_no_mdc_image.ddl
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_status_noclose_after_size.ddl
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_noclose_before_size.ddl
|
||||
$SRC_H5CLEAR_TESTFILES/h5clear_noclose_after_size.ddl
|
||||
@@ -179,8 +179,9 @@ TOOLTEST_OUT() {
|
||||
expected=$5
|
||||
# Prepare expected and actual output
|
||||
expect="$TESTDIR/$expected"
|
||||
expect_err="$TESTDIR/`basename $expected .ddl`.err"
|
||||
actual="$TESTDIR/`basename $expected .ddl`.out"
|
||||
actual_err="$TESTDIR/`basename $expected .ddl`.err"
|
||||
actual_err="$TESTDIR/`basename $expected .ddl`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
|
||||
@@ -192,7 +193,6 @@ TOOLTEST_OUT() {
|
||||
) >$actual 2>$actual_err
|
||||
cp $actual $actual_sav
|
||||
cp $actual_err $actual_err_sav
|
||||
cat $actual_err >> $actual
|
||||
|
||||
# Compare output
|
||||
COMPARE_OUT $expect $actual
|
||||
@@ -202,6 +202,38 @@ TOOLTEST_OUT() {
|
||||
$RM $actual $actual_err $actual_sav $actual_err_sav
|
||||
fi
|
||||
}
|
||||
# same as TOOLTEST_OUT just compare stderr
|
||||
TOOLTEST_ERR() {
|
||||
fname=$1
|
||||
option1=$2
|
||||
option2=$3
|
||||
option3=$4
|
||||
expected=$5
|
||||
# Prepare expected and actual output
|
||||
expect_err="$TESTDIR/$expected"
|
||||
expect="$TESTDIR/`basename $expected .err`.ddl"
|
||||
actual="$TESTDIR/`basename $expected .err`.out"
|
||||
actual_err="$TESTDIR/`basename $expected .err`.out.err"
|
||||
actual_sav=${actual}-sav
|
||||
actual_err_sav=${actual_err}-sav
|
||||
|
||||
# Run test.
|
||||
TESTING $H5CLEAR $option1 $option2 $option3 $option4 $fname
|
||||
(
|
||||
cd $TESTDIR
|
||||
$RUNSERIAL $H5CLEAR_BIN $option1 $option2 $option3 $option4 $fname
|
||||
) >$actual 2>$actual_err
|
||||
cp $actual $actual_sav
|
||||
cp $actual_err $actual_err_sav
|
||||
|
||||
# Compare output
|
||||
COMPARE_OUT $expect_err $actual_err
|
||||
|
||||
# Clean up output file
|
||||
if test -z "$HDF5_NOCLEANUP"; then
|
||||
$RM $actual $actual_err $actual_sav $actual_err_sav
|
||||
fi
|
||||
}
|
||||
|
||||
# $1 is the filename to open
|
||||
# $2 is the expected return from the open/check program
|
||||
@@ -274,11 +306,11 @@ TOOLTEST_OUT "" "" "" "" h5clear_usage.ddl
|
||||
TOOLTEST_OUT junk.h5 "" "" "" h5clear_usage.ddl
|
||||
TOOLTEST_OUT orig_h5clear_sec2_v3.h5 "" "" "" h5clear_usage.ddl
|
||||
TOOLTEST_OUT "" -m "" "" h5clear_missing_file.ddl
|
||||
TOOLTEST_OUT junk.h5 -s "" "" h5clear_open_fail.ddl
|
||||
TOOLTEST_ERR junk.h5 -s "" "" h5clear_open_fail.err
|
||||
TOOLTEST_OUT "" -m -s "" h5clear_missing_file.ddl
|
||||
TOOLTEST_OUT junk.h5 -m -s "" h5clear_open_fail.ddl
|
||||
TOOLTEST_OUT orig_h5clear_sec2_v2.h5 -m "" "" h5clear_no_mdc_image.ddl
|
||||
TOOLTEST_OUT orig_h5clear_sec2_v0.h5 -s -m "" h5clear_no_mdc_image.ddl
|
||||
TOOLTEST_ERR junk.h5 -m -s "" h5clear_open_fail.err
|
||||
TOOLTEST_ERR orig_h5clear_sec2_v2.h5 -m "" "" h5clear_no_mdc_image.err
|
||||
TOOLTEST_ERR orig_h5clear_sec2_v0.h5 -s -m "" h5clear_no_mdc_image.err
|
||||
#
|
||||
#
|
||||
# The following are tests to verify the expected exit code from h5clear:
|
||||
@@ -308,8 +340,8 @@ TOOLTEST h5clear_sec2_v0.h5 -l -m $FAIL
|
||||
#
|
||||
#
|
||||
# h5clear_mdc_image.h5 already has cache image removed earlier, verify the expected warning from h5clear:
|
||||
TOOLTEST_OUT mod_h5clear_mdc_image.h5 -m "" "" h5clear_no_mdc_image.ddl
|
||||
TOOLTEST_OUT mod_h5clear_mdc_image.h5 -s -m "" h5clear_no_mdc_image.ddl
|
||||
TOOLTEST_ERR mod_h5clear_mdc_image.h5 -m "" "" h5clear_no_mdc_image.err
|
||||
TOOLTEST_ERR mod_h5clear_mdc_image.h5 -s -m "" h5clear_no_mdc_image.err
|
||||
#
|
||||
#
|
||||
#
|
||||
@@ -342,16 +374,16 @@ OPEN_CHK h5clear_sec2_v2.h5 $SUCCEED
|
||||
#
|
||||
#
|
||||
#
|
||||
# (1) h5clear_status_noclose.h5
|
||||
# (1) h5clear_status_noclose.h5
|
||||
# "h5clear --filesize h5clear_status_noclose.h5" (unable to open the file because status_flag is on)
|
||||
# "h5clear -s --increment=0 h5clear_status_noclose.h5" (clear status_flag, EOA = MAX(EOA, EOF) + 0)
|
||||
# "h5clear -s --increment=0 h5clear_status_noclose.h5" (clear status_flag, EOA = MAX(EOA, EOF) + 0)
|
||||
# (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_status_noclose_user.h5" (print EOA/EOF after the last action)
|
||||
TOOLTEST_OUT h5clear_status_noclose.h5 --filesize "" "" h5clear_open_fail.ddl
|
||||
TOOLTEST_ERR h5clear_status_noclose.h5 --filesize "" "" h5clear_open_fail.err
|
||||
TOOLTEST h5clear_status_noclose.h5 -s --increment=0 $SUCCEED
|
||||
TOOLTEST_OUT h5clear_status_noclose.h5 --filesize "" "" h5clear_status_noclose_after_size.ddl
|
||||
#
|
||||
# (2) h5clear_fsm_persist_noclose.h5
|
||||
# (2) h5clear_fsm_persist_noclose.h5
|
||||
# "h5clear --filesize h5clear_fsm_persist_noclose.h5" (print EOA/EOF before the next action)
|
||||
# "h5clear --increment=0 h5clear_fsm_persist_noclose.h5" (EOA = MAX(EOA, EOF)) (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_fsm_persist_noclose.h5" (print EOA/EOF after the last action)
|
||||
@@ -364,7 +396,7 @@ TOOLTEST_OUT h5clear_fsm_persist_noclose.h5 --filesize "" "" h5clear_noclose_aft
|
||||
# "h5clear --increment h5clear_fsm_persist_equal.h5" (EOA = MAX(EOA, EOF) + 1M) (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_fsm_persist_equal.h5" (print EOA/EOF after the last action)
|
||||
TOOLTEST_OUT h5clear_fsm_persist_equal.h5 --filesize "" "" h5clear_equal_before_size.ddl
|
||||
TOOLTEST h5clear_fsm_persist_equal.h5 --increment "" $SUCCEED
|
||||
TOOLTEST h5clear_fsm_persist_equal.h5 --increment "" $SUCCEED
|
||||
TOOLTEST_OUT h5clear_fsm_persist_equal.h5 --filesize "" "" h5clear_equal_after_size.ddl
|
||||
#
|
||||
# (4) h5clear_fsm_persist_greater.h5
|
||||
@@ -372,7 +404,7 @@ TOOLTEST_OUT h5clear_fsm_persist_equal.h5 --filesize "" "" h5clear_equal_after_s
|
||||
# "h5clear --increment=0 h5clear_fsm_persist_greater.h5" (EOA = MAX(EOA, EOF) + 0) (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_fsm_persist_greater.h5" (print EOA/EOF after the last action)
|
||||
TOOLTEST_OUT h5clear_fsm_persist_greater.h5 --filesize "" "" h5clear_greater_before_size.ddl
|
||||
TOOLTEST h5clear_fsm_persist_greater.h5 --increment=0 "" $SUCCEED
|
||||
TOOLTEST h5clear_fsm_persist_greater.h5 --increment=0 "" $SUCCEED
|
||||
TOOLTEST_OUT h5clear_fsm_persist_greater.h5 --filesize "" "" h5clear_greater_after_size.ddl
|
||||
#
|
||||
# (5) h5clear_fsm_persist_less.h5
|
||||
@@ -380,7 +412,7 @@ TOOLTEST_OUT h5clear_fsm_persist_greater.h5 --filesize "" "" h5clear_greater_aft
|
||||
# "h5clear --increment=200 h5clear_fsm_persist_less.h5" (EOA = MAX(EOA, EOF) + 200) (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_fsm_persist_less.h5" (print EOA/EOF after the last action)
|
||||
TOOLTEST_OUT h5clear_fsm_persist_less.h5 --filesize "" "" h5clear_less_before_size.ddl
|
||||
TOOLTEST h5clear_fsm_persist_less.h5 --increment=200 "" $SUCCEED
|
||||
TOOLTEST h5clear_fsm_persist_less.h5 --increment=200 "" $SUCCEED
|
||||
TOOLTEST_OUT h5clear_fsm_persist_less.h5 --filesize "" "" h5clear_less_after_size.ddl
|
||||
#
|
||||
# (6) h5clear_fsm_persist_user_equal.h5
|
||||
@@ -388,7 +420,7 @@ TOOLTEST_OUT h5clear_fsm_persist_less.h5 --filesize "" "" h5clear_less_after_siz
|
||||
# "h5clear --increment h5clear_fsm_persist_user_equal.h5" (EOA = MAX(EOA, EOF) + 1M) (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_fsm_persist_user_equal.h5" (print EOA/EOF after the last action)
|
||||
TOOLTEST_OUT h5clear_fsm_persist_user_equal.h5 --filesize "" "" h5clear_user_equal_before_size.ddl
|
||||
TOOLTEST h5clear_fsm_persist_user_equal.h5 --increment "" $SUCCEED
|
||||
TOOLTEST h5clear_fsm_persist_user_equal.h5 --increment "" $SUCCEED
|
||||
TOOLTEST_OUT h5clear_fsm_persist_user_equal.h5 --filesize "" "" h5clear_user_equal_after_size.ddl
|
||||
#
|
||||
# (7) h5clear_fsm_persist_user_greater.h5
|
||||
@@ -396,7 +428,7 @@ TOOLTEST_OUT h5clear_fsm_persist_user_equal.h5 --filesize "" "" h5clear_user_equ
|
||||
# "h5clear --increment=0 h5clear_fsm_persist_user_greater.h5" (EOA = MAX(EOA, EOF) + 0) (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_fsm_persist_user_greater.h5" (print EOA/EOF after the last action)
|
||||
TOOLTEST_OUT h5clear_fsm_persist_user_greater.h5 --filesize "" "" h5clear_user_greater_before_size.ddl
|
||||
TOOLTEST h5clear_fsm_persist_user_greater.h5 --increment=0 "" $SUCCEED
|
||||
TOOLTEST h5clear_fsm_persist_user_greater.h5 --increment=0 "" $SUCCEED
|
||||
TOOLTEST_OUT h5clear_fsm_persist_user_greater.h5 --filesize "" "" h5clear_user_greater_after_size.ddl
|
||||
#
|
||||
# (8) h5clear_fsm_persist_user_less.h5
|
||||
@@ -404,7 +436,7 @@ TOOLTEST_OUT h5clear_fsm_persist_user_greater.h5 --filesize "" "" h5clear_user_g
|
||||
# "h5clear --increment=200 h5clear_fsm_persist_user_less.h5" (EOA = MAX(EOA, EOF) + 200) (no output, check exit code)
|
||||
# "h5clear --filesize h5clear_fsm_persist_user_less.h5" (print EOA/EOF after the last action)
|
||||
TOOLTEST_OUT h5clear_fsm_persist_user_less.h5 --filesize "" "" h5clear_user_less_before_size.ddl
|
||||
TOOLTEST h5clear_fsm_persist_user_less.h5 --increment=200 "" $SUCCEED
|
||||
TOOLTEST h5clear_fsm_persist_user_less.h5 --increment=200 "" $SUCCEED
|
||||
TOOLTEST_OUT h5clear_fsm_persist_user_less.h5 --filesize "" "" h5clear_user_less_after_size.ddl
|
||||
#
|
||||
#
|
||||
|
||||
@@ -2,4 +2,3 @@ HDF5 "err_attr_dspace.h5" {
|
||||
GROUP "/" {
|
||||
}
|
||||
}
|
||||
h5dump error: error getting attribute information
|
||||
|
||||
@@ -28,4 +28,3 @@ GROUP "/" {
|
||||
}
|
||||
}
|
||||
}
|
||||
h5dump error: unable to open file "non_existing.h5"
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
nosuchfile.h5: unable to open file
|
||||
|
||||
@@ -135,4 +135,3 @@ usage: h5dump [OPTIONS] files
|
||||
|
||||
h5dump -d /foo -f family fam%05d.h5
|
||||
|
||||
h5dump error: missing file name
|
||||
|
||||
@@ -15,4 +15,3 @@ DATASET "/DS08BITS" {
|
||||
}
|
||||
}
|
||||
}
|
||||
h5dump error: Packed Bit offset+length value(9) too large. Max is 8
|
||||
|
||||
@@ -15,4 +15,3 @@ DATASET "/DS08BITS" {
|
||||
}
|
||||
}
|
||||
}
|
||||
h5dump error: Packed Bit offset+length value(9) too large. Max is 8
|
||||
|
||||
@@ -135,4 +135,3 @@ usage: h5dump [OPTIONS] files
|
||||
|
||||
h5dump -d /foo -f family fam%05d.h5
|
||||
|
||||
h5dump error: Bad mask list(0,2,2,1,0,2,2,)
|
||||
|
||||
@@ -15,4 +15,3 @@ DATASET "/DS16BITS" {
|
||||
}
|
||||
}
|
||||
}
|
||||
h5dump error: Packed Bit offset+length value(17) too large. Max is 16
|
||||
|
||||
@@ -15,4 +15,3 @@ DATASET "/DS16BITS" {
|
||||
}
|
||||
}
|
||||
}
|
||||
h5dump error: Packed Bit offset+length value(17) too large. Max is 16
|
||||
|
||||
@@ -135,4 +135,3 @@ usage: h5dump [OPTIONS] files
|
||||
|
||||
h5dump -d /foo -f family fam%05d.h5
|
||||
|
||||
h5dump error: Packed Bit offset+length value(65) too large. Max is 64
|
||||
|
||||
@@ -135,4 +135,3 @@ usage: h5dump [OPTIONS] files
|
||||
|
||||
h5dump -d /foo -f family fam%05d.h5
|
||||
|
||||
h5dump error: Packed Bit length value(0) must be positive.
|
||||
|
||||
@@ -23,4 +23,3 @@ DATASET "/DS32BITS" {
|
||||
}
|
||||
}
|
||||
}
|
||||
h5dump error: Packed Bit offset+length value(33) too large. Max is 32
|
||||
|
||||
@@ -23,4 +23,3 @@ DATASET "/DS32BITS" {
|
||||
}
|
||||
}
|
||||
}
|
||||
h5dump error: Packed Bit offset+length value(33) too large. Max is 32
|
||||
|
||||
@@ -135,4 +135,3 @@ usage: h5dump [OPTIONS] files
|
||||
|
||||
h5dump -d /foo -f family fam%05d.h5
|
||||
|
||||
h5dump error: Too many masks requested (max. 8). Mask list(0,1,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1)
|
||||
|
||||
@@ -135,4 +135,3 @@ usage: h5dump [OPTIONS] files
|
||||
|
||||
h5dump -d /foo -f family fam%05d.h5
|
||||
|
||||
h5dump error: Packed Bit offset value(64) must be between 0 and 63
|
||||
|
||||
@@ -135,4 +135,3 @@ usage: h5dump [OPTIONS] files
|
||||
|
||||
h5dump -d /foo -f family fam%05d.h5
|
||||
|
||||
h5dump error: Bad mask list(-1,1)
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
HDF5 "taindices.h5" {
|
||||
}
|
||||
h5dump error: number of block dims (2) exceed dataset dims (1)
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
HDF5 "taindices.h5" {
|
||||
}
|
||||
h5dump error: number of count dims (2) exceed dataset dims (1)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user