diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2018-11-29 01:07:30 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2018-11-29 01:07:30 (GMT) |
commit | d442fe2d9815a83f5010cca9a878974e286c27f9 (patch) | |
tree | ce32b6875ad90d309f81844eaeb20c4a4860025c | |
parent | 6eabeabdaa77642fd4db5fd234ccc756a24125be (diff) | |
download | hdf5-d442fe2d9815a83f5010cca9a878974e286c27f9.zip hdf5-d442fe2d9815a83f5010cca9a878974e286c27f9.tar.gz hdf5-d442fe2d9815a83f5010cca9a878974e286c27f9.tar.bz2 |
Add support for "make check-vol", along with a few minor cleanups, etc.
-rw-r--r-- | Makefile.am | 9 | ||||
-rwxr-xr-x | bin/makehelp | 1 | ||||
-rwxr-xr-x | bin/snapshot | 6 | ||||
-rw-r--r-- | c++/test/tlinks.cpp | 5 | ||||
-rw-r--r-- | config/commence.am | 3 | ||||
-rw-r--r-- | config/conclude.am | 12 | ||||
-rw-r--r-- | src/H5VLpassthru.c | 2 | ||||
-rw-r--r-- | test/Makefile.am | 3 | ||||
-rw-r--r-- | test/freespace.c | 6 | ||||
-rw-r--r-- | test/h5test.c | 13 | ||||
-rw-r--r-- | test/links_env.c | 5 |
11 files changed, 45 insertions, 20 deletions
diff --git a/Makefile.am b/Makefile.am index e3e5e3d..d58b1b4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -186,6 +186,15 @@ check-vfd: fi; \ done +# Run tests with different Virtual Object Layer Connectors. +# Currently, only invoke check-vol in the test directory. +check-vol: + for d in src test; do \ + if test $$d != .; then \ + (cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \ + fi; \ + done + # Automake wants to make config.status depend on configure. This # makes sense, but config.status can't always be regenerated # properly, which can cause builds to fail. diff --git a/bin/makehelp b/bin/makehelp index d6fbda2..4707397 100755 --- a/bin/makehelp +++ b/bin/makehelp @@ -40,6 +40,7 @@ make distclean: remove all files generated by make, make check, or make check-p: Only run parallel tests make check-s: Only run serial tests make check-vfd: Run tests with each virtual file driver +make check-vol: Run tests with each virtual object layer connector HDF5 uses Automake, so any standard Automake targets not listed here should also work. diff --git a/bin/snapshot b/bin/snapshot index 5c78fc8..5900728 100755 --- a/bin/snapshot +++ b/bin/snapshot @@ -132,6 +132,7 @@ DISPLAYUSAGE() Usage: $PROGNAME [all] [checkout] [ftp <URL> [diff] [test] [srcdir] [release] [help] [clean] [distclean] [echo] [deploy <dir>] [deploydir <dir>] [zlib <zlib_path>] [releasedir <dir>] [srcdirname <dir>] [check-vfd] + [check-vol] [exec <command>] [module-load <module-list>] [op-configure <option>] [--<option>] all: Run all commands (checkout, test & release) @@ -169,6 +170,8 @@ Usage: $PROGNAME [all] [checkout] [ftp <URL> [diff] [test] [srcdir] [release] [h [Default is $ReleaseDir_default] check-vfd: Run make check-vfd instead of just make check. + check-vol: + Run make check-vol instead of just make check. exttest <testscript>; Run testscript; exec <command>: @@ -422,6 +425,9 @@ while [ $# -gt 0 ] ; do check-vfd) CHECKVAL=check-vfd ;; + check-vol) + CHECKVAL=check-vol + ;; module-load) shift if [ $# -lt 1 ]; then diff --git a/c++/test/tlinks.cpp b/c++/test/tlinks.cpp index f8d7089..6e990c9 100644 --- a/c++/test/tlinks.cpp +++ b/c++/test/tlinks.cpp @@ -857,11 +857,6 @@ void test_links() { hid_t fapl_id, fapl2_id; /* File access property lists */ unsigned new_format; /* Whether to use the new format or not */ - const char *envval; - - envval = HDgetenv("HDF5_DRIVER"); - if(envval == NULL) - envval = "nomatch"; fapl_id = h5_fileaccess(); diff --git a/config/commence.am b/config/commence.am index 5fe21a6..5d88a88 100644 --- a/config/commence.am +++ b/config/commence.am @@ -97,7 +97,8 @@ CHECK_CLEANFILES=*.chkexe *.chklog *.clog *.clog2 # exists. .PHONY: build-check-clean build-check-p build-check-s build-lib build-progs \ build-tests check-clean check-install check-p check-s check-vfd \ - install-doc lib progs tests uninstall-doc _exec_check-s _test help + check-vol install-doc lib progs tests uninstall-doc _exec_check-s \ + _test help help: @$(top_srcdir)/bin/makehelp diff --git a/config/conclude.am b/config/conclude.am index 4bdbb0b..baca60d 100644 --- a/config/conclude.am +++ b/config/conclude.am @@ -266,3 +266,15 @@ check-vfd: $(LIB) $(PROGS) $(chk_TESTS) HDF5_DRIVER=$$vfd $(MAKE) $(AM_MAKEFLAGS) check || exit 1; \ fi; \ done + +# Run test with different Virtual Object Layer Connector +check-vol: $(LIB) $(PROGS) $(chk_TESTS) + @for vol in $(VOL_LIST) dummy; do \ + if test $$vol != dummy; then \ + echo "============================"; \ + echo "Testing VOL Connector $$vol"; \ + echo "============================"; \ + $(MAKE) $(AM_MAKEFLAGS) check-clean || exit 1; \ + HDF5_VOL_CONNECTOR=$$vol $(MAKE) $(AM_MAKEFLAGS) check || exit 1; \ + fi; \ + done diff --git a/src/H5VLpassthru.c b/src/H5VLpassthru.c index f8568de..4c7e64a 100644 --- a/src/H5VLpassthru.c +++ b/src/H5VLpassthru.c @@ -462,7 +462,7 @@ H5VL_pass_through_info_to_str(const void *_info, char **str) assert(*str); /* Encode our info */ - snprintf(*str, 32 + under_vol_str_len, "under_val=%u;under_info={%s}", (unsigned)under_value, (under_vol_string ? under_vol_string : "")); + snprintf(*str, 32 + under_vol_str_len, "under_vol=%u;under_info={%s}", (unsigned)under_value, (under_vol_string ? under_vol_string : "")); return(0); } /* end H5VL_pass_through_info_to_str() */ diff --git a/test/Makefile.am b/test/Makefile.am index 61dcda8..d950297 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -144,6 +144,9 @@ if DIRECT_VFD_CONDITIONAL VFD_LIST += direct endif +VOL_LIST = native "pass_through under_vol=0;under_info={}" \ + "pass_through under_vol=505;under_info={under_vol=0;under_info={}}" + # Additional target for running timing test timings _timings: testmeta @for timing in $(TIMINGS) dummy; do \ diff --git a/test/freespace.c b/test/freespace.c index 0011bd2..947b2ce 100644 --- a/test/freespace.c +++ b/test/freespace.c @@ -2862,14 +2862,8 @@ main(void) { hid_t fapl = -1; /* File access property list for data files */ unsigned nerrors = 0; /* Cumulative error count */ - const char *env_h5_drvr = NULL; /* File Driver value from environment */ hbool_t api_ctx_pushed = FALSE; /* Whether API context pushed */ - /* Get the VFD to use */ - env_h5_drvr = HDgetenv("HDF5_DRIVER"); - if(env_h5_drvr == NULL) - env_h5_drvr = "nomatch"; - h5_reset(); if((fapl = h5_fileaccess()) < 0) { diff --git a/test/h5test.c b/test/h5test.c index 0453162..f3d1ffc 100644 --- a/test/h5test.c +++ b/test/h5test.c @@ -42,7 +42,16 @@ * use for HDF5 file access. The first word in the * value is the name of the driver and subsequent data * is interpreted according to the driver. See - * h5_fileaccess() for details. + * h5_get_vfd_fapl() for details. + * + * HDF5_VOL_CONNECTOR: This string describes what VOL connector to + * use for HDF5 file access. The first word in the + * value is the name of the connector and subsequent data + * is interpreted according to the driver. See + * h5_get_vol_fapl() for details. + * + * HDF5_LIBVER_BOUNDS: This string describes what library version bounds to + * use for HDF5 file access. See h5_get_libver_fapl() for details. * * HDF5_PREFIX: A string to add to the beginning of all serial test * file names. This can be used to run tests in a @@ -1021,7 +1030,7 @@ done: error: return -1; -} /* end h5_get_vfd_fapl() */ +} /* end h5_get_libver_fapl() */ /*------------------------------------------------------------------------- diff --git a/test/links_env.c b/test/links_env.c index b32fb32..0cd690a 100644 --- a/test/links_env.c +++ b/test/links_env.c @@ -148,11 +148,6 @@ main(void) { hid_t fapl; /* File access property lists */ int nerrors = 0; /* Error from tests */ - const char *env_h5_drvr; /* File Driver value from environment */ - - env_h5_drvr = HDgetenv("HDF5_DRIVER"); - if(env_h5_drvr == NULL) - env_h5_drvr = "nomatch"; h5_reset(); fapl = h5_fileaccess(); |