summaryrefslogtreecommitdiffstats
path: root/test/tstab.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/tstab.c')
-rw-r--r--test/tstab.c173
1 files changed, 0 insertions, 173 deletions
diff --git a/test/tstab.c b/test/tstab.c
index b4018ab..94641aa 100644
--- a/test/tstab.c
+++ b/test/tstab.c
@@ -31,178 +31,6 @@
#include <H5Gpkg.h>
/*-------------------------------------------------------------------------
- * Function: test_1
- *
- * Purpose: Tests the non-directory features of the HDF5 file. If the
- * file has just one non-directory object, then that object
- * should be the root object and there is no directory.
- *
- * Return: void
- *
- * Programmer: Robb Matzke
- * robb@maya.nuance.com
- * Aug 29 1997
- *
- * Modifications:
- *
- *-------------------------------------------------------------------------
- */
-static void
-test_1(void)
-{
- hid_t fid;
- H5F_t *f;
- H5G_entry_t ent1, ent2, obj_ent, dir_ent;
- herr_t status;
- H5O_name_t name_mesg;
- void *status_ptr;
- hbool_t b;
-
- MESSAGE(2, ("........non-directory files\n"));
-
- /*
- * Test 1A: Create an empty file and add a non-directory object
- * to the file with the name `/'. The object should become the
- * root object and should not have a name message.
- */
-
- /* create the file */
- fid = H5Fcreate("tstab1.h5", H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
- CHECK(fid, FAIL, "H5Fcreate");
- f = H5I_object(fid);
- CHECK(f, NULL, "H5I_object");
-
- /* create the object */
- status = H5O_create(f, 0, &ent1);
- CHECK_I(status, "H5O_create");
- status = H5G_insert("/", &ent1);
- CHECK_I(status, "H5G_insert");
- status = H5O_close(&ent1);
- CHECK_I(status, "H5O_close");
-
- /* look for a name message -- it shouldn't be present */
- status_ptr = H5O_read(&ent1, H5O_NAME, 0, &name_mesg);
- VERIFY(status_ptr, NULL, "H5O_read [didn't fail but should have]");
-
- /*
- * Test 1B: Attempt to read the root object using the name `/'.
- */
- memset(&dir_ent, 0xff, sizeof(H5G_entry_t));
- memset(&obj_ent, 0xff, sizeof(H5G_entry_t));
- status = H5G_find(f, "/", &dir_ent, &obj_ent);
- CHECK_I(status, "H5G_find");
-
- /* Is it really the root object? */
- b = H5F_addr_defined(&(dir_ent.header));
- VERIFY(b, FALSE, "H5G_insert");
- b = H5F_addr_eq(&(obj_ent.header), &(ent1.header));
- VERIFY(b, TRUE, "H5G_insert");
-
- /*
- * Test 1C: Add a second object to the file to see if the first object
- * gets moved into the new root directory along with the second object.
- */
-
- /* create the object */
- status = H5O_create(f, 0, &ent2);
- CHECK_I(status, "H5O_create");
- status = H5G_insert("/second", &ent2);
- CHECK_I(status, "H5G_insert");
- status = H5O_close(&ent2);
- CHECK_I(status, "H5O_close");
-
- /* try to read the first object */
- HDmemset(&obj_ent, 0xff, sizeof(H5G_entry_t));
- status = H5G_find(f, "/Root Object", NULL, &obj_ent);
- CHECK_I(status, "H5G_find");
- b = H5F_addr_defined(&(obj_ent.header));
- VERIFY(b, TRUE, "H5G_insert");
- b = H5F_addr_eq(&(obj_ent.header), &(ent1.header));
- VERIFY(b, TRUE, "H5G_create");
-
- /* close the file */
- H5Fclose(fid);
-
- /*
- * Test 1D: Create an empty file and add a non-directory object
- * to the file with the name `/foo'. The object should become the
- * root object and should have a name message with the value `foo'.
- */
-
- /* create the file */
- fid = H5Fcreate("tstab1.h5", H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
- CHECK(fid, FAIL, "H5Fcreate");
- f = H5I_object(fid);
- CHECK(f, NULL, "H5I_object");
-
- /* create the object */
- status = H5O_create(f, 0, &ent1);
- CHECK_I(status, "H5O_create");
- status = H5G_insert("/foo", &ent1);
- CHECK_I(status, "H5G_insert");
- status = H5O_close(&ent1);
- CHECK_I(status, "H5O_close");
-
- /* does it have the correct name message? */
- status_ptr = H5O_read(&ent1, H5O_NAME, 0, &name_mesg);
- CHECK_PTR(status_ptr, "H5O_read");
- CHECK_PTR(name_mesg.s, "H5O_read");
- VERIFY(strcmp(name_mesg.s, "foo"), 0, "H5G_insert");
- if (status_ptr)
- H5O_reset(H5O_NAME, &name_mesg); /*free message data */
-
- /*
- * Test 1E: Try to read the root object with the name `/' and `/foo'
- */
- HDmemset(&dir_ent, 0, sizeof(H5G_entry_t));
- HDmemset(&obj_ent, 0, sizeof(H5G_entry_t));
- status = H5G_find(f, "/", &dir_ent, &obj_ent);
- CHECK_I(status, "H5G_find");
- b = H5F_addr_defined(&(dir_ent.header));
- VERIFY(b, FALSE, "H5G_insert");
- b = H5F_addr_eq(&(obj_ent.header), &(ent1.header));
- VERIFY(b, TRUE, "H5G_insert");
-
- /* now as `/foo' */
- HDmemset(&dir_ent, 0, sizeof(H5G_entry_t));
- HDmemset(&obj_ent, 0, sizeof(H5G_entry_t));
- status = H5G_find(f, "/foo", &dir_ent, &obj_ent);
- CHECK_I(status, "H5G_find");
- b = H5F_addr_defined(&(dir_ent.header));
- VERIFY(b, FALSE, "H5G_insert");
- b = H5F_addr_eq(&(obj_ent.header), &(ent1.header));
- VERIFY(b, TRUE, "H5G_insert");
-
- /*
- * Test 1F: Create another object. This should create a root directory
- * and move the previous root object into that directory.
- */
-
- /* create the object */
- status = H5O_create(f, 0, &ent2);
- CHECK_I(status, "H5O_create");
- status = H5G_insert("/second", &ent2);
- CHECK_I(status, "H5G_insert");
- status = H5O_close(&ent2);
- CHECK_I(status, "H5O_close");
-
- /* try to read the first object */
- HDmemset(&obj_ent, 0, sizeof(H5G_entry_t));
- status = H5G_find(f, "/foo", NULL, &obj_ent);
- CHECK_I(status, "H5G_find");
- b = H5F_addr_eq(&(obj_ent.header), &(ent1.header));
- VERIFY(b, TRUE, "H5G_insert");
-
- /* the first object should not have a name message */
- status_ptr = H5O_read(&ent1, H5O_NAME, 0, &name_mesg);
- VERIFY(status_ptr, NULL, "H5O_read [didn't fail but should have]");
-
- /* close the file */
- status = H5Fclose(fid);
- CHECK_I(status, "H5Fclose");
-}
-
-/*-------------------------------------------------------------------------
* Function: test_2
*
* Purpose: Creates a really large directory.
@@ -313,6 +141,5 @@ test_2(void)
void
test_stab(void)
{
- test_1();
test_2();
}