diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/gen_bogus.c | 2 | ||||
-rw-r--r-- | test/ohdr.c | 33 | ||||
-rw-r--r-- | test/tbogus.h5 | bin | 1944 -> 1944 bytes |
3 files changed, 26 insertions, 9 deletions
diff --git a/test/gen_bogus.c b/test/gen_bogus.c index 7d8d073..df1e81f 100644 --- a/test/gen_bogus.c +++ b/test/gen_bogus.c @@ -62,7 +62,7 @@ int main(void) if(H5Dclose(did) < 0) goto error; /* Set "fail if unknown" message flag for bogus message */ - bogus_flags = H5O_MSG_FLAG_FAIL_IF_UNKNOWN; + bogus_flags = H5O_MSG_FLAG_FAIL_IF_UNKNOWN_AND_OPEN_FOR_WRITE; if(H5Pset(dcpl, H5O_BOGUS_MSG_FLAGS_NAME, &bogus_flags) < 0) goto error; /* Create second dataset, with "fail if unknown" message flag */ diff --git a/test/ohdr.c b/test/ohdr.c index 1151101..1b324a9 100644 --- a/test/ohdr.c +++ b/test/ohdr.c @@ -686,16 +686,13 @@ main(void) PASSED(); - TESTING("object with unknown header message & 'fail if unknown' flag set"); + TESTING("object with unknown header message & 'fail if unknown and open for write' flag set"); - /* Attempt to open the dataset with the unknown header message, and "fail if unknown" flag */ - H5E_BEGIN_TRY { - dset = H5Dopen2(file2, "/Dataset2", H5P_DEFAULT); - } H5E_END_TRY; - if(dset >= 0) { - H5Dclose(dset); + /* Open the dataset with the unknown header message, and "fail if unknown and open for write" flag */ + if((dset = H5Dopen2(file2, "/Dataset2", H5P_DEFAULT)) < 0) + TEST_ERROR + if(H5Dclose(dset) < 0) TEST_ERROR - } /* end if */ PASSED(); @@ -777,6 +774,26 @@ main(void) if(H5Dclose(dset) < 0) TEST_ERROR + /* Close the file with the bogus objects */ + if(H5Fclose(file2) < 0) + TEST_ERROR + + PASSED(); + + /* Open the file with objects that have unknown header messages (generated with gen_bogus.c) with RW intent this time */ + if((file2 = H5Fopen(testfile, H5F_ACC_RDWR, H5P_DEFAULT)) < 0) + TEST_ERROR + + TESTING("object with unknown header message & 'fail if unknown and open for write' flag set"); + + /* Attempt to open the dataset with the unknown header message, and "fail if unknown and open for write" flag */ + H5E_BEGIN_TRY { + dset = H5Dopen2(file2, "/Dataset2", H5P_DEFAULT); + } H5E_END_TRY; + if(dset >= 0) { + H5Dclose(dset); + TEST_ERROR + } /* end if */ /* Close the file with the bogus objects */ if(H5Fclose(file2) < 0) diff --git a/test/tbogus.h5 b/test/tbogus.h5 Binary files differindex 2b8b1dd..5b1d85e 100644 --- a/test/tbogus.h5 +++ b/test/tbogus.h5 |