From e41a15b7f07dc39b7d68f4635965d0b8b440d299 Mon Sep 17 00:00:00 2001 From: Dana Robinson Date: Fri, 30 Dec 2016 10:06:07 -0500 Subject: Added a missing test file needed for the flushrefresh script. --- MANIFEST | 1 + test/CMakeLists.txt | 8 +++++++ test/Makefile.am | 3 ++- test/swmr_check_compat_vfd.c | 56 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 test/swmr_check_compat_vfd.c diff --git a/MANIFEST b/MANIFEST index 0c0c4fd..db2b0e8 100644 --- a/MANIFEST +++ b/MANIFEST @@ -999,6 +999,7 @@ ./test/specmetaread.h5 ./test/stab.c ./test/swmr.c +./test/swmr_check_compat_vfd.c ./test/tarray.c ./test/tarrold.h5 ./test/tattr.c diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 35884d0..8891af7 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -255,6 +255,14 @@ foreach (test ${H5_TESTS}) ADD_H5_EXE(${test}) endforeach (test ${H5_TESTS}) +set (H5_SWMR_TESTS + swmr_check_compat_vfd +) + +foreach (test ${H5_SWMR_TESTS}) + ADD_H5_EXE(${test}) +endforeach (test ${H5_SWMR_TESTS}) + ############################################################################## ############################################################################## ### A D D I T I O N A L T E S T S ### diff --git a/test/Makefile.am b/test/Makefile.am index da89b22..37883c4 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -64,7 +64,8 @@ TEST_PROG= testhdf5 cache cache_api cache_tagging lheap ohdr stab gheap \ # and this lets automake keep all its test programs in one place. check_PROGRAMS=$(TEST_PROG) error_test err_compat tcheck_version \ testmeta accum_swmr_reader \ - links_env flushrefresh + links_env flushrefresh \ + swmr_check_compat_vfd if HAVE_SHARED_CONDITIONAL check_PROGRAMS+= plugin endif diff --git a/test/swmr_check_compat_vfd.c b/test/swmr_check_compat_vfd.c new file mode 100644 index 0000000..d1134ee --- /dev/null +++ b/test/swmr_check_compat_vfd.c @@ -0,0 +1,56 @@ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Copyright by The HDF Group. * + * Copyright by the Board of Trustees of the University of Illinois. * + * All rights reserved. * + * * + * This file is part of HDF5. The full HDF5 copyright notice, including * + * terms governing use, modification, and redistribution, is contained in * + * the files COPYING and Copyright.html. COPYING can be found at the root * + * of the source code distribution tree; Copyright.html can be found at the * + * root level of an installed copy of the electronic HDF5 document set and * + * is linked from the top-level documents page. It can also be found at * + * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * + * access to either file, you may request a copy from help@hdfgroup.org. * + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + +/* Purpose: This is a small program that checks if the HDF5_DRIVER + * environment variable is set to a value that supports SWMR. + * + * It is intended for use in shell scripts. + */ +#include "h5test.h" + +/* This file needs to access the file driver testing code */ +#define H5FD_FRIEND /*suppress error about including H5FDpkg */ +#define H5FD_TESTING +#include "H5FDpkg.h" /* File drivers */ + + +/*------------------------------------------------------------------------- + * Function: main + * + * Purpose: Inspects the HDF5_DRIVER environment variable, which + * determines the VFD that the test harness will use with + * the majority of the tests. + * + * Return: VFD supports SWMR: EXIT_SUCCESS + * + * VFD does not support SWMR + * or failure: EXIT_FAILURE + * + *------------------------------------------------------------------------- + */ +int +main(void) +{ + char *driver = NULL; + + driver = HDgetenv("HDF5_DRIVER"); + + if(H5FD_supports_swmr_test(driver)) + return EXIT_SUCCESS; + else + return EXIT_FAILURE; + +} /* end main() */ + -- cgit v0.12