summaryrefslogtreecommitdiffstats
path: root/test/trefer.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/trefer.c')
-rw-r--r--test/trefer.c31
1 files changed, 25 insertions, 6 deletions
diff --git a/test/trefer.c b/test/trefer.c
index 0d6ae75..48d3670 100644
--- a/test/trefer.c
+++ b/test/trefer.c
@@ -832,7 +832,7 @@ test_reference_cmpnd_obj(void)
hsize_t cmpnd_dims[] = {1};
hid_t dapl_id; /* Dataset access property list */
unsigned * ibuf, *obuf;
- unsigned i, j; /* Counters */
+ unsigned i; /* Counter */
H5O_type_t obj_type; /* Object type */
herr_t ret; /* Generic return value */
s2_t cmpnd_wbuf, cmpnd_rbuf;
@@ -1358,7 +1358,10 @@ test_reference_region(H5F_libver_t libver_low, H5F_libver_t libver_high)
/*
* Dereference an undefined reference (should fail)
*/
- H5E_BEGIN_TRY { dset2 = H5Ropen_object(&rdata_NA[0], H5P_DEFAULT, H5P_DEFAULT); }
+ H5E_BEGIN_TRY
+ {
+ dset2 = H5Ropen_object(&rdata_NA[0], H5P_DEFAULT, H5P_DEFAULT);
+ }
H5E_END_TRY;
VERIFY(dset2, H5I_INVALID_HID, "H5Ropen_object");
@@ -1368,7 +1371,10 @@ test_reference_region(H5F_libver_t libver_low, H5F_libver_t libver_high)
/* This close should fail since H5Ropen_object never created
* the id of the referenced object. */
- H5E_BEGIN_TRY { ret = H5Dclose(dset2); }
+ H5E_BEGIN_TRY
+ {
+ ret = H5Dclose(dset2);
+ }
H5E_END_TRY;
VERIFY(ret, FAIL, "H5Dclose");
@@ -1520,7 +1526,10 @@ test_reference_region(H5F_libver_t libver_low, H5F_libver_t libver_high)
/* Attempting to retrieve type of object using non-valid refs */
for (j = 0; j < 3; j++) {
- H5E_BEGIN_TRY { ret = H5Rget_obj_type3(&nvrbuf[j], H5P_DEFAULT, &obj_type); }
+ H5E_BEGIN_TRY
+ {
+ ret = H5Rget_obj_type3(&nvrbuf[j], H5P_DEFAULT, &obj_type);
+ }
H5E_END_TRY;
VERIFY(ret, FAIL, "H5Rget_obj_type3");
} /* end for */
@@ -3443,11 +3452,17 @@ test_reference_perf(void)
void
test_reference(void)
{
- H5F_libver_t low, high; /* Low and high bounds */
+ H5F_libver_t low, high; /* Low and high bounds */
+ const char * env_h5_drvr; /* File Driver value from environment */
/* Output message about test being performed */
MESSAGE(5, ("Testing References\n"));
+ /* Get the VFD to use */
+ env_h5_drvr = HDgetenv(HDF5_DRIVER);
+ if (env_h5_drvr == NULL)
+ env_h5_drvr = "nomatch";
+
test_reference_params(); /* Test for correct parameter checking */
test_reference_obj(); /* Test basic H5R object reference code */
test_reference_vlen_obj(); /* Test reference within vlen */
@@ -3467,7 +3482,11 @@ test_reference(void)
} /* end high bound */
} /* end low bound */
- test_reference_obj_deleted(); /* Test H5R object reference code for deleted objects */
+ /* The following test is currently broken with the Direct VFD */
+ if (HDstrcmp(env_h5_drvr, "direct") != 0) {
+ test_reference_obj_deleted(); /* Test H5R object reference code for deleted objects */
+ }
+
test_reference_group(); /* Test operations on dereferenced groups */
test_reference_attr(); /* Test attribute references */
test_reference_external(); /* Test external references */