summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/Makefile.am2
-rw-r--r--test/Makefile.in6
-rw-r--r--test/be_extlink1.h5bin1120 -> 880 bytes
-rw-r--r--test/be_extlink2.h5bin2840 -> 2744 bytes
-rw-r--r--test/cache_common.c2
-rw-r--r--test/gen_new_group.c25
-rw-r--r--test/gen_udlinks.c3
-rw-r--r--test/h5test.c13
-rw-r--r--test/h5test.h3
-rw-r--r--test/le_extlink1.h5bin1120 -> 880 bytes
-rw-r--r--test/le_extlink2.h5bin2840 -> 2744 bytes
-rw-r--r--test/links.c2231
-rw-r--r--test/mount.c14
-rwxr-xr-xtest/objcopy.c2138
-rw-r--r--test/stab.c577
-rw-r--r--test/tattr.c4
-rw-r--r--test/tfile.c23
-rw-r--r--test/titerate.c348
-rw-r--r--test/tmisc.c10
-rw-r--r--test/unlink.c1377
20 files changed, 3513 insertions, 3263 deletions
diff --git a/test/Makefile.am b/test/Makefile.am
index bf2297d..b41d999 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -98,7 +98,7 @@ flush2.chkexe_: flush1.chkexe_
# prefix or low-level driver with environment variables will influence
# the temporary file name in ways that the makefile is not aware of.
CHECK_CLEANFILES+=cmpd_dset.h5 compact_dataset.h5 dataset.h5 extend.h5 istore.h5\
- tfile[1-4].h5 th5s[1-3].h5 lheap.h5 fheap.h5 ohdr.h5 stab[1-2].h5 \
+ tfile[1-4].h5 th5s[1-3].h5 lheap.h5 fheap.h5 ohdr.h5 stab.h5 \
extern_[1-3].h5 extern_[1-4][ab].raw gheap[0-4].h5 dt_arith[1-2]\
links.h5 links[1-3].h5 big.data big[0-9][0-9][0-9][0-9][0-9].h5 \
dtypes[1-8].h5 dt_arith[1-2].h5 tattr.h5 tselect.h5 mtime.h5 \
diff --git a/test/Makefile.in b/test/Makefile.in
index 1b4992d..40cb0c8 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -593,9 +593,9 @@ TRACE = perl $(top_srcdir)/bin/trace
# the temporary file name in ways that the makefile is not aware of.
CHECK_CLEANFILES = *.chkexe *.chklog *.clog cmpd_dset.h5 \
compact_dataset.h5 dataset.h5 extend.h5 istore.h5 \
- tfile[1-4].h5 th5s[1-3].h5 lheap.h5 fheap.h5 ohdr.h5 \
- stab[1-2].h5 extern_[1-3].h5 extern_[1-4][ab].raw \
- gheap[0-4].h5 dt_arith[1-2] links.h5 links[1-3].h5 big.data \
+ tfile[1-4].h5 th5s[1-3].h5 lheap.h5 fheap.h5 ohdr.h5 stab.h5 \
+ extern_[1-3].h5 extern_[1-4][ab].raw gheap[0-4].h5 \
+ dt_arith[1-2] links.h5 links[1-3].h5 big.data \
big[0-9][0-9][0-9][0-9][0-9].h5 dtypes[1-8].h5 \
dt_arith[1-2].h5 tattr.h5 tselect.h5 mtime.h5 unlink.h5 \
unicode.h5 fillval_[0-9].h5 fillval.raw mount_[0-9].h5 \
diff --git a/test/be_extlink1.h5 b/test/be_extlink1.h5
index dedd0a5..0ef71fa 100644
--- a/test/be_extlink1.h5
+++ b/test/be_extlink1.h5
Binary files differ
diff --git a/test/be_extlink2.h5 b/test/be_extlink2.h5
index d6f9921..296fef0 100644
--- a/test/be_extlink2.h5
+++ b/test/be_extlink2.h5
Binary files differ
diff --git a/test/cache_common.c b/test/cache_common.c
index e7bc87c..3e9b596 100644
--- a/test/cache_common.c
+++ b/test/cache_common.c
@@ -2196,7 +2196,7 @@ unprotect_entry(H5C_t * cache_ptr,
result = H5C_unprotect(NULL, -1, -1, cache_ptr, &(types[type]),
entry_ptr->addr, (void *)entry_ptr,
- flags, 0);
+ flags, (size_t)0);
if ( ( result < 0 ) ||
( entry_ptr->header.is_protected ) ||
diff --git a/test/gen_new_group.c b/test/gen_new_group.c
index bff23ed..7e54c90 100644
--- a/test/gen_new_group.c
+++ b/test/gen_new_group.c
@@ -32,8 +32,8 @@
int main(void)
{
-#ifdef H5_GROUP_REVISION
hid_t fid = -1; /* File ID */
+ hid_t fapl = -1; /* File access property list ID */
hid_t fcpl = -1; /* File creation property list ID */
hid_t gid = -1; /* Group creation property list ID */
hid_t sid = -1; /* Dataspace ID */
@@ -43,11 +43,20 @@ int main(void)
if((fcpl = H5Pcreate(H5P_FILE_CREATE)) < 0) goto error;
/* Adjust group creation parameters for root group */
- /* (So that it is created in symbol-table form) */
+ /* (So that it is created in "dense storage" form) */
if(H5Pset_link_phase_change(fcpl, 0, 0) < 0) goto error;
+ /* Copy the file access property list */
+ if((fapl = H5Pcreate(H5P_FILE_ACCESS)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl, TRUE) < 0) TEST_ERROR
+
/* Create file for test groups */
- if((fid = H5Fcreate(FILENAME, H5F_ACC_TRUNC, fcpl, H5P_DEFAULT)) <0) goto error;
+ if((fid = H5Fcreate(FILENAME, H5F_ACC_TRUNC, fcpl, fapl)) <0) goto error;
+
+ /* Close file access property list */
+ if(H5Pclose(fapl) < 0) goto error;
/* Close file creation property list */
if(H5Pclose(fcpl) < 0) goto error;
@@ -78,20 +87,18 @@ int main(void)
/* Close file */
if(H5Fclose(fid) < 0) goto error;
-#endif /* H5_GROUP_REVISION */
return 0;
-#ifdef H5_GROUP_REVISION
error:
H5E_BEGIN_TRY {
- H5Pclose(did);
+ H5Dclose(did);
H5Sclose(sid);
- H5Dclose(gid);
- H5Dclose(fcpl);
+ H5Gclose(gid);
+ H5Pclose(fcpl);
+ H5Pclose(fapl);
H5Fclose(fid);
} H5E_END_TRY;
return 1;
-#endif /* H5_GROUP_REVISION */
}
diff --git a/test/gen_udlinks.c b/test/gen_udlinks.c
index 1230ffe..d479797 100644
--- a/test/gen_udlinks.c
+++ b/test/gen_udlinks.c
@@ -69,6 +69,9 @@ main (void)
/* Create an external link in the first file pointing to the group in the second file */
if(H5Lcreate_external(filename2, "group", fid1, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) goto error;
+ if((H5Fclose(fid1)) < 0) goto error;
+ if((H5Fclose(fid2)) < 0) goto error;
+
return 0;
error:
diff --git a/test/h5test.c b/test/h5test.c
index be843f3..acc7630 100644
--- a/test/h5test.c
+++ b/test/h5test.c
@@ -224,7 +224,7 @@ h5_reset(void)
H5E_BEGIN_TRY {
hid_t file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT,
H5P_DEFAULT);
- hid_t grp = H5Gcreate(file, "emit", 0);
+ hid_t grp = H5Gcreate(file, "emit", (size_t)0);
H5Gclose(grp);
H5Fclose(file);
HDunlink(filename);
@@ -466,10 +466,10 @@ h5_fixname(const char *base_name, hid_t fapl, char *fullname, size_t size)
*
*-------------------------------------------------------------------------
*/
-char *
+const char *
h5_rmprefix(const char *filename)
{
- char *ret_ptr;
+ const char *ret_ptr;
if ((ret_ptr = HDstrstr(filename, ":")) == NULL)
ret_ptr = filename;
@@ -527,7 +527,7 @@ h5_fileaccess(void)
if (H5Pset_fapl_stdio(fapl)<0) return -1;
} else if (!HDstrcmp(name, "core")) {
/* In-core temporary file with 1MB increment */
- if (H5Pset_fapl_core(fapl, 1024*1024, FALSE)<0) return -1;
+ if (H5Pset_fapl_core(fapl, (size_t)1024*1024, FALSE)<0) return -1;
} else if (!HDstrcmp(name, "split")) {
/* Split meta data and raw data each using default driver */
if (H5Pset_fapl_split(fapl,
@@ -575,7 +575,7 @@ h5_fileaccess(void)
if ((val = HDstrtok(NULL, " \t\n\r")))
log_flags = (unsigned)HDstrtol(val, NULL, 0);
- if (H5Pset_fapl_log(fapl, NULL, log_flags, 0) < 0)
+ if (H5Pset_fapl_log(fapl, NULL, log_flags, (size_t)0) < 0)
return -1;
} else {
/* Unknown driver */
@@ -675,9 +675,8 @@ h5_show_hostname(void)
#endif
#ifdef H5_HAVE_GETHOSTNAME
- if (gethostname(hostname, 80) < 0){
+ if (gethostname(hostname, (size_t)80) < 0)
printf(" gethostname failed\n");
- }
else
printf(" hostname=%s\n", hostname);
#else
diff --git a/test/h5test.h b/test/h5test.h
index d8af200..640a882 100644
--- a/test/h5test.h
+++ b/test/h5test.h
@@ -106,6 +106,7 @@ extern MPI_Info h5_io_info_g; /* MPI INFO object for IO */
#define STACK_ERROR {H5Eprint_stack(H5E_DEFAULT, stdout); goto error;}
#define FAIL_STACK_ERROR {H5_FAILED(); AT(); \
H5Eprint_stack(H5E_DEFAULT, stdout); goto error;}
+#define FAIL_PUTS_ERROR(s) {H5_FAILED(); AT(); puts(s); goto error;}
/*
* Alarm definitions to wait up (terminate) a test that runs too long.
@@ -126,7 +127,7 @@ H5TEST_DLL char *h5_fixname(const char *base_name, hid_t fapl, char *fullname,
size_t size);
H5TEST_DLL hid_t h5_fileaccess(void);
H5TEST_DLL void h5_no_hwconv(void);
-H5TEST_DLL char *h5_rmprefix(const char *filename);
+H5TEST_DLL const char *h5_rmprefix(const char *filename);
H5TEST_DLL void h5_reset(void);
H5TEST_DLL void h5_show_hostname(void);
H5TEST_DLL h5_stat_size_t h5_get_file_size(const char *filename);
diff --git a/test/le_extlink1.h5 b/test/le_extlink1.h5
index 877ba37..eea65d8 100644
--- a/test/le_extlink1.h5
+++ b/test/le_extlink1.h5
Binary files differ
diff --git a/test/le_extlink2.h5 b/test/le_extlink2.h5
index d6f9921..296fef0 100644
--- a/test/le_extlink2.h5
+++ b/test/le_extlink2.h5
Binary files differ
diff --git a/test/links.c b/test/links.c
index 1825214..1d6b329 100644
--- a/test/links.c
+++ b/test/links.c
@@ -50,12 +50,12 @@ const char *FILENAME[] = {
/* Link type IDs */
#define UD_HARD_TYPE 201
-#define UD_CB_TYPE H5L_LINK_MAX
+#define UD_CB_TYPE H5L_TYPE_MAX
#define UD_PLIST_TYPE 128
#define UD_CBFAIL_TYPE UD_PLIST_TYPE
#define UD_ERROR_TYPE 189
#define UD_BAD_TYPE1 H5G_LINK_HARD
-#define UD_BAD_TYPE2 (H5L_LINK_UD_MIN - 5)
+#define UD_BAD_TYPE2 (H5L_TYPE_UD_MIN - 5)
#define UD_BAD_VERS (H5L_LINK_CLASS_T_VERS + 1)
#define DEST_PROP_NAME "destination_group"
@@ -90,42 +90,45 @@ const char *FILENAME[] = {
*-------------------------------------------------------------------------
*/
static int
-mklinks(hid_t fapl)
+mklinks(hid_t fapl, hbool_t new_format)
{
hid_t file, scalar, grp, d1;
hsize_t size[1] = {1};
char filename[NAME_BUF_SIZE];
- TESTING("link creation");
+ if(new_format)
+ TESTING("link creation (w/new group format)")
+ else
+ TESTING("link creation")
/* Create a file */
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
- if ((scalar=H5Screate_simple (1, size, size))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if ((scalar=H5Screate_simple (1, size, size)) < 0) TEST_ERROR
/* Create a group */
- if ((grp=H5Gcreate (file, "grp1", (size_t)0))<0) TEST_ERROR;
- if (H5Gclose (grp)<0) TEST_ERROR;
+ if ((grp=H5Gcreate (file, "grp1", (size_t)0)) < 0) TEST_ERROR
+ if (H5Gclose (grp) < 0) TEST_ERROR
/* Create a dataset */
- if ((d1=H5Dcreate (file, "d1", H5T_NATIVE_INT, scalar, H5P_DEFAULT))<0) TEST_ERROR;
- if (H5Dclose (d1)<0) TEST_ERROR;
+ if ((d1=H5Dcreate (file, "d1", H5T_NATIVE_INT, scalar, H5P_DEFAULT)) < 0) TEST_ERROR
+ if (H5Dclose (d1) < 0) TEST_ERROR
/* Create a hard link */
- if (H5Lcreate_hard (file, "d1", H5L_SAME_LOC, "grp1/hard", H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
+ if (H5Lcreate_hard (file, "d1", H5L_SAME_LOC, "grp1/hard", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create a symbolic link */
- if (H5Lcreate_soft ("/d1", file, "grp1/soft", H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
+ if (H5Lcreate_soft ("/d1", file, "grp1/soft", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create a symbolic link to something that doesn't exist */
- if (H5Lcreate_soft ("foobar", file, "grp1/dangle", H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
+ if (H5Lcreate_soft ("foobar", file, "grp1/dangle", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create a recursive symbolic link */
- if (H5Lcreate_soft ("/grp1/recursive", file, "/grp1/recursive", H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
+ if (H5Lcreate_soft ("/grp1/recursive", file, "/grp1/recursive", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close */
- if (H5Sclose (scalar)<0) TEST_ERROR;
- if (H5Fclose (file)<0) TEST_ERROR;
+ if (H5Sclose (scalar) < 0) TEST_ERROR
+ if (H5Fclose (file) < 0) TEST_ERROR
PASSED();
return 0;
@@ -152,7 +155,7 @@ mklinks(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-new_links(hid_t fapl)
+new_links(hid_t fapl, hbool_t new_format)
{
hid_t file_a, file_b=(-1);
hid_t grp1_a=(-1), grp1_b=(-1), grp2_a=(-1), grp2_b=(-1);
@@ -161,57 +164,60 @@ new_links(hid_t fapl)
char filename[NAME_BUF_SIZE];
hsize_t size[1] = {1};
- TESTING("H5Lcreate functions");
+ if(new_format)
+ TESTING("H5Lcreate functions (w/new group format)")
+ else
+ TESTING("H5Lcreate functions")
/* Create two files */
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if ((file_a=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file_a=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
h5_fixname(FILENAME[2], fapl, filename, sizeof filename);
- if ((file_b=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file_b=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
- if ((scalar=H5Screate_simple (1, size, size))<0) TEST_ERROR;
+ if ((scalar=H5Screate_simple (1, size, size)) < 0) TEST_ERROR
/* Create two groups in each file */
- if ((grp1_a=H5Gcreate (file_a, "grp1", (size_t)0))<0) TEST_ERROR;
- if ((grp2_a=H5Gcreate (file_a, "grp2", (size_t)0))<0) TEST_ERROR;
- if ((grp1_b=H5Gcreate (file_b, "grp1", (size_t)0))<0) TEST_ERROR;
- if ((grp2_b=H5Gcreate (file_b, "grp2", (size_t)0))<0) TEST_ERROR;
+ if ((grp1_a=H5Gcreate (file_a, "grp1", (size_t)0)) < 0) TEST_ERROR
+ if ((grp2_a=H5Gcreate (file_a, "grp2", (size_t)0)) < 0) TEST_ERROR
+ if ((grp1_b=H5Gcreate (file_b, "grp1", (size_t)0)) < 0) TEST_ERROR
+ if ((grp2_b=H5Gcreate (file_b, "grp2", (size_t)0)) < 0) TEST_ERROR
/* Create datasets */
- if((dset1=H5Dcreate(file_a, "dataset1", H5T_NATIVE_INT, scalar, H5P_DEFAULT))<0) TEST_ERROR;
- if((dset2=H5Dcreate(grp1_a, "dataset2", H5T_NATIVE_INT, scalar, H5P_DEFAULT))<0) TEST_ERROR;
+ if((dset1=H5Dcreate(file_a, "dataset1", H5T_NATIVE_INT, scalar, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((dset2=H5Dcreate(grp1_a, "dataset2", H5T_NATIVE_INT, scalar, H5P_DEFAULT)) < 0) TEST_ERROR
/* Create links within a file. Both of source and destination use
* H5L_SAME_LOC. Both hard and soft links should fail. */
H5E_BEGIN_TRY {
- if(H5Lcreate_hard(H5L_SAME_LOC, "dataset1", H5L_SAME_LOC, "hard", H5P_DEFAULT, H5P_DEFAULT)!=FAIL) TEST_ERROR;
+ if(H5Lcreate_hard(H5L_SAME_LOC, "dataset1", H5L_SAME_LOC, "hard", H5P_DEFAULT, H5P_DEFAULT)!=FAIL) TEST_ERROR
} H5E_END_TRY;
H5E_BEGIN_TRY {
- if(H5Lcreate_soft("dataset1", H5L_SAME_LOC, "soft", H5P_DEFAULT, H5P_DEFAULT)!=FAIL) TEST_ERROR;
+ if(H5Lcreate_soft("dataset1", H5L_SAME_LOC, "soft", H5P_DEFAULT, H5P_DEFAULT)!=FAIL) TEST_ERROR
} H5E_END_TRY;
/* Create links across files with hard link. Should fail. */
H5E_BEGIN_TRY {
- if(H5Lcreate_hard(file_a, "dataset1", file_b, "hard", H5P_DEFAULT, H5P_DEFAULT)!=FAIL) TEST_ERROR;
+ if(H5Lcreate_hard(file_a, "dataset1", file_b, "hard", H5P_DEFAULT, H5P_DEFAULT)!=FAIL) TEST_ERROR
} H5E_END_TRY;
/* Create hard link to test H5L_SAME_LOC */
- if(H5Lcreate_hard(grp1_a, "dataset2", H5L_SAME_LOC, "hard1", H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
+ if(H5Lcreate_hard(grp1_a, "dataset2", H5L_SAME_LOC, "hard1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create links to test hard links across different locations */
- if(H5Lcreate_hard(grp1_a, "dataset2", grp2_a, "hard2", H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
+ if(H5Lcreate_hard(grp1_a, "dataset2", grp2_a, "hard2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close dataspace and files */
- if (H5Sclose (scalar)<0) TEST_ERROR;
- if (H5Dclose(dset1)<0) TEST_ERROR;
- if (H5Dclose(dset2)<0) TEST_ERROR;
- if (H5Gclose (grp1_a)<0) TEST_ERROR;
- if (H5Gclose (grp2_a)<0) TEST_ERROR;
- if (H5Gclose (grp1_b)<0) TEST_ERROR;
- if (H5Gclose (grp2_b)<0) TEST_ERROR;
- if (H5Fclose (file_a)<0) TEST_ERROR;
- if (H5Fclose (file_b)<0) TEST_ERROR;
+ if (H5Sclose (scalar) < 0) TEST_ERROR
+ if (H5Dclose(dset1) < 0) TEST_ERROR
+ if (H5Dclose(dset2) < 0) TEST_ERROR
+ if (H5Gclose (grp1_a) < 0) TEST_ERROR
+ if (H5Gclose (grp2_a) < 0) TEST_ERROR
+ if (H5Gclose (grp1_b) < 0) TEST_ERROR
+ if (H5Gclose (grp2_b) < 0) TEST_ERROR
+ if (H5Fclose (file_a) < 0) TEST_ERROR
+ if (H5Fclose (file_b) < 0) TEST_ERROR
PASSED();
return 0;
@@ -250,7 +256,7 @@ new_links(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-cklinks(hid_t fapl)
+cklinks(hid_t fapl, hbool_t new_format)
{
hid_t file;
H5G_stat_t sb1, sb2;
@@ -258,45 +264,48 @@ cklinks(hid_t fapl)
char filename[NAME_BUF_SIZE];
herr_t status;
- TESTING("link queries");
+ if(new_format)
+ TESTING("link queries (w/new group format)")
+ else
+ TESTING("link queries")
/* Open the file */
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if ((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl))<0) TEST_ERROR;
+ if ((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* Hard link */
- if (H5Gget_objinfo(file, "d1", TRUE, &sb1)<0) TEST_ERROR;
- if (H5Gget_objinfo(file, "grp1/hard", TRUE, &sb2)<0) TEST_ERROR;
+ if (H5Gget_objinfo(file, "d1", TRUE, &sb1) < 0) TEST_ERROR
+ if (H5Gget_objinfo(file, "grp1/hard", TRUE, &sb2) < 0) TEST_ERROR
if (H5G_DATASET!=sb2.type) {
H5_FAILED();
printf(" %d: Unexpected object type should have been a dataset\n", __LINE__);
- TEST_ERROR;
+ TEST_ERROR
}
if (HDmemcmp(&sb1.objno, &sb2.objno, sizeof(sb1.objno))) {
H5_FAILED();
puts(" Hard link test failed. Link seems not to point to the ");
puts(" expected file location.");
- TEST_ERROR;
+ TEST_ERROR
}
/* Symbolic link */
- if (H5Gget_objinfo(file, "grp1/soft", TRUE, &sb2)<0) TEST_ERROR;
+ if (H5Gget_objinfo(file, "grp1/soft", TRUE, &sb2) < 0) TEST_ERROR
if (H5G_DATASET!=sb2.type) {
H5_FAILED();
printf(" %d: Unexpected object type should have been a dataset\n", __LINE__);
- TEST_ERROR;
+ TEST_ERROR
}
if (HDmemcmp(&sb1.objno, &sb2.objno, sizeof(sb1.objno))) {
H5_FAILED();
puts(" Soft link test failed. Link seems not to point to the ");
puts(" expected file location.");
- TEST_ERROR;
+ TEST_ERROR
}
- if (H5Lget_linkval(file, "grp1/soft", sizeof linkval, linkval, H5P_DEFAULT)<0) TEST_ERROR;
+ if (H5Lget_linkval(file, "grp1/soft", sizeof linkval, linkval, H5P_DEFAULT) < 0) TEST_ERROR
if (HDstrcmp(linkval, "/d1")) {
H5_FAILED();
puts(" Soft link test failed. Wrong link value");
- TEST_ERROR;
+ TEST_ERROR
}
/* Dangling link */
@@ -306,23 +315,23 @@ cklinks(hid_t fapl)
if (status>=0) {
H5_FAILED();
puts(" H5Gget_objinfo() should have failed for a dangling link.");
- TEST_ERROR;
+ TEST_ERROR
}
- if (H5Gget_objinfo(file, "grp1/dangle", FALSE, &sb2)<0) TEST_ERROR;
+ if (H5Gget_objinfo(file, "grp1/dangle", FALSE, &sb2) < 0) TEST_ERROR
if (H5G_LINK!=sb2.type) {
H5_FAILED();
printf(" %d: Unexpected object type should have been a symbolic link\n", __LINE__);
- TEST_ERROR;
+ TEST_ERROR
}
- if (H5Gget_linkval(file, "grp1/dangle", sizeof linkval, linkval)<0) {
+ if (H5Gget_linkval(file, "grp1/dangle", sizeof linkval, linkval) < 0) {
H5_FAILED();
printf(" %d: Can't retrieve link value\n", __LINE__);
- TEST_ERROR;
+ TEST_ERROR
}
if (HDstrcmp(linkval, "foobar")) {
H5_FAILED();
puts(" Dangling link test failed. Wrong link value");
- TEST_ERROR;
+ TEST_ERROR
}
/* Recursive link */
@@ -332,27 +341,27 @@ cklinks(hid_t fapl)
if (status>=0) {
H5_FAILED();
puts(" H5Gget_objinfo() should have failed for a recursive link.");
- TEST_ERROR;
+ TEST_ERROR
}
- if (H5Gget_objinfo(file, "grp1/recursive", FALSE, &sb2)<0) TEST_ERROR;
+ if (H5Gget_objinfo(file, "grp1/recursive", FALSE, &sb2) < 0) TEST_ERROR
if (H5G_LINK!=sb2.type) {
H5_FAILED();
printf(" %d: Unexpected object type should have been a symbolic link\n", __LINE__);
- TEST_ERROR;
+ TEST_ERROR
}
- if (H5Gget_linkval(file, "grp1/recursive", sizeof linkval, linkval)<0) {
+ if (H5Gget_linkval(file, "grp1/recursive", sizeof linkval, linkval) < 0) {
H5_FAILED();
printf(" %d: Can't retrieve link value\n", __LINE__);
- TEST_ERROR;
+ TEST_ERROR
}
if (HDstrcmp(linkval, "/grp1/recursive")) {
H5_FAILED();
puts(" Recursive link test failed. Wrong link value");
- TEST_ERROR;
+ TEST_ERROR
}
/* Cleanup */
- if (H5Fclose(file)<0) TEST_ERROR;
+ if (H5Fclose(file) < 0) TEST_ERROR
PASSED();
return 0;
@@ -377,41 +386,44 @@ cklinks(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-ck_new_links(hid_t fapl)
+ck_new_links(hid_t fapl, hbool_t new_format)
{
hid_t file;
H5G_stat_t sb_dset, sb_hard1, sb_hard2;
char filename[NAME_BUF_SIZE];
- TESTING("new link queries");
+ if(new_format)
+ TESTING("new link queries (w/new group format)")
+ else
+ TESTING("new link queries")
/* Open the file */
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if ((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl))<0) TEST_ERROR;
+ if ((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* Get hard link info */
- if(H5Gget_objinfo(file, "/grp1/dataset2", TRUE, &sb_dset)<0)
- TEST_ERROR;
- if(H5Gget_objinfo(file, "/grp1/hard1", TRUE, &sb_hard1)<0)
- TEST_ERROR;
- if(H5Gget_objinfo(file, "/grp2/hard2", TRUE, &sb_hard2)<0)
- TEST_ERROR;
+ if(H5Gget_objinfo(file, "/grp1/dataset2", TRUE, &sb_dset) < 0)
+ TEST_ERROR
+ if(H5Gget_objinfo(file, "/grp1/hard1", TRUE, &sb_hard1) < 0)
+ TEST_ERROR
+ if(H5Gget_objinfo(file, "/grp2/hard2", TRUE, &sb_hard2) < 0)
+ TEST_ERROR
/* Check hard links */
if(H5G_DATASET!=sb_hard1.type || H5G_DATASET!=sb_hard2.type) {
H5_FAILED();
printf(" %d: Unexpected object type should have been a dataset\n", __LINE__);
- TEST_ERROR;
+ TEST_ERROR
}
if(HDmemcmp(&sb_dset.objno, &sb_hard1.objno, sizeof(sb_dset.objno)) || HDmemcmp(&sb_dset.objno, &sb_hard2.objno, sizeof(sb_dset.objno))) {
H5_FAILED();
puts(" Hard link test failed. Link seems not to point to the ");
puts(" expected file location.");
- TEST_ERROR;
+ TEST_ERROR
}
/* Cleanup */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
PASSED();
return 0;
@@ -437,7 +449,7 @@ ck_new_links(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-long_links(hid_t fapl)
+long_links(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1); /* Group ID */
@@ -446,35 +458,38 @@ long_links(hid_t fapl)
size_t u; /* Local index variable */
char filename[NAME_BUF_SIZE];
- TESTING("long names for objects & links");
+ if(new_format)
+ TESTING("long names for objects & links (w/new group format)")
+ else
+ TESTING("long names for objects & links")
/* Create files */
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group with short name in file (used as target for hard links) */
- if((gid=H5Gcreate (fid, "grp1", (size_t)0))<0) TEST_ERROR;
+ if((gid=H5Gcreate (fid, "grp1", (size_t)0)) < 0) TEST_ERROR
/* Construct very long file name */
- if((objname = HDmalloc((size_t)(MAX_NAME_LEN + 1))) == NULL) TEST_ERROR;
+ if((objname = HDmalloc((size_t)(MAX_NAME_LEN + 1))) == NULL) TEST_ERROR
for(u = 0; u < MAX_NAME_LEN; u++)
objname[u] = 'a';
objname[MAX_NAME_LEN] = '\0';
/* Create hard link to existing object */
- if(H5Lcreate_hard(fid, "grp1", fid, objname, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_hard(fid, "grp1", fid, objname, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create soft link to existing object */
objname[0] = 'b';
- if(H5Lcreate_soft("grp1", fid, objname, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_soft("grp1", fid, objname, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create group with long name in existing group */
- if((gid2=H5Gcreate(gid, objname, (size_t)0))<0) TEST_ERROR;
+ if((gid2=H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
/* Close objects */
- if(H5Gclose(gid2)<0) TEST_ERROR;
- if(H5Gclose(gid)<0) TEST_ERROR;
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Release memory */
HDfree(objname);
@@ -510,7 +525,7 @@ long_links(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-toomany(hid_t fapl)
+toomany(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -518,7 +533,10 @@ toomany(hid_t fapl)
ssize_t name_len; /* Length of object name */
char filename[NAME_BUF_SIZE];
- TESTING("too many links");
+ if(new_format)
+ TESTING("too many links (w/new group format)")
+ else
+ TESTING("too many links")
/* Make certain test is valid */
/* XXX: should probably make a "generic" test that creates the proper
@@ -528,62 +546,62 @@ toomany(hid_t fapl)
/* Create file */
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group with short name in file (used as target for hard links) */
- if((gid=H5Gcreate (fid, "final", (size_t)0))<0) TEST_ERROR;
+ if((gid=H5Gcreate (fid, "final", (size_t)0)) < 0) TEST_ERROR
/* Create chain of hard links to existing object (no limit on #) */
- if(H5Lcreate_hard(fid, "final", fid, "hard1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard1", fid, "hard2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard2", fid, "hard3", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard3", fid, "hard4", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard4", fid, "hard5", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard5", fid, "hard6", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard6", fid, "hard7", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard7", fid, "hard8", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard8", fid, "hard9", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard9", fid, "hard10", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard10", fid, "hard11", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard11", fid, "hard12", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard12", fid, "hard13", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard13", fid, "hard14", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard14", fid, "hard15", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard15", fid, "hard16", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard16", fid, "hard17", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard17", fid, "hard18", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard18", fid, "hard19", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard19", fid, "hard20", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_hard(fid, "hard20", fid, "hard21", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_hard(fid, "final", fid, "hard1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard1", fid, "hard2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard2", fid, "hard3", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard3", fid, "hard4", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard4", fid, "hard5", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard5", fid, "hard6", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard6", fid, "hard7", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard7", fid, "hard8", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard8", fid, "hard9", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard9", fid, "hard10", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard10", fid, "hard11", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard11", fid, "hard12", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard12", fid, "hard13", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard13", fid, "hard14", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard14", fid, "hard15", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard15", fid, "hard16", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard16", fid, "hard17", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard17", fid, "hard18", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard18", fid, "hard19", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard19", fid, "hard20", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_hard(fid, "hard20", fid, "hard21", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create chain of soft links to existing object (limited) */
- if(H5Lcreate_soft("final", fid, "soft1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft1", fid, "soft2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft2", fid, "soft3", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft3", fid, "soft4", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft4", fid, "soft5", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft5", fid, "soft6", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft6", fid, "soft7", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft7", fid, "soft8", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft8", fid, "soft9", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft9", fid, "soft10", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft10", fid, "soft11", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft11", fid, "soft12", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft12", fid, "soft13", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft13", fid, "soft14", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft14", fid, "soft15", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft15", fid, "soft16", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_soft("soft16", fid, "soft17", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_soft("final", fid, "soft1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft1", fid, "soft2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft2", fid, "soft3", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft3", fid, "soft4", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft4", fid, "soft5", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft5", fid, "soft6", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft6", fid, "soft7", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft7", fid, "soft8", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft8", fid, "soft9", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft9", fid, "soft10", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft10", fid, "soft11", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft11", fid, "soft12", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft12", fid, "soft13", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft13", fid, "soft14", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft14", fid, "soft15", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft15", fid, "soft16", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_soft("soft16", fid, "soft17", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close objects */
- if(H5Gclose(gid)<0) TEST_ERROR;
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open file */
- if((fid=H5Fopen(filename, H5F_ACC_RDWR, fapl))<0) TEST_ERROR;
+ if((fid=H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Open object through last hard link */
- if((gid = H5Gopen(fid, "hard21")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "hard21")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -596,7 +614,7 @@ toomany(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close hard-linked object */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Open object through too deep soft link */
H5E_BEGIN_TRY {
@@ -605,11 +623,11 @@ toomany(hid_t fapl)
if (gid >= 0) {
H5_FAILED();
puts(" Should have failed for sequence of too many nested links.");
- TEST_ERROR;
+ TEST_ERROR
}
/* Open object through lesser soft link */
- if((gid = H5Gopen(fid, "soft16")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "soft16")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -623,7 +641,7 @@ toomany(hid_t fapl)
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -638,7 +656,6 @@ toomany(hid_t fapl)
} /* end toomany() */
-#ifdef H5_GROUP_REVISION
/*-------------------------------------------------------------------------
* Function: test_h5l_create
*
@@ -655,7 +672,7 @@ toomany(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-test_h5l_create(hid_t fapl)
+test_h5l_create(hid_t fapl, hbool_t new_format)
{
hid_t file_id=-1;
hid_t group_id=-1;
@@ -668,24 +685,28 @@ test_h5l_create(hid_t fapl)
int i, n, j;
int wdata[H5L_DIM1][H5L_DIM2];
int rdata[H5L_DIM1][H5L_DIM2];
- TESTING("H5Llink");
+
+ if(new_format)
+ TESTING("H5Llink (w/new group format)")
+ else
+ TESTING("H5Llink")
/* Create file */
h5_fixname(FILENAME[3], fapl, filename, sizeof filename);
- if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create and commit a datatype with no name */
- if((type_id =H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR;
- if(H5Tcommit_expand(file_id, type_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(! H5Tcommitted(type_id)) TEST_ERROR;
+ if((type_id =H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if(H5Tcommit_expand(file_id, type_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(! H5Tcommitted(type_id)) TEST_ERROR
/* Create the dataspace */
dims[0] = H5L_DIM1;
dims[1] = H5L_DIM2;
- if((space_id=H5Screate_simple(2 ,dims, NULL))<0) TEST_ERROR;
+ if((space_id=H5Screate_simple(2 ,dims, NULL)) < 0) TEST_ERROR
/* Create a dataset with no name using the committed datatype*/
- if ((dset_id = H5Dcreate_expand(file_id, type_id, space_id, H5P_DEFAULT, H5P_DEFAULT)) <0) TEST_ERROR;
+ if ((dset_id = H5Dcreate_expand(file_id, type_id, space_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
/* Verify that we can write to and read from the dataset */
/* Initialize the dataset */
@@ -694,74 +715,69 @@ test_h5l_create(hid_t fapl)
wdata[i][j] = n++;
/* Write the data to the dataset */
- if (H5Dwrite(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata)<0) TEST_ERROR;
+ if (H5Dwrite(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata) < 0) TEST_ERROR
/* Read the data back */
- if (H5Dread(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata)<0) TEST_ERROR;
+ if (H5Dread(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata) < 0) TEST_ERROR
/* Verify the data */
- for (i = 0; i < H5L_DIM1; i++) {
- for (j = 0; j < H5L_DIM2; j++) {
+ for (i = 0; i < H5L_DIM1; i++)
+ for (j = 0; j < H5L_DIM2; j++)
if (wdata[i][j] != rdata[i][j])
- {
- TEST_ERROR;
- }
- }}
+ TEST_ERROR
/* Create a group with no name*/
- if((group_id = H5Gcreate_expand(file_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR;
+ if((group_id = H5Gcreate_expand(file_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
/* Link nameless datatype into nameless group */
- if(H5Llink(group_id, "datatype", type_id, H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
+ if(H5Llink(group_id, "datatype", type_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create LCPL with intermediate group creation flag set */
- if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) <0) TEST_ERROR;
- if(H5Pset_create_intermediate_group(lcpl_id, TRUE) <0) TEST_ERROR;
+ if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_create_intermediate_group(lcpl_id, TRUE) < 0) TEST_ERROR
/* Link nameless dataset into nameless group with intermediate group */
- if(H5Llink(group_id, "inter_group/dataset", dset_id, lcpl_id, H5P_DEFAULT)<0) TEST_ERROR;
+ if(H5Llink(group_id, "inter_group/dataset", dset_id, lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
/* Close IDs for dataset and datatype */
- if(H5Dclose(dset_id)<0) TEST_ERROR;
- if(H5Tclose(type_id)<0) TEST_ERROR;
+ if(H5Dclose(dset_id) < 0) TEST_ERROR
+ if(H5Tclose(type_id) < 0) TEST_ERROR
/* Re-open datatype using new link */
- if((type_id = H5Topen(group_id, "datatype"))<0) TEST_ERROR;
+ if((type_id = H5Topen(group_id, "datatype")) < 0) TEST_ERROR
/* Link nameless group to root group and close the group ID*/
- if(H5Llink(file_id, "/group", group_id, H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
- if(H5Gclose(group_id)<0) TEST_ERROR;
+ if(H5Llink(file_id, "/group", group_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gclose(group_id) < 0) TEST_ERROR
/* Open dataset through root group and verify its data */
- if((dset_id = H5Dopen(file_id, "/group/inter_group/dataset"))<0) TEST_ERROR;
+ if((dset_id = H5Dopen(file_id, "/group/inter_group/dataset")) < 0) TEST_ERROR
/* Read data from dataset */
- if (H5Dread(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata)<0) TEST_ERROR;
- for (i = 0; i < H5L_DIM1; i++) {
- for (j = 0; j < H5L_DIM2; j++) {
- if (wdata[i][j] != rdata[i][j])
- {
- TEST_ERROR;
- }
- }}
+ if (H5Dread(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata) < 0) TEST_ERROR
+ for (i = 0; i < H5L_DIM1; i++)
+ for (j = 0; j < H5L_DIM2; j++)
+ if (wdata[i][j] != rdata[i][j])
+ TEST_ERROR
/* Close open IDs */
- if(H5Dclose(dset_id)<0) TEST_ERROR;
- if(H5Tclose(type_id)<0) TEST_ERROR;
- if(H5Pclose(lcpl_id)<0) TEST_ERROR;
- if(H5Sclose(space_id)<0) TEST_ERROR;
- if(H5Fclose(file_id)<0) TEST_ERROR;
+ if(H5Dclose(dset_id) < 0) TEST_ERROR
+ if(H5Tclose(type_id) < 0) TEST_ERROR
+ if(H5Pclose(lcpl_id) < 0) TEST_ERROR
+ if(H5Sclose(space_id) < 0) TEST_ERROR
+ if(H5Fclose(file_id) < 0) TEST_ERROR
+
PASSED();
return 0;
error:
H5E_BEGIN_TRY {
- H5Gclose(group_id);
- H5Dclose(dset_id);
- H5Tclose(type_id);
- H5Pclose(lcpl_id);
- H5Sclose(space_id);
- H5Fclose(file_id);
+ H5Gclose(group_id);
+ H5Dclose(dset_id);
+ H5Tclose(type_id);
+ H5Pclose(lcpl_id);
+ H5Sclose(space_id);
+ H5Fclose(file_id);
} H5E_END_TRY;
return 1;
} /* end test_h5l_create() */
@@ -783,7 +799,7 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_lcpl(hid_t fapl)
+test_lcpl(hid_t fapl, hbool_t new_format)
{
hid_t file_id=-1;
hid_t group_id=-1;
@@ -795,101 +811,99 @@ test_lcpl(hid_t fapl)
char filename[1024];
hsize_t dims[2];
- TESTING("link creation property lists");
+ if(new_format)
+ TESTING("link creation property lists (w/new group format)")
+ else
+ TESTING("link creation property lists")
+
/* Actually, intermediate group creation is tested elsewhere (tmisc).
* Here we only need to test the character encoding property */
/* Create file */
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create and link a group with the default LCPL */
- if((group_id = H5Gcreate_expand(file_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR;
- if(H5Llink(file_id, "/group", group_id, H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
- if(H5Gclose(group_id)<0) TEST_ERROR;
+ if((group_id = H5Gcreate_expand(file_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Llink(file_id, "/group", group_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gclose(group_id) < 0) TEST_ERROR
/* Check that its character encoding is the default */
- if(H5Lget_linkinfo(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5F_CRT_DEFAULT_CSET) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5F_CRT_DEFAULT_CSET) TEST_ERROR
/* Create and commit a datatype with the default LCPL */
- if((type_id =H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR;
- if(H5Tcommit_expand(file_id, type_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Llink(file_id, "/type", type_id, H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
- if(H5Tclose(type_id)<0) TEST_ERROR;
+ if((type_id =H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if(H5Tcommit_expand(file_id, type_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Llink(file_id, "/type", type_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Tclose(type_id) < 0) TEST_ERROR;
/* Check that its character encoding is the default */
- if(H5Lget_linkinfo(file_id, "type", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5F_CRT_DEFAULT_CSET) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "type", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5F_CRT_DEFAULT_CSET) TEST_ERROR
/* Create a dataspace */
dims[0] = H5L_DIM1;
dims[1] = H5L_DIM2;
- if((space_id=H5Screate_simple(2 ,dims, NULL))<0) TEST_ERROR;
+ if((space_id=H5Screate_simple(2 ,dims, NULL)) < 0) TEST_ERROR
/* Create a dataset using the default LCPL */
- if ((dset_id = H5Dcreate_expand(file_id, H5T_NATIVE_INT, space_id, H5P_DEFAULT, H5P_DEFAULT)) <0) TEST_ERROR;
- if(H5Llink(file_id, "/dataset", dset_id, H5P_DEFAULT, H5P_DEFAULT)<0) TEST_ERROR;
- if(H5Dclose(dset_id)<0) TEST_ERROR;
+ if ((dset_id = H5Dcreate_expand(file_id, H5T_NATIVE_INT, space_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Llink(file_id, "/dataset", dset_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Dclose(dset_id) < 0) TEST_ERROR
/* Check that its character encoding is the default */
- if(H5Lget_linkinfo(file_id, "dataset", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5F_CRT_DEFAULT_CSET) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "dataset", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5F_CRT_DEFAULT_CSET) TEST_ERROR
/* Create a link creation property list with the UTF-8 character encoding */
- if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) <0) TEST_ERROR;
- if(H5Pset_char_encoding(lcpl_id, H5T_CSET_UTF8) < 0) TEST_ERROR;
+ if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_char_encoding(lcpl_id, H5T_CSET_UTF8) < 0) TEST_ERROR
/* Create and link a group with the new LCPL */
- if((group_id = H5Gcreate_expand(file_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR;
- if(H5Llink(file_id, "/group2", group_id, lcpl_id, H5P_DEFAULT)<0) TEST_ERROR;
- if(H5Gclose(group_id)<0) TEST_ERROR;
+ if((group_id = H5Gcreate_expand(file_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Llink(file_id, "/group2", group_id, lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gclose(group_id) < 0) TEST_ERROR
/* Check that its character encoding is UTF-8 */
- if(H5Lget_linkinfo(file_id, "group2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "group2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
/* Create and commit a datatype with the new LCPL */
- if((type_id =H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR;
- if(H5Tcommit_expand(file_id, type_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Llink(file_id, "/type2", type_id, lcpl_id, H5P_DEFAULT)<0) TEST_ERROR;
- if(H5Tclose(type_id)<0) TEST_ERROR;
+ if((type_id =H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if(H5Tcommit_expand(file_id, type_id, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Llink(file_id, "/type2", type_id, lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Tclose(type_id) < 0) TEST_ERROR;
/* Check that its character encoding is UTF-8 */
- if(H5Lget_linkinfo(file_id, "type2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "type2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
/* Create a dataset using the new LCPL */
- if ((dset_id = H5Dcreate_expand(file_id, H5T_NATIVE_INT, space_id, H5P_DEFAULT, H5P_DEFAULT)) <0) TEST_ERROR;
- if(H5Llink(file_id, "/dataset2", dset_id, lcpl_id, H5P_DEFAULT)<0) TEST_ERROR;
- if(H5Dclose(dset_id)<0) TEST_ERROR;
+ if ((dset_id = H5Dcreate_expand(file_id, H5T_NATIVE_INT, space_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Llink(file_id, "/dataset2", dset_id, lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Dclose(dset_id) < 0) TEST_ERROR
/* Check that its character encoding is UTF-8 */
- if(H5Lget_linkinfo(file_id, "dataset2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "dataset2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
/* Create a new link to the dataset with a different character encoding. */
- if(H5Pclose(lcpl_id)<0) TEST_ERROR;
- if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) <0) TEST_ERROR;
- if(H5Pset_char_encoding(lcpl_id, H5T_CSET_ASCII) < 0) TEST_ERROR;
+ if(H5Pclose(lcpl_id) < 0) TEST_ERROR
+ if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_char_encoding(lcpl_id, H5T_CSET_ASCII) < 0) TEST_ERROR
- if(H5Lcreate_hard(file_id, "/dataset2", file_id, "/dataset2_link", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_hard(file_id, "/dataset2", file_id, "/dataset2_link", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
/* Check that its character encoding is ASCII */
- if(H5Lget_linkinfo(file_id, "/dataset2_link", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5T_CSET_ASCII) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "/dataset2_link", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5T_CSET_ASCII) TEST_ERROR
/* Check that the first link's encoding hasn't changed */
- if(H5Lget_linkinfo(file_id, "/dataset2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
-
+ if(H5Lget_linkinfo(file_id, "/dataset2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
-/* JAMES: these tests don't work because the character set encoding is
- * not stored in the symbol table.
- * Quincey says this will be fixed someday.
- */
-#ifdef NOTYET
/* Make sure that LCPLs work properly for other API calls: */
/* H5Lcreate_soft */
if(H5Pset_char_encoding(lcpl_id, H5T_CSET_UTF8) < 0) TEST_ERROR
@@ -900,25 +914,24 @@ test_lcpl(hid_t fapl)
/* H5Lmove */
if(H5Pset_char_encoding(lcpl_id, H5T_CSET_ASCII) < 0) TEST_ERROR
if(H5Lmove(file_id, "slink_to_dset2", file_id, "moved_slink", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
- if(H5Lget_linkinfo(file_id, "moved_slink", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5T_CSET_ASCII) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "moved_slink", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5T_CSET_ASCII) TEST_ERROR
/* H5Lcopy */
- if(H5Pset_char_encoding(lcpl_id, H5T_CSET_UTF8) < 0) TEST_ERROR;
+ if(H5Pset_char_encoding(lcpl_id, H5T_CSET_UTF8) < 0) TEST_ERROR
if(H5Lcopy(file_id, "moved_slink", file_id, "copied_slink", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
- if(H5Lget_linkinfo(file_id, "copied_slink", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
+ if(H5Lget_linkinfo(file_id, "copied_slink", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
/* H5Lcreate_external */
if(H5Lcreate_external("filename", "path", file_id, "extlink", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
- if(H5Lget_linkinfo(file_id, "extlink", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
-#endif /* NOTYET */
+ if(H5Lget_linkinfo(file_id, "extlink", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
/* Close open IDs */
- if(H5Pclose(lcpl_id)<0) TEST_ERROR;
- if(H5Sclose(space_id)<0) TEST_ERROR;
- if(H5Fclose(file_id)<0) TEST_ERROR;
+ if(H5Pclose(lcpl_id) < 0) TEST_ERROR
+ if(H5Sclose(space_id) < 0) TEST_ERROR
+ if(H5Fclose(file_id) < 0) TEST_ERROR
PASSED();
return 0;
@@ -934,7 +947,6 @@ error:
} H5E_END_TRY;
return 1;
} /* end test_lcpl() */
-#endif /* H5_GROUP_REVISION */
/*-------------------------------------------------------------------------
@@ -954,103 +966,106 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_move(hid_t fapl)
+test_move(hid_t fapl, hbool_t new_format)
{
hid_t file_a, file_b=(-1);
hid_t grp_1=(-1), grp_2=(-1), grp_move=(-1), moved_grp=(-1);
char filename[1024];
- TESTING("H5Lmove");
+ if(new_format)
+ TESTING("H5Lmove (w/new group format)")
+ else
+ TESTING("H5Lmove")
/* Create two new files */
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if ((file_a=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0)
- TEST_ERROR;
+ if ((file_a=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+ TEST_ERROR
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if ((file_b=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0)
- TEST_ERROR;
+ if ((file_b=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+ TEST_ERROR
/* Create groups in first file */
- if((grp_1=H5Gcreate(file_a, "group1", 0))<0) TEST_ERROR;
- if((grp_2=H5Gcreate(file_a, "group2", 0))<0) TEST_ERROR;
- if((grp_move=H5Gcreate(grp_1, "group_move", 0))<0) TEST_ERROR;
+ if((grp_1=H5Gcreate(file_a, "group1", (size_t)0)) < 0) TEST_ERROR
+ if((grp_2=H5Gcreate(file_a, "group2", (size_t)0)) < 0) TEST_ERROR
+ if((grp_move=H5Gcreate(grp_1, "group_move", (size_t)0)) < 0) TEST_ERROR
/* Create hard and soft links. */
- if(H5Lcreate_hard(grp_1, "group_move", H5L_SAME_LOC, "hard", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
- if(H5Lcreate_soft("/group1/group_move", grp_2, "soft", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lcreate_hard(grp_1, "group_move", H5L_SAME_LOC, "hard", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
+ if(H5Lcreate_soft("/group1/group_move", grp_2, "soft", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Move a group within the file. Both of source and destination use
* H5L_SAME_LOC. Should fail. */
H5E_BEGIN_TRY {
if(H5Lmove(H5L_SAME_LOC, "group_move", H5L_SAME_LOC, "group_new_name", H5P_DEFAULT, H5P_DEFAULT)
- !=FAIL) TEST_ERROR;
+ !=FAIL) TEST_ERROR
} H5E_END_TRY;
/* Move a group across files. Should fail. */
H5E_BEGIN_TRY {
if(H5Lmove(grp_1, "group_move", file_b, "group_new_name", H5P_DEFAULT, H5P_DEFAULT)
- !=FAIL) TEST_ERROR;
+ !=FAIL) TEST_ERROR
} H5E_END_TRY;
/* Move a group across groups in the same file while renaming it. */
- if(H5Lmove(grp_1, "group_move", grp_2, "group_new_name", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lmove(grp_1, "group_move", grp_2, "group_new_name", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Open the group just moved to the new location. */
- if((moved_grp = H5Gopen(grp_2, "group_new_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_2, "group_new_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Verify that the group is no longer in the original location */
H5E_BEGIN_TRY {
if((moved_grp = H5Gopen(grp_1, "group_move"))>=0)
- TEST_ERROR;
+ TEST_ERROR
} H5E_END_TRY;
/* Use H5Lmove to rename a group without moving it. */
- if(H5Lmove(grp_2, "group_new_name", H5L_SAME_LOC, "group_newer_name", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lmove(grp_2, "group_new_name", H5L_SAME_LOC, "group_newer_name", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Open the group. */
- if((moved_grp = H5Gopen(grp_2, "group_newer_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_2, "group_newer_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Use H5Lmove to move a group without renaming it. */
- if(H5Lmove(grp_2, "group_newer_name", grp_1, "group_newer_name", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lmove(grp_2, "group_newer_name", grp_1, "group_newer_name", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Open the group . */
- if((moved_grp = H5Gopen(grp_1, "group_newer_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_1, "group_newer_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Move the group while giving long paths. */
- if(H5Lmove(file_a, "/group1/group_newer_name", grp_2, "/group2/group_newest_name", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lmove(file_a, "/group1/group_newer_name", grp_2, "/group2/group_newest_name", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Open the group just moved to the new location. */
- if((moved_grp = H5Gopen(grp_2, "group_newest_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_2, "group_newest_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Verify that the group is in no previous locations */
H5E_BEGIN_TRY {
if((moved_grp = H5Gopen(grp_1, "group_newer_name"))>=0)
- TEST_ERROR;
+ TEST_ERROR
if((moved_grp = H5Gopen(grp_2, "group_newer_name"))>=0)
- TEST_ERROR;
+ TEST_ERROR
if((moved_grp = H5Gopen(grp_2, "group_new_name"))>=0)
- TEST_ERROR;
+ TEST_ERROR
if((moved_grp = H5Gopen(grp_1, "group_copy"))>=0)
- TEST_ERROR;
+ TEST_ERROR
} H5E_END_TRY;
H5Gclose(grp_1);
@@ -1093,119 +1108,122 @@ test_move(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-test_copy(hid_t fapl)
+test_copy(hid_t fapl, hbool_t new_format)
{
hid_t file_a, file_b=(-1);
hid_t grp_1=(-1), grp_2=(-1), grp_move=(-1), moved_grp=(-1);
char filename[1024];
- TESTING("H5Lcopy");
+ if(new_format)
+ TESTING("H5Lcopy (w/new group format)")
+ else
+ TESTING("H5Lcopy")
/* Create two new files */
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if ((file_a=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0)
- TEST_ERROR;
+ if ((file_a=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+ TEST_ERROR
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if ((file_b=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0)
- TEST_ERROR;
+ if ((file_b=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+ TEST_ERROR
/* Create groups in first file */
- if((grp_1=H5Gcreate(file_a, "group1", 0))<0) TEST_ERROR;
- if((grp_2=H5Gcreate(file_a, "group2", 0))<0) TEST_ERROR;
- if((grp_move=H5Gcreate(grp_1, "group_copy", 0))<0) TEST_ERROR;
+ if((grp_1=H5Gcreate(file_a, "group1", (size_t)0)) < 0) TEST_ERROR
+ if((grp_2=H5Gcreate(file_a, "group2", (size_t)0)) < 0) TEST_ERROR
+ if((grp_move=H5Gcreate(grp_1, "group_copy", (size_t)0)) < 0) TEST_ERROR
/* Create hard and soft links. */
- if(H5Lcreate_hard(grp_1, "group_copy", H5L_SAME_LOC, "hard", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
- if(H5Lcreate_soft("/group1/group_copy", grp_2, "soft", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lcreate_hard(grp_1, "group_copy", H5L_SAME_LOC, "hard", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
+ if(H5Lcreate_soft("/group1/group_copy", grp_2, "soft", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Copy a group within the file. Both of source and destination use
* H5L_SAME_LOC. Should fail. */
H5E_BEGIN_TRY {
if(H5Lcopy(H5L_SAME_LOC, "group_copy", H5L_SAME_LOC, "group_new_name", H5P_DEFAULT, H5P_DEFAULT)
- !=FAIL) TEST_ERROR;
+ !=FAIL) TEST_ERROR
} H5E_END_TRY;
/* Copy a group across files. Should fail. */
H5E_BEGIN_TRY {
if(H5Lcopy(grp_1, "group_copy", file_b, "group_new_name", H5P_DEFAULT, H5P_DEFAULT)
- !=FAIL) TEST_ERROR;
+ !=FAIL) TEST_ERROR
} H5E_END_TRY;
/* Move a group across groups in the same file while renaming it. */
- if(H5Lcopy(grp_1, "group_copy", grp_2, "group_new_name", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lcopy(grp_1, "group_copy", grp_2, "group_new_name", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Open the group just moved to the new location. */
- if((moved_grp = H5Gopen(grp_2, "group_new_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_2, "group_new_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Verify that the group is also in the original location */
- if((moved_grp = H5Gopen(grp_1, "group_copy"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_1, "group_copy")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Use H5Lcopy to create a group in the same location with a different name. */
- if(H5Lcopy(grp_2, "group_new_name", H5L_SAME_LOC, "group_newer_name", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lcopy(grp_2, "group_new_name", H5L_SAME_LOC, "group_newer_name", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Open the group. */
- if((moved_grp = H5Gopen(grp_2, "group_newer_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_2, "group_newer_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Verify that the group is also in the original location */
- if((moved_grp = H5Gopen(grp_2, "group_new_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_2, "group_new_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Use H5Lcopy to copy to a different location with the same name. */
- if(H5Lcopy(grp_2, "group_newer_name", grp_1, "group_newer_name", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lcopy(grp_2, "group_newer_name", grp_1, "group_newer_name", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Open the group . */
- if((moved_grp = H5Gopen(grp_1, "group_newer_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_1, "group_newer_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Verify that the group is still in the previous location */
- if((moved_grp = H5Gopen(grp_2, "group_new_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_2, "group_new_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Copy the group while giving long paths. */
- if(H5Lcopy(file_a, "/group1/group_newer_name", grp_2, "/group2/group_newest_name", H5P_DEFAULT, H5P_DEFAULT)<0)
- TEST_ERROR;
+ if(H5Lcopy(file_a, "/group1/group_newer_name", grp_2, "/group2/group_newest_name", H5P_DEFAULT, H5P_DEFAULT) < 0)
+ TEST_ERROR
/* Open the group just moved to the new location. */
- if((moved_grp = H5Gopen(grp_2, "group_newest_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_2, "group_newest_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Verify that the group is still in all previous original locations */
- if((moved_grp = H5Gopen(grp_1, "group_newer_name"))<0)
- TEST_ERROR;
+ if((moved_grp = H5Gopen(grp_1, "group_newer_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
- if((moved_grp = H5Gopen(grp_2, "group_newer_name"))<0)
- TEST_ERROR;
+ TEST_ERROR
+ if((moved_grp = H5Gopen(grp_2, "group_newer_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
- if((moved_grp = H5Gopen(grp_2, "group_new_name"))<0)
- TEST_ERROR;
+ TEST_ERROR
+ if((moved_grp = H5Gopen(grp_2, "group_new_name")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
- if((moved_grp = H5Gopen(grp_1, "group_copy"))<0)
- TEST_ERROR;
+ TEST_ERROR
+ if((moved_grp = H5Gopen(grp_1, "group_copy")) < 0)
+ TEST_ERROR
if( H5Gclose(moved_grp) < 0)
- TEST_ERROR;
+ TEST_ERROR
H5Gclose(grp_1);
H5Gclose(grp_2);
@@ -1228,8 +1246,8 @@ test_copy(hid_t fapl)
} H5E_END_TRY;
return 1;
}
+
-#ifdef H5_GROUP_REVISION
/*-------------------------------------------------------------------------
* Function: test_move_preserves
*
@@ -1247,117 +1265,156 @@ test_copy(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-test_move_preserves(hid_t fapl_id)
+test_move_preserves(hid_t fapl_id, hbool_t new_format)
{
hid_t file_id=-1;
hid_t group_id=-1;
+ hid_t fcpl_id=-1; /* Group creation property list ID */
hid_t lcpl_id=-1;
hid_t lcpl2_id=-1;
H5G_stat_t statbuf;
H5L_linkinfo_t linfo;
- time_t old_create_time;
+ H5T_cset_t old_cset;
+ int64_t old_corder; /* Creation order value of link */
time_t old_modification_time;
time_t curr_time;
+ hbool_t track_corder; /* Status of creation order tracking for GCPL */
char filename[1024];
- TESTING("moving and copying links preserves their properties");
+ if(new_format)
+ TESTING("moving and copying links preserves their properties (w/new group format)")
+ else
+ TESTING("moving and copying links preserves their properties")
+
+ /* Create a file creation property list with creation order stored for links
+ * in the root group
+ */
+ if((fcpl_id = H5Pcreate(H5P_FILE_CREATE)) < 0) TEST_ERROR
+ if(H5Pget_creation_order_tracking(fcpl_id, &track_corder) < 0) TEST_ERROR
+ if(track_corder != FALSE) TEST_ERROR
+ if(H5Pset_creation_order_tracking(fcpl_id, TRUE) < 0) TEST_ERROR
+ if(H5Pget_creation_order_tracking(fcpl_id, &track_corder) < 0) TEST_ERROR
+ if(track_corder != TRUE) TEST_ERROR
/* Create file */
+ /* (with creation order tracking for the root group) */
h5_fixname(FILENAME[0], fapl_id, filename, sizeof filename);
-
- if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl_id))<0) TEST_ERROR;
+ if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, fcpl_id, fapl_id)) < 0) TEST_ERROR
/* Create a link creation property list with the UTF-8 character encoding */
- if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) <0) TEST_ERROR;
- if(H5Pset_char_encoding(lcpl_id, H5T_CSET_UTF8) < 0) TEST_ERROR;
+ if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_char_encoding(lcpl_id, H5T_CSET_UTF8) < 0) TEST_ERROR
+
/* Create a group with that lcpl */
- if((group_id = H5Gcreate_expand(file_id, H5P_DEFAULT, H5P_DEFAULT)) <0) TEST_ERROR;
- if(H5Llink(file_id, "group", group_id, lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Gclose(group_id) < 0) TEST_ERROR;
-
- /* Get the group's link's creation time */
- if(H5Lget_linkinfo(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "group", TRUE, &statbuf) <0) TEST_ERROR;
- old_create_time = linfo.ctime;
+ if((group_id = H5Gcreate_expand(file_id, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Llink(file_id, "group", group_id, lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gclose(group_id) < 0) TEST_ERROR
+
+ /* Get the group's link's information */
+ if(H5Lget_linkinfo(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "group", TRUE, &statbuf) < 0) TEST_ERROR
+ old_cset = linfo.cset;
+ if(old_cset != H5T_CSET_UTF8) TEST_ERROR
+ if(linfo.corder_valid != TRUE) TEST_ERROR
+ old_corder = linfo.corder;
+ if(old_corder != 0) TEST_ERROR
old_modification_time = statbuf.mtime;
- /* If this test happens too quickly, the creation times will all be the same. Make sure the time changes. */
- curr_time=time(NULL);
- while(time(NULL) <= curr_time );
+ /* If this test happens too quickly, the times will all be the same. Make sure the time changes. */
+ curr_time = HDtime(NULL);
+ while(HDtime(NULL) <= curr_time)
+ ;
/* Close the file and reopen it */
- if(H5Fclose(file_id)<0) TEST_ERROR;
- if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl_id)) <0) TEST_ERROR;
-
- /* Get the group's link's creation time. The times should be unchanged */
- if(H5Lget_linkinfo(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "group", TRUE, &statbuf) <0) TEST_ERROR;
- if(old_modification_time != statbuf.mtime) TEST_ERROR;
- if(old_create_time != linfo.ctime) TEST_ERROR;
-
- /* Create a new link to the group. It should have a different creation time but the same modification time */
- if(H5Lcreate_hard(file_id, "group", file_id, "group2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "group2", TRUE, &statbuf) <0) TEST_ERROR;
- if(old_modification_time != statbuf.mtime) TEST_ERROR;
- if(H5Lget_linkinfo(file_id, "group2", &linfo, H5P_DEFAULT) <0) TEST_ERROR;
- if(old_create_time == linfo.ctime) TEST_ERROR;
-
- /* Copy the first link to a UTF-8 name. Its creation time and modification time should not change. */
- if(H5Lcopy(file_id, "group", file_id, "group_copied", lcpl_id, H5P_DEFAULT) <0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "group_copied", TRUE, &statbuf) <0) TEST_ERROR;
- if(old_modification_time != statbuf.mtime) TEST_ERROR;
- if(H5Lget_linkinfo(file_id, "group_copied", &linfo, H5P_DEFAULT) <0) TEST_ERROR;
- if(old_create_time != linfo.ctime) TEST_ERROR;
+ if(H5Fclose(file_id) < 0) TEST_ERROR
+ if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl_id)) < 0) TEST_ERROR
+
+ /* Get the link's character set & modification time . They should be unchanged */
+ if(H5Lget_linkinfo(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "group", TRUE, &statbuf) < 0) TEST_ERROR
+ if(old_modification_time != statbuf.mtime) TEST_ERROR
+ if(old_cset != linfo.cset) TEST_ERROR
+ if(linfo.corder_valid != TRUE) TEST_ERROR
+ if(old_corder != linfo.corder) TEST_ERROR
+
+ /* Create a new link to the group. It should have a different creation order value but the same modification time */
+ if(H5Lcreate_hard(file_id, "group", file_id, "group2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "group2", TRUE, &statbuf) < 0) TEST_ERROR
+ if(old_modification_time != statbuf.mtime) TEST_ERROR
+ if(H5Lget_linkinfo(file_id, "group2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(old_corder == linfo.corder) TEST_ERROR
+ if(linfo.corder_valid != TRUE) TEST_ERROR
+ if(linfo.corder != 1) TEST_ERROR
+ if(linfo.cset != H5T_CSET_ASCII) TEST_ERROR
+
+ /* Copy the first link to a UTF-8 name.
+ * Its creation order value should be different, but modification time
+ * should not change.
+ */
+ if(H5Lcopy(file_id, "group", file_id, "group_copied", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "group_copied", TRUE, &statbuf) < 0) TEST_ERROR
+ if(old_modification_time != statbuf.mtime) TEST_ERROR
+ if(H5Lget_linkinfo(file_id, "group_copied", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.corder_valid != TRUE) TEST_ERROR
+ if(linfo.corder != 2) TEST_ERROR
/* Check that its character encoding is UTF-8 */
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
/* Move the link with the default property list. */
- if(H5Lmove(file_id, "group_copied", file_id, "group_copied2", H5P_DEFAULT, H5P_DEFAULT) <0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "group_copied2", TRUE, &statbuf) <0) TEST_ERROR;
- if(old_modification_time != statbuf.mtime) TEST_ERROR;
- if(H5Lget_linkinfo(file_id, "group_copied2", &linfo, H5P_DEFAULT) <0) TEST_ERROR;
- if(old_create_time != linfo.ctime) TEST_ERROR;
+ if(H5Lmove(file_id, "group_copied", file_id, "group_copied2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "group_copied2", TRUE, &statbuf) < 0) TEST_ERROR
+ if(old_modification_time != statbuf.mtime) TEST_ERROR
+ if(H5Lget_linkinfo(file_id, "group_copied2", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.corder_valid != TRUE) TEST_ERROR
+ if(linfo.corder != 3) TEST_ERROR
/* Check that its character encoding is not UTF-8 */
- if(linfo.cset == H5T_CSET_UTF8) TEST_ERROR;
+ if(linfo.cset == H5T_CSET_UTF8) TEST_ERROR
/* Check that the original link is unchanged */
- if(H5Gget_objinfo(file_id, "group", TRUE, &statbuf) <0) TEST_ERROR;
- if(old_modification_time != statbuf.mtime) TEST_ERROR;
- if(H5Lget_linkinfo(file_id, "group", &linfo, H5P_DEFAULT) <0) TEST_ERROR;
- if(old_create_time != linfo.ctime) TEST_ERROR;
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
-
- /* Move the first link to a UTF-8 name. Its creation time and modification time should not change. */
- if(H5Lmove(file_id, "group", file_id, "group_moved", lcpl_id, H5P_DEFAULT) <0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "group_moved", TRUE, &statbuf) <0) TEST_ERROR;
- if(old_modification_time != statbuf.mtime) TEST_ERROR;
- if(H5Lget_linkinfo(file_id, "group_moved", &linfo, H5P_DEFAULT) <0) TEST_ERROR;
- if(old_create_time != linfo.ctime) TEST_ERROR;
+ if(H5Gget_objinfo(file_id, "group", TRUE, &statbuf) < 0) TEST_ERROR
+ if(old_modification_time != statbuf.mtime) TEST_ERROR
+ if(H5Lget_linkinfo(file_id, "group", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.corder_valid != TRUE) TEST_ERROR
+ if(old_corder != linfo.corder) TEST_ERROR
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
+
+ /* Move the first link to a UTF-8 name.
+ * Its creation order value will change, but modification time should not
+ * change. */
+ if(H5Lmove(file_id, "group", file_id, "group_moved", lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "group_moved", TRUE, &statbuf) < 0) TEST_ERROR
+ if(old_modification_time != statbuf.mtime) TEST_ERROR
+ if(H5Lget_linkinfo(file_id, "group_moved", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.corder_valid != TRUE) TEST_ERROR
+ if(linfo.corder != 4) TEST_ERROR
/* Check that its character encoding is UTF-8 */
- if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR;
+ if(linfo.cset != H5T_CSET_UTF8) TEST_ERROR
/* Move the link again using the default property list. */
- if(H5Lmove(file_id, "group_moved", file_id, "group_moved_again", H5P_DEFAULT, H5P_DEFAULT) <0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "group_moved_again", TRUE, &statbuf) <0) TEST_ERROR;
- if(old_modification_time != statbuf.mtime) TEST_ERROR;
- if(H5Lget_linkinfo(file_id, "group_moved_again", &linfo, H5P_DEFAULT) <0) TEST_ERROR;
- if(old_create_time != linfo.ctime) TEST_ERROR;
+ if(H5Lmove(file_id, "group_moved", file_id, "group_moved_again", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "group_moved_again", TRUE, &statbuf) < 0) TEST_ERROR
+ if(old_modification_time != statbuf.mtime) TEST_ERROR
+ if(H5Lget_linkinfo(file_id, "group_moved_again", &linfo, H5P_DEFAULT) < 0) TEST_ERROR
+ if(linfo.corder_valid != TRUE) TEST_ERROR
+ if(linfo.corder != 5) TEST_ERROR
/* Check that its character encoding is not UTF-8 */
- if(linfo.cset == H5T_CSET_UTF8) TEST_ERROR;
+ if(linfo.cset == H5T_CSET_UTF8) TEST_ERROR
/* Close open IDs */
- if(H5Pclose(lcpl_id) < 0) TEST_ERROR;
- if(H5Fclose(file_id)<0) TEST_ERROR;
+ if(H5Pclose(fcpl_id) < 0) TEST_ERROR
+ if(H5Pclose(lcpl_id) < 0) TEST_ERROR
+ if(H5Fclose(file_id) < 0) TEST_ERROR
PASSED();
return 0;
error:
H5E_BEGIN_TRY {
+ H5Pclose(fcpl_id);
H5Pclose(lcpl_id);
H5Pclose(lcpl2_id);
H5Gclose(group_id);
@@ -1365,7 +1422,6 @@ error:
} H5E_END_TRY;
return 1;
} /* end test_move_preserves() */
-#endif /* H5_GROUP_REVISION */
/*-------------------------------------------------------------------------
@@ -1384,7 +1440,7 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_compat(hid_t fapl)
+test_compat(hid_t fapl, hbool_t new_format)
{
hid_t file_id=-1;
hid_t group1_id=-1;
@@ -1393,76 +1449,79 @@ test_compat(hid_t fapl)
char filename[1024];
char linkval[1024];
- TESTING("backwards compatibility");
+ if(new_format)
+ TESTING("backwards compatibility (w/new group format)")
+ else
+ TESTING("backwards compatibility")
/* Create file */
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create two groups in the file */
- if((group1_id = H5Gcreate(file_id, "group1", 1)) < 0) TEST_ERROR;
- if((group2_id = H5Gcreate(file_id, "group2", 1)) < 0) TEST_ERROR;
+ if((group1_id = H5Gcreate(file_id, "group1", (size_t)1)) < 0) TEST_ERROR
+ if((group2_id = H5Gcreate(file_id, "group2", (size_t)1)) < 0) TEST_ERROR
/* Create links using H5Glink and H5Glink2 */
- if(H5Glink(file_id, H5G_LINK_HARD, "group2", "group1/link_to_group2") < 0) TEST_ERROR;
- if(H5Glink2(file_id, "group1", H5G_LINK_HARD, group2_id, "link_to_group1") < 0) TEST_ERROR;
- if(H5Glink2(file_id, "link_to_group1", H5G_LINK_SOFT, H5G_SAME_LOC, "group2/soft_link_to_group1") < 0) TEST_ERROR;
+ if(H5Glink(file_id, H5G_LINK_HARD, "group2", "group1/link_to_group2") < 0) TEST_ERROR
+ if(H5Glink2(file_id, "group1", H5G_LINK_HARD, group2_id, "link_to_group1") < 0) TEST_ERROR
+ if(H5Glink2(file_id, "link_to_group1", H5G_LINK_SOFT, H5G_SAME_LOC, "group2/soft_link_to_group1") < 0) TEST_ERROR
/* Test that H5Glink created hard links properly */
- if(H5Gget_objinfo(file_id, "/group2", TRUE, &sb_hard1)<0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "/group1/link_to_group2", TRUE, &sb_hard2)<0) TEST_ERROR;
+ if(H5Gget_objinfo(file_id, "/group2", TRUE, &sb_hard1) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "/group1/link_to_group2", TRUE, &sb_hard2) < 0) TEST_ERROR
if (HDmemcmp(&sb_hard1.objno, sb_hard2.objno, sizeof(sb_hard1.objno))) {
H5_FAILED();
puts(" Hard link test failed. Link seems not to point to the ");
puts(" expected file location.");
- TEST_ERROR;
+ TEST_ERROR
}
/* Test for the other hard link created */
- if(H5Gget_objinfo(file_id, "/group1", TRUE, &sb_hard1)<0) TEST_ERROR;
- if(H5Gget_objinfo(file_id, "/group2/link_to_group1", TRUE, &sb_hard2)<0) TEST_ERROR;
+ if(H5Gget_objinfo(file_id, "/group1", TRUE, &sb_hard1) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file_id, "/group2/link_to_group1", TRUE, &sb_hard2) < 0) TEST_ERROR
if (HDmemcmp(&sb_hard1.objno, sb_hard2.objno, sizeof(sb_hard1.objno))) {
H5_FAILED();
puts(" Hard link test failed. Link seems not to point to the ");
puts(" expected file location.");
- TEST_ERROR;
+ TEST_ERROR
}
/* Test the soft link */
- if(H5Gget_objinfo(file_id, "/group2/soft_link_to_group1", FALSE, &sb_soft1)<0) TEST_ERROR;
- if(sb_soft1.type != H5G_LINK) TEST_ERROR;
- if(sb_soft1.linklen != HDstrlen("link_to_group1") + 1) TEST_ERROR;
+ if(H5Gget_objinfo(file_id, "/group2/soft_link_to_group1", FALSE, &sb_soft1) < 0) TEST_ERROR
+ if(sb_soft1.type != H5G_LINK) TEST_ERROR
+ if(sb_soft1.linklen != HDstrlen("link_to_group1") + 1) TEST_ERROR
- if(H5Gget_linkval(group2_id, "soft_link_to_group1", sb_soft1.linklen, linkval) < 0) TEST_ERROR;
- if(HDstrcmp("link_to_group1", linkval)) TEST_ERROR;
+ if(H5Gget_linkval(group2_id, "soft_link_to_group1", sb_soft1.linklen, linkval) < 0) TEST_ERROR
+ if(HDstrcmp("link_to_group1", linkval)) TEST_ERROR
/* Test H5Gmove and H5Gmove2 */
- if(H5Gmove(file_id, "group1", "moved_group1") < 0) TEST_ERROR;
- if(H5Gmove2(file_id, "group2", group1_id, "moved_group2") < 0) TEST_ERROR;
+ if(H5Gmove(file_id, "group1", "moved_group1") < 0) TEST_ERROR
+ if(H5Gmove2(file_id, "group2", group1_id, "moved_group2") < 0) TEST_ERROR
/* Ensure that both groups can be opened */
- if(H5Gclose(group2_id)<0) TEST_ERROR;
- if(H5Gclose(group1_id)<0) TEST_ERROR;
+ if(H5Gclose(group2_id) < 0) TEST_ERROR
+ if(H5Gclose(group1_id) < 0) TEST_ERROR
- if((group1_id = H5Gopen(file_id, "moved_group1")) < 0) TEST_ERROR;
- if((group2_id = H5Gopen(file_id, "moved_group1/moved_group2")) < 0) TEST_ERROR;
+ if((group1_id = H5Gopen(file_id, "moved_group1")) < 0) TEST_ERROR
+ if((group2_id = H5Gopen(file_id, "moved_group1/moved_group2")) < 0) TEST_ERROR
/* Close open IDs */
- if(H5Gclose(group2_id)<0) TEST_ERROR;
- if(H5Gclose(group1_id)<0) TEST_ERROR;
+ if(H5Gclose(group2_id) < 0) TEST_ERROR
+ if(H5Gclose(group1_id) < 0) TEST_ERROR
/* Test H5Gunlink */
- if(H5Gunlink(file_id, "moved_group1/moved_group2") < 0) TEST_ERROR;
+ if(H5Gunlink(file_id, "moved_group1/moved_group2") < 0) TEST_ERROR
H5E_BEGIN_TRY {
- if(H5Gopen(file_id, "moved_group1/moved_group2") >=0) TEST_ERROR;
+ if(H5Gopen(file_id, "moved_group1/moved_group2") >=0) TEST_ERROR
} H5E_END_TRY;
- if(H5Fclose(file_id)<0) TEST_ERROR;
+ if(H5Fclose(file_id) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1494,7 +1553,7 @@ error:
*-------------------------------------------------------------------------
*/
static int
-external_link_root(hid_t fapl)
+external_link_root(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -1506,29 +1565,32 @@ external_link_root(hid_t fapl)
char *file; /* File from external link */
char *path; /* Path from external link */
- TESTING("external link to root");
+ if(new_format)
+ TESTING("external link to root (w/new group format)")
+ else
+ TESTING("external link to root")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
h5_fixname(FILENAME[4], fapl, filename2, sizeof filename2);
/* Create file to point to */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Check that external links are registered with the library */
- if(H5Lis_registered(H5L_LINK_EXTERNAL) != TRUE) TEST_ERROR
+ if(H5Lis_registered(H5L_TYPE_EXTERNAL) != TRUE) TEST_ERROR
/* Create file with link to first file */
- if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external link to object in first file */
- if(H5Lcreate_external(filename1, "/", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename1, "/", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Check information for external link */
- if (H5Gget_objinfo(fid, "ext_link", FALSE, &sb)<0) goto error;
+ if (H5Gget_objinfo(fid, "ext_link", FALSE, &sb) < 0) goto error;
if (H5G_UDLINK!=sb.type) {
H5_FAILED();
puts(" Unexpected object type - should have been an external link");
@@ -1550,12 +1612,12 @@ external_link_root(hid_t fapl)
}
/* Close and re-open file to ensure that data is written to disk */
- if(H5Fclose(fid) < 0) TEST_ERROR;
- if((fid = H5Fopen(filename2, H5F_ACC_RDWR, H5P_DEFAULT)) < 0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
+ if((fid = H5Fopen(filename2, H5F_ACC_RDWR, H5P_DEFAULT)) < 0) TEST_ERROR
/* Open object through external link */
- if((gid = H5Gopen(fid, "ext_link")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ext_link")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -1568,7 +1630,7 @@ external_link_root(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close external object (lets first file close) */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Create a new object using H5Gcreate through the external link
* directly
@@ -1576,15 +1638,15 @@ external_link_root(hid_t fapl)
if((gid = H5Gcreate(fid, "ext_link/newer_group", (size_t)0)) < 0) TEST_ERROR
/* Close file and group */
- if(H5Gclose(gid) < 0) TEST_ERROR;
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open first file again with read-only access and check on objects created */
if((fid = H5Fopen(filename1, H5F_ACC_RDONLY, H5P_DEFAULT)) < 0) TEST_ERROR
/* Open objects created through external link */
- if((gid = H5Gopen(fid, "new_group")) < 0) TEST_ERROR;
- if((gid2 = H5Gopen(fid, "newer_group")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "new_group")) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid, "newer_group")) < 0) TEST_ERROR
/* Check names */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -1597,7 +1659,7 @@ external_link_root(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Verify that new objects can't be created through a read-only external
* link.
@@ -1610,7 +1672,7 @@ external_link_root(hid_t fapl)
if(gid >= 0) TEST_ERROR
/* Close second file again */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1643,7 +1705,7 @@ external_link_root(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-external_link_path(hid_t fapl)
+external_link_path(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -1652,14 +1714,17 @@ external_link_path(hid_t fapl)
char filename1[NAME_BUF_SIZE];
char filename2[NAME_BUF_SIZE];
- TESTING("external link to object on path");
+ if(new_format)
+ TESTING("external link to object on path (w/new group format)")
+ else
+ TESTING("external link to object on path")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
h5_fixname(FILENAME[4], fapl, filename2, sizeof filename2);
/* Create file to point to */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create object down a path */
if((gid = H5Gcreate(fid, "A", (size_t)0)) < 0) TEST_ERROR
@@ -1672,17 +1737,17 @@ external_link_path(hid_t fapl)
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Create file with link to first file */
- if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external link to object in first file */
- if(H5Lcreate_external(filename1, "/A/B/C", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename1, "/A/B/C", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Open object through external link */
- if((gid = H5Gopen(fid, "ext_link")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ext_link")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -1695,27 +1760,27 @@ external_link_path(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close external object (lets first file close) */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Close second file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open first file again and check on object created */
if((fid = H5Fopen(filename1, H5F_ACC_RDONLY, H5P_DEFAULT)) < 0) TEST_ERROR
/* Open object created through external link */
- if((gid = H5Gopen(fid, "/A/B/C/new_group")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "/A/B/C/new_group")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
if(HDstrcmp(objname, "/A/B/C/new_group")) TEST_ERROR
/* Close opened object */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
@@ -1749,7 +1814,7 @@ external_link_path(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-external_link_mult(hid_t fapl)
+external_link_mult(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1), fid2 = (-1); /* File IDs */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -1760,7 +1825,10 @@ external_link_mult(hid_t fapl)
filename3[NAME_BUF_SIZE],
filename4[NAME_BUF_SIZE]; /* Names of files to externally link across */
- TESTING("external links across multiple files");
+ if(new_format)
+ TESTING("external links across multiple files (w/new group format)")
+ else
+ TESTING("external links across multiple files")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
@@ -1769,7 +1837,7 @@ external_link_mult(hid_t fapl)
h5_fixname(FILENAME[6], fapl, filename4, sizeof filename4);
/* Create first file to point to */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create object down a path */
if((gid = H5Gcreate(fid, "A", (size_t)0)) < 0) TEST_ERROR
@@ -1782,10 +1850,10 @@ external_link_mult(hid_t fapl)
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Create second file to point to */
- if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external link down a path */
if((gid = H5Gcreate(fid, "D", (size_t)0)) < 0) TEST_ERROR
@@ -1794,15 +1862,15 @@ external_link_mult(hid_t fapl)
if((gid = H5Gcreate(fid, "D/E", (size_t)0)) < 0) TEST_ERROR
/* Create external link to object in first file */
- if(H5Lcreate_external(filename1, "/A/B/C", gid, "F", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename1, "/A/B/C", gid, "F", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Create third file to point to */
- if((fid=H5Fcreate(filename3, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename3, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external link down a path */
if((gid = H5Gcreate(fid, "G", (size_t)0)) < 0) TEST_ERROR
@@ -1811,22 +1879,22 @@ external_link_mult(hid_t fapl)
if((gid = H5Gcreate(fid, "G/H", (size_t)0)) < 0) TEST_ERROR
/* Create external link to object in second file */
- if(H5Lcreate_external(filename2, "/D/E/F", gid, "I", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename2, "/D/E/F", gid, "I", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Create file with link to third file */
- if((fid=H5Fcreate(filename4, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename4, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external link to object in first file */
- if(H5Lcreate_external(filename3, "/G/H/I", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename3, "/G/H/I", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Open object through external link */
- if((gid = H5Gopen(fid, "ext_link")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ext_link")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -1839,17 +1907,17 @@ external_link_mult(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close external object (lets first file close) */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Close second file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open first file again and check on object created */
if((fid = H5Fopen(filename1, H5F_ACC_RDONLY, H5P_DEFAULT)) < 0) TEST_ERROR
/* Open object created through external link */
- if((gid = H5Gopen(fid, "/A/B/C/new_group")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "/A/B/C/new_group")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -1859,26 +1927,26 @@ external_link_mult(hid_t fapl)
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open an object through external links */
- if((fid = H5Fopen(filename4, H5F_ACC_RDONLY, H5P_DEFAULT)) <0) TEST_ERROR
+ if((fid = H5Fopen(filename4, H5F_ACC_RDONLY, H5P_DEFAULT)) < 0) TEST_ERROR
if((gid = H5Gopen(fid, "ext_link")) < 0) TEST_ERROR
/* The intermediate files should not stay open. Replace one of them with a new file. */
- if((fid2=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
- if(H5Fclose(fid2)<0) TEST_ERROR
+ if((fid2=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if(H5Fclose(fid2) < 0) TEST_ERROR
/* Open the other with write access and delete the external link in it */
- if((fid2=H5Fopen(filename3, H5F_ACC_RDWR, fapl))<0) TEST_ERROR
+ if((fid2=H5Fopen(filename3, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
if(H5Lunlink(fid2, "G/H/I", H5P_DEFAULT) < 0) TEST_ERROR
- if(H5Fclose(fid2)<0) TEST_ERROR
+ if(H5Fclose(fid2) < 0) TEST_ERROR
/* Cleanup */
if(H5Gclose(gid) < 0) TEST_ERROR
- if(H5Fclose(fid)<0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1909,9 +1977,8 @@ external_link_mult(hid_t fapl)
*
*-------------------------------------------------------------------------
*/
-#ifdef H5_GROUP_REVISION
static int
-external_link_self(hid_t fapl)
+external_link_self(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -1922,7 +1989,10 @@ external_link_self(hid_t fapl)
char filename2[NAME_BUF_SIZE];
char filename3[NAME_BUF_SIZE];
- TESTING("external link to self");
+ if(new_format)
+ TESTING("external link to self (w/new group format)")
+ else
+ TESTING("external link to self")
/* Set up filename */
h5_fixname(FILENAME[1], fapl, filename1, sizeof filename1);
@@ -1930,10 +2000,10 @@ external_link_self(hid_t fapl)
h5_fixname(FILENAME[3], fapl, filename3, sizeof filename1);
/* Create file */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an lcpl with intermediate group creation set */
- if((lcpl_id=H5Pcreate(H5P_LINK_CREATE))<0) TEST_ERROR
+ if((lcpl_id=H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
if(H5Pset_create_intermediate_group(lcpl_id, TRUE) < 0) TEST_ERROR
/* Create a series of groups within the file: /A/B and /X/Y/Z */
@@ -1944,13 +2014,13 @@ external_link_self(hid_t fapl)
if(H5Llink(fid, "X/Y", gid, lcpl_id, H5P_DEFAULT) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
- if(H5Pclose (lcpl_id) <0) TEST_ERROR
+ if(H5Pclose (lcpl_id) < 0) TEST_ERROR
/* Create external link to own root group*/
- if(H5Lcreate_external(filename1, "/X", fid, "A/B/C", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename1, "/X", fid, "A/B/C", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Open object through external link */
- if((gid = H5Gopen(fid, "A/B/C/")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "A/B/C/")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -1963,20 +2033,20 @@ external_link_self(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close object opened through external link */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Check on object created */
- if((gid = H5Gopen(fid, "X/new_group")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "X/new_group")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
if(HDstrcmp(objname, "/X/new_group")) TEST_ERROR
/* Close opened object */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Complicate things. Use this file as an intermediate file in a chain
@@ -1984,7 +2054,7 @@ external_link_self(hid_t fapl)
*/
/* Create file2 with an external link to file1 */
- if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR
+ if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
if(H5Lcreate_external(filename1, "/A", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
@@ -1992,8 +2062,8 @@ external_link_self(hid_t fapl)
if(H5Fclose(fid) < 0) TEST_ERROR
/* Create file3 as a target */
- if((fid=H5Fcreate(filename3, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR
- if((gid=H5Gcreate(fid, "end", 0)) < 0) TEST_ERROR
+ if((fid=H5Fcreate(filename3, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((gid=H5Gcreate(fid, "end", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
if(H5Fclose(fid) < 0) TEST_ERROR
@@ -2012,7 +2082,7 @@ external_link_self(hid_t fapl)
if((gid=H5Gopen(fid, "ext_link/B/C/Y/Z/end")) < 0) TEST_ERROR
/* Create object through external link */
- if((gid2 = H5Gcreate(gid, "newer_group", 0)) < 0) TEST_ERROR
+ if((gid2 = H5Gcreate(gid, "newer_group", (size_t)0)) < 0) TEST_ERROR
/* Cleanup */
if(H5Gclose(gid2) < 0) TEST_ERROR
@@ -2040,7 +2110,6 @@ external_link_self(hid_t fapl)
} H5E_END_TRY;
return -1;
} /* end external_link_self() */
-#endif /* H5_GROUP_REVISION */
/*-------------------------------------------------------------------------
@@ -2068,7 +2137,7 @@ external_link_self(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-external_link_pingpong(hid_t fapl)
+external_link_pingpong(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -2077,44 +2146,47 @@ external_link_pingpong(hid_t fapl)
char filename1[NAME_BUF_SIZE],
filename2[NAME_BUF_SIZE]; /* Names of files to externally link across */
- TESTING("external links back and forth");
+ if(new_format)
+ TESTING("external links back and forth (w/new group format)")
+ else
+ TESTING("external links back and forth")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
h5_fixname(FILENAME[4], fapl, filename2, sizeof filename2);
/* Create first file */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external links for chain */
- if(H5Lcreate_external(filename2, "/link2", fid, "link1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link4", fid, "link3", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link6", fid, "link5", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename2, "/link2", fid, "link1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link4", fid, "link3", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link6", fid, "link5", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create final object */
if((gid = H5Gcreate(fid, "final", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Create second file */
- if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external links for chain */
- if(H5Lcreate_external(filename1, "/link3", fid, "link2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/link5", fid, "link4", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/final", fid, "link6", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename1, "/link3", fid, "link2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/link5", fid, "link4", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/final", fid, "link6", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open first file */
- if((fid=H5Fopen(filename1, H5F_ACC_RDWR, fapl))<0) TEST_ERROR;
+ if((fid=H5Fopen(filename1, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Open object through external link */
- if((gid = H5Gopen(fid, "link1")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "link1")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -2127,27 +2199,27 @@ external_link_pingpong(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close external object (lets first file close) */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open first file again and check on object created */
if((fid = H5Fopen(filename1, H5F_ACC_RDONLY, H5P_DEFAULT)) < 0) TEST_ERROR
/* Open object created through external link */
- if((gid = H5Gopen(fid, "/final/new_group")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "/final/new_group")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
if(HDstrcmp(objname, "/final/new_group")) TEST_ERROR
/* Close opened object */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
@@ -2167,7 +2239,7 @@ external_link_pingpong(hid_t fapl)
* Function: external_link_toomany
*
* Purpose: Build a file with too many external links to objects (i.e.
- * more than H5G_NLINKS. Use a "back & forth" style of
+ * more than H5L_NLINKS_DEF. Use a "back & forth" style of
* linking (like the "ping pong" test above) to minimize the
* number of files involved:
*
@@ -2201,7 +2273,7 @@ external_link_pingpong(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-external_link_toomany(hid_t fapl)
+external_link_toomany(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -2210,7 +2282,10 @@ external_link_toomany(hid_t fapl)
char filename1[NAME_BUF_SIZE],
filename2[NAME_BUF_SIZE]; /* Names of files to externally link across */
- TESTING("too many external links");
+ if(new_format)
+ TESTING("too many external links (w/new group format)")
+ else
+ TESTING("too many external links")
/* Make certain test is valid */
/* XXX: should probably make a "generic" test that creates the proper
@@ -2223,45 +2298,45 @@ external_link_toomany(hid_t fapl)
h5_fixname(FILENAME[4], fapl, filename2, sizeof filename2);
/* Create first file */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external links for chain */
- if(H5Lcreate_external(filename2, "/link2", fid, "link1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link4", fid, "link3", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link6", fid, "link5", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link8", fid, "link7", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link10", fid, "link9", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link12", fid, "link11", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link14", fid, "link13", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/link16", fid, "link15", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/final", fid, "link17", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename2, "/link2", fid, "link1", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link4", fid, "link3", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link6", fid, "link5", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link8", fid, "link7", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link10", fid, "link9", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link12", fid, "link11", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link14", fid, "link13", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/link16", fid, "link15", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/final", fid, "link17", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Create second file */
- if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external links for chain */
- if(H5Lcreate_external(filename1, "/link3", fid, "link2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/link5", fid, "link4", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/link7", fid, "link6", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/link9", fid, "link8", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/link11", fid, "link10", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/link13", fid, "link12", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/link15", fid, "link14", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename1, "/link17", fid, "link16", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename1, "/link3", fid, "link2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/link5", fid, "link4", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/link7", fid, "link6", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/link9", fid, "link8", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/link11", fid, "link10", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/link13", fid, "link12", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/link15", fid, "link14", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename1, "/link17", fid, "link16", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create final object */
if((gid = H5Gcreate(fid, "final", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open first file */
- if((fid=H5Fopen(filename1, H5F_ACC_RDWR, fapl))<0) TEST_ERROR;
+ if((fid=H5Fopen(filename1, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Open object through external link */
H5E_BEGIN_TRY {
@@ -2274,7 +2349,7 @@ external_link_toomany(hid_t fapl)
}
/* Open object through external link */
- if((gid = H5Gopen(fid, "link3")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "link3")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -2287,10 +2362,10 @@ external_link_toomany(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close external object */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
@@ -2324,38 +2399,41 @@ external_link_toomany(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-external_link_dangling(hid_t fapl)
+external_link_dangling(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1); /* Group IDs */
char filename1[NAME_BUF_SIZE],
filename2[NAME_BUF_SIZE]; /* Names of files to externally link across */
- TESTING("dangling external links");
+ if(new_format)
+ TESTING("dangling external links (w/new group format)")
+ else
+ TESTING("dangling external links")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
h5_fixname(FILENAME[4], fapl, filename2, sizeof filename2);
/* Create first file */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create dangling external links */
- if(H5Lcreate_external("missing", "/missing", fid, "no_file", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external(filename2, "/missing", fid, "no_object", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external("missing", "/missing", fid, "no_file", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(filename2, "/missing", fid, "no_object", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Create second file (for dangling object test) */
- if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open first file */
- if((fid=H5Fopen(filename1, H5F_ACC_RDWR, fapl))<0) TEST_ERROR;
+ if((fid=H5Fopen(filename1, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Open object through dangling file external link */
H5E_BEGIN_TRY {
@@ -2378,7 +2456,7 @@ external_link_dangling(hid_t fapl)
}
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
@@ -2409,29 +2487,32 @@ external_link_dangling(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-external_link_recursive(hid_t fapl)
+external_link_recursive(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1); /* Group IDs */
char filename1[NAME_BUF_SIZE]; /* Names of files to externally link across */
- TESTING("recursive external links");
+ if(new_format)
+ TESTING("recursive external links (w/new group format)")
+ else
+ TESTING("recursive external links")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
/* Create first file */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create recursive external links */
- if(H5Lcreate_external(filename1, "/recursive", fid, "recursive", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_external(filename1, "/recursive", fid, "recursive", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open file */
- if((fid=H5Fopen(filename1, H5F_ACC_RDONLY, fapl))<0) TEST_ERROR;
+ if((fid=H5Fopen(filename1, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* Open object through dangling file external link */
H5E_BEGIN_TRY {
@@ -2444,7 +2525,7 @@ external_link_recursive(hid_t fapl)
}
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
@@ -2476,7 +2557,7 @@ external_link_recursive(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-external_link_query(hid_t fapl)
+external_link_query(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1); /* Group IDs */
@@ -2488,15 +2569,17 @@ external_link_query(hid_t fapl)
filename2[NAME_BUF_SIZE], /* Names of files to externally link across */
query_buf[NAME_BUF_SIZE]; /* Buffer to hold query result */
-
- TESTING("query aspects of external link");
+ if(new_format)
+ TESTING("query aspects of external link (w/new group format)")
+ else
+ TESTING("query aspects of external link")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
h5_fixname(FILENAME[4], fapl, filename2, sizeof filename2);
/* Create first file, with external link to object in second file */
- if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR
+ if((fid=H5Fcreate(filename1, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create external link */
if(H5Lcreate_external(filename2, "/dst", fid, "src", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
@@ -2504,50 +2587,50 @@ external_link_query(hid_t fapl)
/* Get size of buffer for external link */
if(H5Lget_linkinfo(fid, "src", &li, H5P_DEFAULT) < 0) TEST_ERROR
if(li.u.link_size != (HDstrlen(filename2) + HDstrlen("/dst") + 2)) TEST_ERROR
- if (H5L_LINK_EXTERNAL != li.linkclass) {
+ if (H5L_TYPE_EXTERNAL != li.type) {
H5_FAILED();
puts(" Unexpected link class - should have been an external link");
goto error;
}
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Create second file to point to */
- if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR
+ if((fid=H5Fcreate(filename2, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create object to link to */
if((gid = H5Gcreate(fid, "dst", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open first file */
- if((fid=H5Fopen(filename1, H5F_ACC_RDONLY, fapl))<0) TEST_ERROR
+ if((fid=H5Fopen(filename1, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* Get size of buffer for external link */
if(H5Lget_linkinfo(fid, "src", &li, H5P_DEFAULT) < 0) TEST_ERROR
if(li.u.link_size != (HDstrlen(filename2) + HDstrlen("/dst") + 2)) TEST_ERROR
- if (H5L_LINK_EXTERNAL != li.linkclass) {
+ if (H5L_TYPE_EXTERNAL != li.type) {
H5_FAILED();
puts(" Unexpected link class - should have been an external link");
goto error;
}
/* Get information for external link. It should be two strings right after each other */
- if(H5Lget_linkval(fid, "src", NAME_BUF_SIZE, query_buf, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lget_linkval(fid, "src", (size_t)NAME_BUF_SIZE, query_buf, H5P_DEFAULT) < 0) TEST_ERROR
/* Extract the file and object names from the buffer */
if(H5Lunpack_elink_val(query_buf, &file_name, &object_name) < 0) TEST_ERROR
/* Compare the file and object names */
- if(strcmp(file_name, filename2)) TEST_ERROR;
+ if(strcmp(file_name, filename2)) TEST_ERROR
if(strcmp(object_name, "/dst")) TEST_ERROR
/* Query information about object that external link points to */
- if (H5Gget_objinfo(fid, "src", TRUE, &sb)<0) goto error;
+ if (H5Gget_objinfo(fid, "src", TRUE, &sb) < 0) goto error;
if (H5G_GROUP != sb.type) {
H5_FAILED();
puts(" Unexpected object type - should have been a group");
@@ -2555,7 +2638,7 @@ external_link_query(hid_t fapl)
}
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Make sure that passing in NULLs to H5Lunpack_elink_val works */
if(H5Lunpack_elink_val(query_buf, NULL, NULL) < 0) TEST_ERROR
@@ -2591,14 +2674,17 @@ external_link_query(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-external_link_unlink_compact(hid_t fapl)
+external_link_unlink_compact(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
char filename1[NAME_BUF_SIZE],
filename2[NAME_BUF_SIZE]; /* Names of files to externally link across */
- TESTING("unlinking external link in compact group");
+ if(new_format)
+ TESTING("unlinking external link in compact group (w/new group format)")
+ else
+ TESTING("unlinking external link in compact group")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
@@ -2673,9 +2759,8 @@ error:
*
*-------------------------------------------------------------------------
*/
-#ifdef H5_GROUP_REVISION
static int
-external_link_unlink_dense(hid_t fapl)
+external_link_unlink_dense(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gcpl = (-1); /* Group creation property list ID */
@@ -2688,7 +2773,10 @@ external_link_unlink_dense(hid_t fapl)
unsigned min_dense; /* Minimum # of links to store in group "densely" */
unsigned u; /* Local index variable */
- TESTING("unlinking external link in dense group");
+ if(new_format)
+ TESTING("unlinking external link in dense group (w/new group format)")
+ else
+ TESTING("unlinking external link in dense group")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
@@ -2712,10 +2800,10 @@ external_link_unlink_dense(hid_t fapl)
if(H5Lcreate_external(filename2, "/dst", gid, "src", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Check on root group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR;
- if(nmsgs != 1) TEST_ERROR;
- if(H5G_has_stab_test(gid) == TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR
+ if(nmsgs != 1) TEST_ERROR
+ if(H5G_has_stab_test(gid) == TRUE) TEST_ERROR
/* Create enough objects in the root group to change it into a "dense" group */
for(u = 0; u < max_compact; u++) {
@@ -2725,9 +2813,9 @@ external_link_unlink_dense(hid_t fapl)
} /* end for */
/* Check on root group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR;
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Close group creation property list */
if(H5Pclose(gcpl) < 0) TEST_ERROR
@@ -2767,10 +2855,11 @@ external_link_unlink_dense(hid_t fapl)
} /* end for */
/* Check on root group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR;
- if(nmsgs != (min_dense - 1)) TEST_ERROR;
- if(H5G_has_stab_test(gid) == TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR
+ if(nmsgs != (min_dense - 1)) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_stab_test(gid) == TRUE) TEST_ERROR
/* Close root group */
if(H5Gclose(gid) < 0) TEST_ERROR
@@ -2801,7 +2890,6 @@ error:
} H5E_END_TRY;
return -1;
} /* end external_link_unlink_dense() */
-#endif /* H5_GROUP_REVISION */
/*-------------------------------------------------------------------------
@@ -2818,7 +2906,7 @@ error:
*-------------------------------------------------------------------------
*/
static int
-external_link_move(hid_t fapl)
+external_link_move(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -2827,7 +2915,10 @@ external_link_move(hid_t fapl)
char filename1[NAME_BUF_SIZE],
filename2[NAME_BUF_SIZE]; /* Names of files to externally link across */
- TESTING("move external link");
+ if(new_format)
+ TESTING("move external link (w/new group format)")
+ else
+ TESTING("move external link")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
@@ -2993,7 +3084,6 @@ error:
} /* end external_link_move() */
-#ifdef H5_GROUP_REVISION
/*-------------------------------------------------------------------------
* Function: external_link_ride
*
@@ -3009,7 +3099,7 @@ error:
*-------------------------------------------------------------------------
*/
static int
-external_link_ride(hid_t fapl)
+external_link_ride(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gcpl = (-1); /* Group creation property list ID */
@@ -3023,7 +3113,10 @@ external_link_ride(hid_t fapl)
unsigned min_dense; /* Minimum # of links to store in group "densely" */
unsigned u; /* Local index variable */
- TESTING("external link along for the ride");
+ if(new_format)
+ TESTING("external link along for the ride (w/new group format)")
+ else
+ TESTING("external link along for the ride")
/* Set up filenames */
h5_fixname(FILENAME[3], fapl, filename1, sizeof filename1);
@@ -3050,18 +3143,23 @@ external_link_ride(hid_t fapl)
} /* end for */
/* Check on root group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR;
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
+ if(new_format) {
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
+ } /* end if */
+ else {
+ if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR
+ } /* end else */
/* Create external link */
/* (This also covers the case of adding an external link to a dense group) */
if(H5Lcreate_external(filename2, "/dst", gid, "src", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Check on root group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR;
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Close group creation property list */
if(H5Pclose(gcpl) < 0) TEST_ERROR
@@ -3113,10 +3211,11 @@ external_link_ride(hid_t fapl)
} /* end for */
/* Check on root group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR;
- if(nmsgs != (min_dense - 1)) TEST_ERROR;
- if(H5G_has_stab_test(gid) == TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR
+ if(nmsgs != (min_dense - 1)) TEST_ERROR
+ if(H5G_has_stab_test(gid) == TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) == TRUE) TEST_ERROR
/* Close root group */
if(H5Gclose(gid) < 0) TEST_ERROR
@@ -3170,7 +3269,6 @@ error:
} H5E_END_TRY;
return -1;
} /* end external_link_ride() */
-#endif /* H5_GROUP_REVISION */
/*-------------------------------------------------------------------------
@@ -3188,7 +3286,7 @@ error:
*-------------------------------------------------------------------------
*/
static int
-external_link_closing(hid_t fapl)
+external_link_closing(hid_t fapl, hbool_t new_format)
{
hid_t fid1 = (-1), fid2 = (-1), fid3 = (-1), fid4=(-1);
hid_t gid=(-1), tid=(-1), tid2=(-1), sid=(-1), did=(-1);
@@ -3203,7 +3301,10 @@ external_link_closing(hid_t fapl)
H5G_stat_t sb;
hobj_ref_t obj_ref;
- TESTING("that external files are closed during traversal");
+ if(new_format)
+ TESTING("that external files are closed during traversal (w/new group format)")
+ else
+ TESTING("that external files are closed during traversal")
/* In this test, external links will go from file1 to file2 and from
* file2 to file3.
@@ -3243,7 +3344,7 @@ external_link_closing(hid_t fapl)
if(H5Fclose(fid2) < 0) TEST_ERROR
/* Test creating each kind of object */
- if((gid = H5Gcreate(fid1, "elink/elink/elink/group1", 0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid1, "elink/elink/elink/group1", (size_t)0)) < 0) TEST_ERROR
if(H5Tcommit(fid1, "elink/elink/elink/type1", tid) < 0) TEST_ERROR
if((did = H5Dcreate(fid1, "elink/elink/elink/dataset1", tid2, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* Close objects */
@@ -3303,7 +3404,7 @@ external_link_closing(hid_t fapl)
if(H5Dclose(did) < 0) TEST_ERROR
/* Test H5Fmount */
- if((gid = H5Gcreate(fid1, "elink/elink/elink/mnt", 0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid1, "elink/elink/elink/mnt", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
H5E_BEGIN_TRY {
if(H5Fmount(fid1, "elink/elink/elink/mnt", fid1, H5P_DEFAULT) >= 0) TEST_ERROR
@@ -3330,19 +3431,18 @@ external_link_closing(hid_t fapl)
if(H5Fclose(fid2) < 0) TEST_ERROR
/* Do an external link traversal that recursively calls another external link. */
- if((gid = H5Gcreate(fid1, "elink/elink2/group2", 0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid1, "elink/elink2/group2", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
/* Create two more groups so that the last three elements in the path are
* all within the same external file
*/
- if((gid = H5Gcreate(fid1, "elink/elink2/group2/group3", 0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid1, "elink/elink2/group2/group3", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
- if((gid = H5Gcreate(fid1, "elink/elink2/group2/group3/group4", 0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid1, "elink/elink2/group2/group3/group4", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
if(H5Gget_objinfo(fid1, "elink/elink2/group2/group3/group4", TRUE, &sb) < 0) TEST_ERROR
-#ifdef H5_GROUP_REVISION
/* Add a few regular groups and a soft link in file2 using intermediate group creation */
if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
if(H5Pset_create_intermediate_group(lcpl_id, TRUE) < 0) TEST_ERROR
@@ -3353,17 +3453,16 @@ external_link_closing(hid_t fapl)
* slink points to (file2)/elink2, which points to (file3)/elink, which
* points to file 4.
*/
- if((gid = H5Gcreate(fid1, "elink/file2group1/file2group2/slink/group3", 0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid1, "elink/file2group1/file2group2/slink/group3", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
if(H5Lget_linkinfo(fid1, "elink/file2group1/file2group2/slink/group3", &li, H5P_DEFAULT) < 0) TEST_ERROR
/* Some simpler tests */
- if((gid = H5Gcreate(fid1, "elink/file2group3", 0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid1, "elink/file2group3", (size_t)0)) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
if(H5Lget_linkinfo(fid1, "elink/file2group3", &li, H5P_DEFAULT) < 0) TEST_ERROR
if(H5Lget_linkinfo(fid1, "elink/elink", &li, H5P_DEFAULT) < 0) TEST_ERROR
-#endif /* H5_GROUP_REVISION */
/* Close file1, the only file that should still be open */
if(H5Fclose(fid1) < 0) TEST_ERROR
@@ -3417,7 +3516,7 @@ error:
*-------------------------------------------------------------------------
*/
static int
-external_link_endian(hid_t fapl)
+external_link_endian(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -3426,7 +3525,10 @@ external_link_endian(hid_t fapl)
char pathbuf[NAME_BUF_SIZE]; /* Path to the files */
char namebuf[NAME_BUF_SIZE];
- TESTING("endianness of external links");
+ if(new_format)
+ TESTING("endianness of external links (w/new group format)")
+ else
+ TESTING("endianness of external links")
/*
* Create the name of the file to open (in case we are using the --srcdir
@@ -3441,40 +3543,40 @@ external_link_endian(hid_t fapl)
HDstrcpy(pathbuf, "");
/* Create a link access property list with the path to the srcdir */
- if((lapl_id = H5Pcreate(H5P_LINK_ACCESS)) < 0) TEST_ERROR;
- if(H5Pset_elink_prefix(lapl_id, pathbuf) < 0) TEST_ERROR;
+ if((lapl_id = H5Pcreate(H5P_LINK_ACCESS)) < 0) TEST_ERROR
+ if(H5Pset_elink_prefix(lapl_id, pathbuf) < 0) TEST_ERROR
- if(HDstrlen(pathbuf) + HDstrlen(LE_FILENAME) >= sizeof(namebuf)) TEST_ERROR;
+ if(HDstrlen(pathbuf) + HDstrlen(LE_FILENAME) >= sizeof(namebuf)) TEST_ERROR
HDstrcpy(namebuf, pathbuf);
HDstrcat(namebuf, LE_FILENAME);
/* Test LE file; try to open a group through the external link */
- if((fid = H5Fopen(namebuf, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR;
- if((gid = H5Oopen(fid, "ext_link", lapl_id)) < 0) TEST_ERROR;
+ if((fid = H5Fopen(namebuf, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((gid = H5Oopen(fid, "ext_link", lapl_id)) < 0) TEST_ERROR
/* Open a group in the external file using that group ID */
- if((gid2 = H5Gopen(gid, "subgroup")) < 0) TEST_ERROR;
+ if((gid2 = H5Gopen(gid, "subgroup")) < 0) TEST_ERROR
/* Close the IDs */
- if(H5Gclose(gid2) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
- if(H5Fclose(fid) < 0) TEST_ERROR;
+ if(H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
- if(HDstrlen(pathbuf) + HDstrlen(BE_FILENAME) >= sizeof(namebuf)) TEST_ERROR;
+ if(HDstrlen(pathbuf) + HDstrlen(BE_FILENAME) >= sizeof(namebuf)) TEST_ERROR
HDstrcpy(namebuf, pathbuf);
HDstrcat(namebuf, BE_FILENAME);
/* Test BE file; try to open a group through the external link */
- if((fid = H5Fopen(namebuf, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR;
- if((gid = H5Oopen(fid, "ext_link", lapl_id)) < 0) TEST_ERROR;
+ if((fid = H5Fopen(namebuf, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((gid = H5Oopen(fid, "ext_link", lapl_id)) < 0) TEST_ERROR
/* Open a group in the external file using that group ID */
- if((gid2 = H5Gopen(gid, "subgroup")) < 0) TEST_ERROR;
+ if((gid2 = H5Gopen(gid, "subgroup")) < 0) TEST_ERROR
/* Close the IDs */
- if(H5Gclose(gid2) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
- if(H5Fclose(fid) < 0) TEST_ERROR;
+ if(H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -3504,7 +3606,8 @@ error:
*/
/* Callback functions for UD hard links. */
/* UD_hard_create increments the object's reference count */
-static herr_t UD_hard_create(const char UNUSED * link_name, hid_t loc_group, void * udata, size_t udata_size, hid_t UNUSED lcpl_id)
+static herr_t
+UD_hard_create(const char UNUSED * link_name, hid_t loc_group, void * udata, size_t udata_size, hid_t UNUSED lcpl_id)
{
haddr_t addr;
hid_t target_obj = -1;
@@ -3540,15 +3643,15 @@ done:
switch(H5Iget_type(target_obj))
{
case H5I_GROUP:
- if(H5Gclose(target_obj) <0)
+ if(H5Gclose(target_obj) < 0)
ret_value = -1;
break;
case H5I_DATASET:
- if(H5Dclose(target_obj) <0)
+ if(H5Dclose(target_obj) < 0)
ret_value = -1;
break;
case H5I_DATATYPE:
- if(H5Tclose(target_obj) <0)
+ if(H5Tclose(target_obj) < 0)
ret_value = -1;
break;
default:
@@ -3560,7 +3663,8 @@ done:
}
/* UD_hard_delete decrements the object's reference count */
-static herr_t UD_hard_delete(const char UNUSED * link_name, hid_t loc_group, void * udata, size_t udata_size)
+static herr_t
+UD_hard_delete(const char UNUSED * link_name, hid_t loc_group, void * udata, size_t udata_size)
{
haddr_t addr;
hid_t target_obj = -1;
@@ -3596,15 +3700,15 @@ done:
switch(H5Iget_type(target_obj))
{
case H5I_GROUP:
- if(H5Gclose(target_obj) <0)
+ if(H5Gclose(target_obj) < 0)
ret_value = -1;
break;
case H5I_DATASET:
- if(H5Dclose(target_obj) <0)
+ if(H5Dclose(target_obj) < 0)
ret_value = -1;
break;
case H5I_DATATYPE:
- if(H5Tclose(target_obj) <0)
+ if(H5Tclose(target_obj) < 0)
ret_value = -1;
break;
default:
@@ -3615,7 +3719,8 @@ done:
return ret_value;
}
-static hid_t UD_hard_traverse(const char UNUSED *link_name, hid_t cur_group, void * udata, size_t udata_size, hid_t UNUSED lapl_id)
+static hid_t
+UD_hard_traverse(const char UNUSED *link_name, hid_t cur_group, void * udata, size_t udata_size, hid_t UNUSED lapl_id)
{
haddr_t addr;
hid_t ret_value = -1;
@@ -3630,8 +3735,8 @@ static hid_t UD_hard_traverse(const char UNUSED *link_name, hid_t cur_group, voi
return ret_value;
}
-const H5L_link_class_t UD_hard_class[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_hard_class[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_HARD_TYPE, /* Link type id number */
"UD_hard_link", /* Link class name for debugging */
UD_hard_create, /* Creation callback */
@@ -3653,49 +3758,49 @@ ud_hard_links(hid_t fapl)
h5_stat_size_t empty_size; /* Size of an empty file */
char filename[NAME_BUF_SIZE];
- TESTING("user-defined hard link");
+ TESTING("user-defined hard link (w/new group format)")
/* Set up filename and create file*/
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Get the size of the empty file for reference */
- if(H5Fclose(fid) < 0) TEST_ERROR;
- if((empty_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
+ if((empty_size = h5_get_file_size(filename))==0) TEST_ERROR
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Check that external links are registered and UD hard links are not */
- if(H5Lis_registered(H5L_LINK_EXTERNAL) != TRUE) TEST_ERROR
- if(H5Lis_registered(UD_HARD_TYPE) != 0) TEST_ERROR
+ if(H5Lis_registered(H5L_TYPE_EXTERNAL) != TRUE) TEST_ERROR
+ if(H5Lis_registered(UD_HARD_TYPE) != FALSE) TEST_ERROR
/* Register "user-defined hard links" with the library */
- if(H5Lregister(UD_hard_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_hard_class) < 0) TEST_ERROR
/* Check that UD hard links are now registered */
- if(H5Lis_registered(H5L_LINK_EXTERNAL) != TRUE) TEST_ERROR
+ if(H5Lis_registered(H5L_TYPE_EXTERNAL) != TRUE) TEST_ERROR
if(H5Lis_registered(UD_HARD_TYPE) != TRUE) TEST_ERROR
/* Create a group for the UD hard link to point to */
- if((gid = H5Gcreate(fid, "group", 0)) <0) TEST_ERROR;
+ if((gid = H5Gcreate(fid, "group", (size_t)0)) < 0) TEST_ERROR
/* Get address for the group to give to the hard link */
- if (H5Lget_linkinfo(fid, "group", &li, H5P_DEFAULT)<0) TEST_ERROR;
+ if(H5Lget_linkinfo(fid, "group", &li, H5P_DEFAULT) < 0) TEST_ERROR
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Create a user-defined "hard link" to the group using the address we got
* from H5Lget_linkinfo */
- if(H5Lcreate_ud(fid, "ud_link", UD_HARD_TYPE, &(li.u.address), sizeof(haddr_t), H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_ud(fid, "ud_link", UD_HARD_TYPE, &(li.u.address), sizeof(haddr_t), H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close and re-open file to ensure that data is written to disk */
- if(H5Fclose(fid) < 0) TEST_ERROR;
- if((fid = H5Fopen(filename, H5F_ACC_RDWR, H5P_DEFAULT)) < 0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
+ if((fid = H5Fopen(filename, H5F_ACC_RDWR, H5P_DEFAULT)) < 0) TEST_ERROR
/* Open group through UD link */
- if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -3706,23 +3811,23 @@ ud_hard_links(hid_t fapl)
/* Close groups*/
if(H5Gclose(gid2) < 0) TEST_ERROR
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Re-open group without using ud link to check that it was created properly */
- if((gid = H5Gopen(fid, "group/new_group")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "group/new_group")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
if(HDstrcmp(objname, "/group/new_group")) TEST_ERROR
/* Close opened object */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
- /* Check that H5Gget_objinfo works on the hard link */
+ /* Check that H5Lget_objinfo works on the hard link */
if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) < 0) TEST_ERROR
/* UD hard links have no query function, thus return a "link length" of 0 */
if(li.u.link_size != 0) TEST_ERROR
- if (UD_HARD_TYPE != li.linkclass) {
+ if(UD_HARD_TYPE != li.type) {
H5_FAILED();
puts(" Unexpected link class - should have been a UD hard link");
goto error;
@@ -3730,24 +3835,24 @@ ud_hard_links(hid_t fapl)
/* Unlink the group pointed to by the UD link. It shouldn't be
* deleted because of the UD link. */
- if(H5Gunlink(fid, "/group") < 0) TEST_ERROR;
+ if(H5Gunlink(fid, "/group") < 0) TEST_ERROR
/* Ensure we can open the group through the UD link */
- if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR
/* Unlink the group contained within it. */
- if(H5Gunlink(gid, "new_group") < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gunlink(gid, "new_group") < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Now delete the UD link. This should cause the group to be
* deleted, too. */
- if(H5Gunlink(fid, "ud_link")<0) TEST_ERROR;
+ if(H5Gunlink(fid, "ud_link") < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* The file should be empty again. */
- if(empty_size!=h5_get_file_size(filename)) TEST_ERROR;
+ if(empty_size != h5_get_file_size(filename)) TEST_ERROR
if(H5Lunregister(UD_HARD_TYPE) < 0) TEST_ERROR
@@ -3756,16 +3861,16 @@ ud_hard_links(hid_t fapl)
error:
H5E_BEGIN_TRY {
- H5Gclose (gid2);
- H5Gclose (gid);
- H5Fclose (fid);
+ H5Gclose(gid2);
+ H5Gclose(gid);
+ H5Fclose(fid);
} H5E_END_TRY;
return -1;
} /* end ud_hard_links() */
/*-------------------------------------------------------------------------
- * Function: ext_link_endian
+ * Function: UD_rereg_traverse
*
* Purpose: Check that user defined link types can be unregistered and
* reregistered properly.
@@ -3781,11 +3886,12 @@ ud_hard_links(hid_t fapl)
/* A traversal function that ignores any udata and simply opens an object
* in the current group named REREG_TARGET_NAME
*/
-static hid_t UD_rereg_traverse(const char UNUSED * link_name, hid_t cur_group, void UNUSED * udata, size_t UNUSED udata_size, hid_t lapl_id)
+static hid_t
+UD_rereg_traverse(const char UNUSED * link_name, hid_t cur_group, void UNUSED * udata, size_t UNUSED udata_size, hid_t lapl_id)
{
hid_t ret_value;
- if((ret_value = H5Oopen(cur_group, REREG_TARGET_NAME, lapl_id)) < 0) TEST_ERROR;
+ if((ret_value = H5Oopen(cur_group, REREG_TARGET_NAME, lapl_id)) < 0) TEST_ERROR
return ret_value;
@@ -3795,8 +3901,8 @@ error:
/* This link class has the same ID number as the UD hard links but
* has a very different traversal function */
-const H5L_link_class_t UD_rereg_class[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_rereg_class[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_HARD_TYPE, /* Link type id number */
"UD_reregistered_type", /* Link class name for debugging */
NULL, /* Creation callback */
@@ -3818,61 +3924,61 @@ ud_link_reregister(hid_t fapl)
char filename[NAME_BUF_SIZE];
h5_stat_size_t empty_size; /* Size of an empty file */
- TESTING("registering a new class for existing UD links");
+ TESTING("registering a new class for existing UD links (w/new group format)")
/* Set up filename and create file*/
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Get the size of the empty file for reference */
- if(H5Fclose(fid) < 0) TEST_ERROR;
- if((empty_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
+ if((empty_size=h5_get_file_size(filename))==0) TEST_ERROR
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Check that UD hard links are not registered */
- if(H5Lis_registered(UD_HARD_TYPE) != 0) TEST_ERROR
+ if(H5Lis_registered(UD_HARD_TYPE) != FALSE) TEST_ERROR
/* Register "user-defined hard links" with the library */
- if(H5Lregister(UD_hard_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_hard_class) < 0) TEST_ERROR
/* Check that UD hard links are registered */
if(H5Lis_registered(UD_HARD_TYPE) != TRUE) TEST_ERROR
/* Point a UD defined hard link to a group in the same way as the previous test */
- if((gid = H5Gcreate(fid, "group", 0)) <0) TEST_ERROR;
- if (H5Lget_linkinfo(fid, "group", &li, H5P_DEFAULT)<0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Gcreate(fid, "group", (size_t)0)) < 0) TEST_ERROR
+ if (H5Lget_linkinfo(fid, "group", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
if(H5Lcreate_ud(fid, "ud_link", UD_HARD_TYPE, &(li.u.address),
sizeof(li.u.address), H5P_DEFAULT, H5P_DEFAULT) < 0)
- TEST_ERROR;
+ TEST_ERROR
/* Create a group named REREG_TARGET_NAME in the same group as the ud link */
- if((gid = H5Gcreate(fid, REREG_TARGET_NAME, 0)) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Gcreate(fid, REREG_TARGET_NAME, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Now unregister UD hard links */
- if(H5Lunregister(UD_HARD_TYPE) < 0) TEST_ERROR;
+ if(H5Lunregister(UD_HARD_TYPE) < 0) TEST_ERROR
/* Check that UD hard links are no longer registered */
- if(H5Lis_registered(UD_HARD_TYPE) != 0) TEST_ERROR
+ if(H5Lis_registered(UD_HARD_TYPE) != FALSE) TEST_ERROR
/* Verify that we can't traverse the ud link anymore */
H5E_BEGIN_TRY {
- if((gid = H5Gopen(fid, "ud_link")) >= 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ud_link")) >= 0) TEST_ERROR
} H5E_END_TRY
/* Verify that we can't create any new links of this type */
H5E_BEGIN_TRY {
if(H5Lcreate_ud(fid, "ud_link2", UD_HARD_TYPE, &(li.u.address),
sizeof(li.u.address), H5P_DEFAULT, H5P_DEFAULT) >= 0)
- TEST_ERROR;
+ TEST_ERROR
} H5E_END_TRY
/* Register a new kind of link with the same ID number */
- if(H5Lregister(UD_rereg_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_rereg_class) < 0) TEST_ERROR
/* Check that UD hard links are registered again */
if(H5Lis_registered(UD_HARD_TYPE) != TRUE) TEST_ERROR
@@ -3880,7 +3986,7 @@ ud_link_reregister(hid_t fapl)
/* Open a group through the ud link (now a different class of link).
* It should be a different group
* than the UD hard link pointed to */
- if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -3891,58 +3997,58 @@ ud_link_reregister(hid_t fapl)
/* Close groups*/
if(H5Gclose(gid2) < 0) TEST_ERROR
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Re-open group without using ud link to check that it was created properly */
- if((gid = H5Gopen(fid, "rereg_target/new_group")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "rereg_target/new_group")) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
if(HDstrcmp(objname, "/rereg_target/new_group")) TEST_ERROR
/* Close opened object */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Unlink the group pointed to by the UD hard link. It shouldn't be
* deleted because the UD link incremented its reference count. */
- if(H5Gunlink(fid, "/group") < 0) TEST_ERROR;
+ if(H5Gunlink(fid, "/group") < 0) TEST_ERROR
/* What a mess! Re-register user-defined links to clean up the
* reference counts. We shouldn't actually need to unregister the
* other link type */
- if(H5Lregister(UD_hard_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_hard_class) < 0) TEST_ERROR
if(H5Lis_registered(UD_HARD_TYPE) != TRUE) TEST_ERROR
/* Ensure we can open the group through the UD link (now that UD hard
* links have been registered) */
- if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Delete the UD hard link. This should cause the group to be
* deleted, too. */
- if(H5Gunlink(fid, "ud_link")<0) TEST_ERROR;
+ if(H5Gunlink(fid, "ud_link") < 0) TEST_ERROR
/* Unlink the other two groups so that we can make sure the file is empty */
- if(H5Gunlink(fid, "/rereg_target/new_group")<0) TEST_ERROR;
- if(H5Gunlink(fid, REREG_TARGET_NAME)<0) TEST_ERROR;
+ if(H5Gunlink(fid, "/rereg_target/new_group") < 0) TEST_ERROR
+ if(H5Gunlink(fid, REREG_TARGET_NAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* The file should be empty again. */
- if(empty_size!=h5_get_file_size(filename)) TEST_ERROR;
+ if(empty_size!=h5_get_file_size(filename)) TEST_ERROR
if(H5Lunregister(UD_HARD_TYPE) < 0) TEST_ERROR
- if(H5Lis_registered(UD_HARD_TYPE) != 0) TEST_ERROR
+ if(H5Lis_registered(UD_HARD_TYPE) != FALSE) TEST_ERROR
PASSED();
return 0;
error:
H5E_BEGIN_TRY {
- H5Gclose (gid2);
- H5Gclose (gid);
- H5Fclose (fid);
+ H5Gclose(gid2);
+ H5Gclose(gid);
+ H5Fclose(fid);
} H5E_END_TRY;
return -1;
} /* end ud_link_reregister() */
@@ -3967,14 +4073,14 @@ ud_link_reregister(hid_t fapl)
static herr_t
UD_cb_create(const char * link_name, hid_t loc_group, void * udata, size_t udata_size, hid_t lcpl_id)
{
- if(!link_name) TEST_ERROR;
- if(loc_group < 0) TEST_ERROR;
- if(udata_size > 0 && !udata) TEST_ERROR;
- if(lcpl_id < 0) TEST_ERROR;
+ if(!link_name) TEST_ERROR
+ if(loc_group < 0) TEST_ERROR
+ if(udata_size > 0 && !udata) TEST_ERROR
+ if(lcpl_id < 0) TEST_ERROR
- if(strcmp(link_name, UD_CB_LINK_NAME) && strcmp(link_name, NEW_UD_CB_LINK_NAME)) TEST_ERROR;
- if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR;
- if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR;
+ if(strcmp(link_name, UD_CB_LINK_NAME) && strcmp(link_name, NEW_UD_CB_LINK_NAME)) TEST_ERROR
+ if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR
+ if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR
return 0;
@@ -3988,16 +4094,16 @@ UD_cb_traverse(const char * link_name, hid_t cur_group, void * udata, size_t uda
const char *target = (char *) udata;
hid_t ret_value;
- if(!link_name) TEST_ERROR;
- if(cur_group < 0) TEST_ERROR;
- if(udata_size > 0 && !udata) TEST_ERROR;
+ if(!link_name) TEST_ERROR
+ if(cur_group < 0) TEST_ERROR
+ if(udata_size > 0 && !udata) TEST_ERROR
- if(strcmp(link_name, UD_CB_LINK_NAME) && strcmp(link_name, NEW_UD_CB_LINK_NAME)) TEST_ERROR;
- if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR;
- if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR;
+ if(strcmp(link_name, UD_CB_LINK_NAME) && strcmp(link_name, NEW_UD_CB_LINK_NAME)) TEST_ERROR
+ if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR
+ if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR
if((ret_value = H5Oopen(cur_group, target, lapl_id)) < 0)
- TEST_ERROR;
+ TEST_ERROR
return ret_value;
@@ -4009,13 +4115,13 @@ error:
static herr_t
UD_cb_move(const char * new_name, hid_t new_loc, void * udata, size_t udata_size)
{
- if(!new_name) TEST_ERROR;
- if(new_loc < 0) TEST_ERROR;
- if(udata_size > 0 && !udata) TEST_ERROR;
+ if(!new_name) TEST_ERROR
+ if(new_loc < 0) TEST_ERROR
+ if(udata_size > 0 && !udata) TEST_ERROR
- if(strcmp(new_name, NEW_UD_CB_LINK_NAME)) TEST_ERROR;
- if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR;
- if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR;
+ if(strcmp(new_name, NEW_UD_CB_LINK_NAME)) TEST_ERROR
+ if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR
+ if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR
return 0;
@@ -4027,33 +4133,34 @@ error:
static herr_t
UD_cb_delete(const char * link_name, hid_t loc_group, void * udata, size_t udata_size)
{
- if(!link_name) TEST_ERROR;
- if(loc_group < 0) TEST_ERROR;
- if(udata_size > 0 && !udata) TEST_ERROR;
+ if(!link_name) TEST_ERROR
+ if(loc_group < 0) TEST_ERROR
+ if(udata_size > 0 && !udata) TEST_ERROR
- if(strcmp(link_name, UD_CB_LINK_NAME) && strcmp(link_name, NEW_UD_CB_LINK_NAME)) TEST_ERROR;
- if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR;
- if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR;
+ if(strcmp(link_name, UD_CB_LINK_NAME) && strcmp(link_name, NEW_UD_CB_LINK_NAME)) TEST_ERROR
+ if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR
+ if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR
return 0;
error:
return -1;
}
+
/* Callback for when the link is queried */
static ssize_t
UD_cb_query(const char * link_name, void * udata, size_t udata_size, void* buf, size_t buf_size)
{
- if(!link_name) TEST_ERROR;
- if(udata_size > 0 && !udata) TEST_ERROR;
+ if(!link_name) TEST_ERROR
+ if(udata_size > 0 && !udata) TEST_ERROR
- if(strcmp(link_name, UD_CB_LINK_NAME)) TEST_ERROR;
- if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR;
- if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR;
+ if(strcmp(link_name, UD_CB_LINK_NAME)) TEST_ERROR
+ if(strcmp(udata, UD_CB_TARGET)) TEST_ERROR
+ if(udata_size != UD_CB_TARGET_LEN) TEST_ERROR
if(buf)
{
- if(buf_size < 16) TEST_ERROR;
+ if(buf_size < 16) TEST_ERROR
strcpy(buf, "query succeeded");
}
@@ -4064,8 +4171,8 @@ error:
return -1;
}
-const H5L_link_class_t UD_cb_class[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_cb_class[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_CB_TYPE, /* Link type id number */
NULL, /* NULL name (to make sure this doesn't break anything */
UD_cb_create, /* Creation callback */
@@ -4077,7 +4184,7 @@ const H5L_link_class_t UD_cb_class[1] = {{
}};
static int
-ud_callbacks(hid_t fapl)
+ud_callbacks(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1); /* Group ID */
@@ -4088,65 +4195,68 @@ ud_callbacks(hid_t fapl)
char filename[NAME_BUF_SIZE];
char query_buf[NAME_BUF_SIZE];
- TESTING("user-defined link callbacks");
+ if(new_format)
+ TESTING("user-defined link callbacks (w/new group format)")
+ else
+ TESTING("user-defined link callbacks")
/* Set up filename and create file*/
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Check that registered link classes are, and unregistered ones aren't */
- if(H5Lis_registered(H5L_LINK_EXTERNAL) != TRUE) TEST_ERROR
- if(H5Lis_registered(UD_HARD_TYPE) != 0) TEST_ERROR
- if(H5Lis_registered(UD_CB_TYPE) != 0) TEST_ERROR
+ if(H5Lis_registered(H5L_TYPE_EXTERNAL) != TRUE) TEST_ERROR
+ if(H5Lis_registered(UD_HARD_TYPE) != FALSE) TEST_ERROR
+ if(H5Lis_registered(UD_CB_TYPE) != FALSE) TEST_ERROR
/* Hit two birds with one stone: register UD hard links from previous
* test to check that having two UD links registered at once presents
* no problems. */
- if(H5Lregister(UD_hard_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_hard_class) < 0) TEST_ERROR
/* Register user-defined link class. This is the one we'll actually
* be using. */
- if(H5Lregister(UD_cb_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_cb_class) < 0) TEST_ERROR
/* Check that registered link classes are, and unregistered ones aren't */
- if(H5Lis_registered(H5L_LINK_EXTERNAL) != TRUE) TEST_ERROR
+ if(H5Lis_registered(H5L_TYPE_EXTERNAL) != TRUE) TEST_ERROR
if(H5Lis_registered(UD_HARD_TYPE) != TRUE) TEST_ERROR
if(H5Lis_registered(UD_CB_TYPE) != TRUE) TEST_ERROR
/* Create a group for the UD link to point to */
- if((gid = H5Gcreate(fid, UD_CB_TARGET, 0)) <0) TEST_ERROR;
+ if((gid = H5Gcreate(fid, UD_CB_TARGET, (size_t)0)) < 0) TEST_ERROR
/* Create a user-defined link to the group. These UD links behave like soft links. */
- if(H5Lcreate_ud(fid, UD_CB_LINK_NAME, UD_CB_TYPE, ud_target_name, UD_CB_TARGET_LEN, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Lcreate_ud(fid, UD_CB_LINK_NAME, UD_CB_TYPE, ud_target_name, (size_t)UD_CB_TARGET_LEN, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Try opening group through UD link */
- if((gid = H5Gopen(fid, UD_CB_LINK_NAME)) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, UD_CB_LINK_NAME)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Query the link to test its query callback */
- if (H5Lget_linkinfo(fid, UD_CB_LINK_NAME, &li, H5P_DEFAULT)<0) TEST_ERROR;
- if(li.u.link_size != 16) TEST_ERROR;
- if (UD_CB_TYPE != li.linkclass) {
+ if (H5Lget_linkinfo(fid, UD_CB_LINK_NAME, &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.u.link_size != 16) TEST_ERROR
+ if (UD_CB_TYPE != li.type) {
H5_FAILED();
puts(" Unexpected link class - should have been a UD hard link");
goto error;
}
/* Fill the query buffer */
- if(H5Gget_linkval(fid, UD_CB_LINK_NAME, NAME_BUF_SIZE, query_buf) < 0) TEST_ERROR;
- if(strcmp(query_buf, "query succeeded") != 0) TEST_ERROR;
+ if(H5Gget_linkval(fid, UD_CB_LINK_NAME, (size_t)NAME_BUF_SIZE, query_buf) < 0) TEST_ERROR
+ if(HDstrcmp(query_buf, "query succeeded") != 0) TEST_ERROR
/* Move the link */
- if(H5Gmove(fid, UD_CB_LINK_NAME, NEW_UD_CB_LINK_NAME) < 0) TEST_ERROR;
+ if(H5Gmove(fid, UD_CB_LINK_NAME, NEW_UD_CB_LINK_NAME) < 0) TEST_ERROR
/* Re-open group to ensure that move worked */
- if((gid = H5Gopen(fid, NEW_UD_CB_LINK_NAME)) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, NEW_UD_CB_LINK_NAME)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Remove UD link */
- if(H5Gunlink(fid, NEW_UD_CB_LINK_NAME) < 0) TEST_ERROR;
+ if(H5Gunlink(fid, NEW_UD_CB_LINK_NAME) < 0) TEST_ERROR
/* Test that the callbacks don't work if the link class is not registered */
@@ -4154,39 +4264,38 @@ ud_callbacks(hid_t fapl)
/* Create a new link. Just for fun, give it a non-default character
* encoding (to test that LAPLs work) */
if((lcpl = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
-#ifdef H5_GROUP_REVISION
if(H5Pset_char_encoding(lcpl, H5T_CSET_UTF8) < 0) TEST_ERROR
-#endif /* H5_GROUP_REVISION */
- if(H5Lcreate_ud(fid, UD_CB_LINK_NAME, UD_CB_TYPE, ud_target_name, UD_CB_TARGET_LEN, lcpl, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Pclose(lcpl)<0) TEST_ERROR
+ if(H5Lcreate_ud(fid, UD_CB_LINK_NAME, UD_CB_TYPE, ud_target_name, (size_t)UD_CB_TARGET_LEN, lcpl, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Pclose(lcpl) < 0) TEST_ERROR
/* Check its character encoding */
-#ifdef H5_GROUP_REVISION
- if(H5Lget_linkinfo(fid, UD_CB_LINK_NAME, &li, H5P_DEFAULT) < 0) TEST_ERROR;
- if(li.cset != H5T_CSET_UTF8) TEST_ERROR;
-#endif /* H5_GROUP_REVISION */
+ if(H5Lget_linkinfo(fid, UD_CB_LINK_NAME, &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.cset != H5T_CSET_UTF8) TEST_ERROR
/* Unregister the link class so the library forgets what its callbacks do */
- if(H5Lunregister(UD_CB_TYPE) < 0) TEST_ERROR;
+ if(H5Lunregister(UD_CB_TYPE) < 0) TEST_ERROR
/* Now test that each of the callbacks fails */
H5E_BEGIN_TRY {
- if(H5Lcreate_ud(fid, NEW_UD_CB_LINK_NAME, UD_CB_TYPE, ud_target_name, UD_CB_TARGET_LEN, H5P_DEFAULT, H5P_DEFAULT) >= 0) TEST_ERROR;
- if(H5Gmove(fid, UD_CB_LINK_NAME, NEW_UD_CB_LINK_NAME) >= 0) TEST_ERROR;
- if(H5Gunlink(fid, UD_CB_LINK_NAME) >= 0) TEST_ERROR;
- if((gid = H5Gopen(gid, UD_CB_LINK_NAME)) >= 0) TEST_ERROR;
- if(H5Gunlink(fid, UD_CB_LINK_NAME) >= 0) TEST_ERROR;
+ if(H5Lcreate_ud(fid, NEW_UD_CB_LINK_NAME, UD_CB_TYPE, ud_target_name, (size_t)UD_CB_TARGET_LEN, H5P_DEFAULT, H5P_DEFAULT) >= 0) TEST_ERROR
+ if(H5Gmove(fid, UD_CB_LINK_NAME, NEW_UD_CB_LINK_NAME) >= 0) TEST_ERROR
+ if(H5Gunlink(fid, UD_CB_LINK_NAME) >= 0) TEST_ERROR
+ if((gid = H5Gopen(gid, UD_CB_LINK_NAME)) >= 0) TEST_ERROR
+ if(H5Gunlink(fid, UD_CB_LINK_NAME) >= 0) TEST_ERROR
} H5E_END_TRY
/* The query callback should NOT fail, but should be unable to give a linklen */
- if(H5Lget_linkinfo(fid, UD_CB_LINK_NAME, &li, H5P_DEFAULT) <0) TEST_ERROR;
- if(li.u.link_size != 0) TEST_ERROR;
- if(li.linkclass != UD_CB_TYPE) TEST_ERROR;
- if(H5Gget_objinfo(fid, UD_CB_LINK_NAME, FALSE, &sb) <0) TEST_ERROR;
- if(sb.type != H5G_UDLINK) TEST_ERROR;
+ if(H5Lget_linkinfo(fid, UD_CB_LINK_NAME, &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.u.link_size != 0) TEST_ERROR
+ if(li.type != UD_CB_TYPE) TEST_ERROR
+ if(H5Gget_objinfo(fid, UD_CB_LINK_NAME, FALSE, &sb) < 0) TEST_ERROR
+ if(sb.type != H5G_UDLINK) TEST_ERROR
+
+ /* Unregister the UD hard links */
+ if(H5Lunregister(UD_HARD_TYPE) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4221,21 +4330,21 @@ UD_plist_traverse(const char UNUSED * link_name, hid_t cur_group, void UNUSED *
char target[NAME_BUF_SIZE];
hid_t ret_value;
- if(udata_size != 0) TEST_ERROR;
+ if(udata_size != 0) TEST_ERROR
/* Get the name of the target from the property list. */
- if(H5Pget(lapl_id, DEST_PROP_NAME, target) < 0) TEST_ERROR;
+ if(H5Pget(lapl_id, DEST_PROP_NAME, target) < 0) TEST_ERROR
if((ret_value = H5Oopen(cur_group, target, lapl_id)) < 0)
- TEST_ERROR;
+ TEST_ERROR
return ret_value;
error:
return -1;
}
-const H5L_link_class_t UD_plist_class[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_plist_class[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_PLIST_TYPE, /* Link type id number */
"UD_plist_link", /* Link class name for debugging */
NULL, /* Creation callback */
@@ -4247,7 +4356,7 @@ const H5L_link_class_t UD_plist_class[1] = {{
}};
static int
-lapl_udata(hid_t fapl)
+lapl_udata(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -4256,70 +4365,77 @@ lapl_udata(hid_t fapl)
char group_b_name[NAME_BUF_SIZE];
char filename[NAME_BUF_SIZE];
- TESTING("user data passed through lapl");
+ if(new_format)
+ TESTING("user data passed through lapl (w/new group format)")
+ else
+ TESTING("user data passed through lapl")
/* Set up filename and create file*/
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Register UD link types from previous tests to check that having
* multiple types registered at once presents no problems. */
- if(H5Lregister(UD_cb_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_cb_class) < 0) TEST_ERROR
/* Register the link class. We'll actually be using for this test. */
- if(H5Lregister(UD_plist_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_plist_class) < 0) TEST_ERROR
/* Another link class from a previous test */
- if(H5Lregister(UD_hard_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_hard_class) < 0) TEST_ERROR
/* Unregister the first link type registered to make sure this doesn't
* break anything. */
- if(H5Lunregister(UD_CB_TYPE) < 0) TEST_ERROR;
+ if(H5Lunregister(UD_CB_TYPE) < 0) TEST_ERROR
/* Create two groups for the UD link to point to */
- if((gid = H5Gcreate(fid, "group_a", 0)) <0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
- if((gid = H5Gcreate(fid, "group_b", 0)) <0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Gcreate(fid, "group_a", (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid, "group_b", (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Create a user-defined link to the group. These UD links have no udata. */
- if(H5Lcreate_ud(fid, "ud_link", UD_PLIST_TYPE, NULL, 0, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_ud(fid, "ud_link", UD_PLIST_TYPE, NULL, (size_t)0, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create a non-default lapl with a new property pointing to group a*/
- if((plist_id = H5Pcreate(H5P_LINK_ACCESS)) < 0) TEST_ERROR;
- strcpy(group_a_name, "group_a");
- if(H5Pinsert(plist_id, DEST_PROP_NAME, NAME_BUF_SIZE, group_a_name, NULL, NULL, NULL, NULL, NULL, NULL) < 0) TEST_ERROR;
+ if((plist_id = H5Pcreate(H5P_LINK_ACCESS)) < 0) TEST_ERROR
+ HDstrcpy(group_a_name, "group_a");
+#ifdef H5_WANT_H5_V1_6_COMPAT
+ if(H5Pinsert(plist_id, DEST_PROP_NAME, (size_t)NAME_BUF_SIZE, group_a_name, NULL, NULL, NULL, NULL, NULL) < 0) TEST_ERROR
+#else /* H5_WANT_H5_V1_6_COMPAT */
+ if(H5Pinsert(plist_id, DEST_PROP_NAME, (size_t)NAME_BUF_SIZE, group_a_name, NULL, NULL, NULL, NULL, NULL, NULL) < 0) TEST_ERROR
+#endif /* H5_WANT_H5_V1_6_COMPAT */
/* Try opening group through UD link */
- if((gid = H5Oopen(fid, "ud_link", plist_id)) < 0) TEST_ERROR;
- if((gid2 = H5Gcreate(gid, "subgroup_a", 0)) < 0) TEST_ERROR;
- if(H5Gclose(gid2) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Oopen(fid, "ud_link", plist_id)) < 0) TEST_ERROR
+ if((gid2 = H5Gcreate(gid, "subgroup_a", (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Verify that we can open the new group without using the ud link */
- if((gid2 = H5Gopen(fid, "/group_a/subgroup_a")) < 0) TEST_ERROR;
- if(H5Gclose(gid2) < 0) TEST_ERROR;
+ if((gid2 = H5Gopen(fid, "/group_a/subgroup_a")) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* Now use the same ud link to access group_b */
strcpy(group_b_name, "group_b");
- if(H5Pset(plist_id, DEST_PROP_NAME, group_b_name)<0) TEST_ERROR;
+ if(H5Pset(plist_id, DEST_PROP_NAME, group_b_name) < 0) TEST_ERROR
/* Create a subgroup */
- if((gid = H5Oopen(fid, "ud_link", plist_id)) < 0) TEST_ERROR;
- if((gid2 = H5Gcreate(gid, "subgroup_b", 0)) < 0) TEST_ERROR;
- if(H5Gclose(gid2) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Oopen(fid, "ud_link", plist_id)) < 0) TEST_ERROR
+ if((gid2 = H5Gcreate(gid, "subgroup_b", (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Verify that we can open the new group without using the ud link */
- if((gid2 = H5Gopen(fid, "/group_b/subgroup_b")) < 0) TEST_ERROR;
- if(H5Gclose(gid2) < 0) TEST_ERROR;
+ if((gid2 = H5Gopen(fid, "/group_b/subgroup_b")) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close property list */
- if(H5Pclose(plist_id) < 0) TEST_ERROR;
+ if(H5Pclose(plist_id) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4455,8 +4571,8 @@ UD_cbsucc_query(const char UNUSED * link_name, void UNUSED * udata, size_t UNUSE
}
/* This class is full of failing callbacks */
-const H5L_link_class_t UD_cbfail_class1[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_cbfail_class1[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_CBFAIL_TYPE, /* Link type id number */
"UD_cbfail_link1", /* Link class name for debugging */
UD_cbsucc_create, /* Creation callback */
@@ -4468,8 +4584,8 @@ const H5L_link_class_t UD_cbfail_class1[1] = {{
}};
/* This class is has two failing callbacks, move and query */
-const H5L_link_class_t UD_cbfail_class2[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_cbfail_class2[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_CBFAIL_TYPE, /* Link type id number */
"UD_cbfail_link2", /* Link class name for debugging */
UD_cbsucc_create, /* Creation callback */
@@ -4481,8 +4597,8 @@ const H5L_link_class_t UD_cbfail_class2[1] = {{
}};
/* All of these callbacks will succeed */
-const H5L_link_class_t UD_cbfail_class3[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_cbfail_class3[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_CBFAIL_TYPE, /* Link type id number */
"UD_cbfail_link3", /* Link class name for debugging */
UD_cbsucc_create, /* Creation callback */
@@ -4494,8 +4610,8 @@ const H5L_link_class_t UD_cbfail_class3[1] = {{
}};
/* Link classes that are invalid for various reasons */
-const H5L_link_class_t UD_error1_class[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_error1_class[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_ERROR_TYPE, /* Link type id number */
"UD_error_link", /* Link class name for debugging */
NULL, /* Creation callback */
@@ -4505,8 +4621,8 @@ const H5L_link_class_t UD_error1_class[1] = {{
NULL, /* Deletion callback */
NULL /* Query callback */
}};
-const H5L_link_class_t UD_error2_class[1] = {{
- UD_BAD_VERS, /* Invalid H5L_link_class_t version */
+const H5L_class_t UD_error2_class[1] = {{
+ UD_BAD_VERS, /* Invalid H5L_class_t version */
UD_ERROR_TYPE, /* Link type id number */
"UD_error_link", /* Link class name for debugging */
NULL, /* Creation callback */
@@ -4516,8 +4632,8 @@ const H5L_link_class_t UD_error2_class[1] = {{
NULL, /* Deletion callback */
NULL /* Query callback */
}};
-const H5L_link_class_t UD_error3_class[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_error3_class[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_BAD_TYPE1, /* Invalid Link type id number */
"UD_error_link", /* Link class name for debugging */
NULL, /* Creation callback */
@@ -4527,8 +4643,8 @@ const H5L_link_class_t UD_error3_class[1] = {{
NULL, /* Deletion callback */
NULL /* Query callback */
}};
-const H5L_link_class_t UD_error4_class[1] = {{
- H5L_LINK_CLASS_T_VERS, /* H5L_link_class_t version */
+const H5L_class_t UD_error4_class[1] = {{
+ H5L_LINK_CLASS_T_VERS, /* H5L_class_t version */
UD_BAD_TYPE2, /* Invalid Link type id number */
"UD_error_link", /* Link class name for debugging */
NULL, /* Creation callback */
@@ -4540,7 +4656,7 @@ const H5L_link_class_t UD_error4_class[1] = {{
}};
static int
-ud_link_errors(hid_t fapl)
+ud_link_errors(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1); /* Group IDs */
@@ -4549,56 +4665,59 @@ ud_link_errors(hid_t fapl)
char query_buf[NAME_BUF_SIZE];
H5L_linkinfo_t li; /* Link information */
- TESTING("user-defined link error conditions");
+ if(new_format)
+ TESTING("user-defined link error conditions (w/new group format)")
+ else
+ TESTING("user-defined link error conditions")
/* Set up filename and create file*/
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Try to register some invalid link classes */
H5E_BEGIN_TRY {
- if(H5Lregister(UD_error1_class) >= 0) TEST_ERROR;
- if(H5Lregister(UD_error2_class) >= 0) TEST_ERROR;
- if(H5Lregister(UD_error3_class) >= 0) TEST_ERROR;
- if(H5Lregister(UD_error4_class) >= 0) TEST_ERROR;
+ if(H5Lregister(UD_error1_class) >= 0) TEST_ERROR
+ if(H5Lregister(UD_error2_class) >= 0) TEST_ERROR
+ if(H5Lregister(UD_error3_class) >= 0) TEST_ERROR
+ if(H5Lregister(UD_error4_class) >= 0) TEST_ERROR
} H5E_END_TRY
/* Register the UD plist class. */
- if(H5Lregister(UD_plist_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_plist_class) < 0) TEST_ERROR
/* Now register the first class we'll be using.
* It has the same ID as the plist class, and should replace it. */
- if(H5Lregister(UD_cbfail_class1) < 0) TEST_ERROR;
+ if(H5Lregister(UD_cbfail_class1) < 0) TEST_ERROR
/* Create a group for the UD link to point to */
- if((gid = H5Gcreate(fid, "group", 0)) <0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Gcreate(fid, "group", (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Create a user-defined link to the group. */
strcpy(group_name, "/group");
- if(H5Lcreate_ud(fid, "/ud_link", UD_CBFAIL_TYPE, &group_name, strlen(group_name) + 1, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_ud(fid, "/ud_link", UD_CBFAIL_TYPE, &group_name, HDstrlen(group_name) + 1, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Open the group through the ud link */
- if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "ud_link")) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Now test that each of the callbacks will cause a failure if it returns -1 */
H5E_BEGIN_TRY {
/* The create callback will fail if we pass in no udata */
- if(H5Lcreate_ud(fid, "fail", UD_CBFAIL_TYPE, NULL, 0, H5P_DEFAULT, H5P_DEFAULT) >= 0) TEST_ERROR;
+ if(H5Lcreate_ud(fid, "fail", UD_CBFAIL_TYPE, NULL, (size_t)0, H5P_DEFAULT, H5P_DEFAULT) >= 0) TEST_ERROR
/* The move and copy callbacks will fail */
- if(H5Gmove(fid, "ud_link", "move_fail") >= 0) TEST_ERROR;
- if(H5Lcopy(fid, "ud_link", fid, "copy_fail", H5P_DEFAULT, H5P_DEFAULT) >= 0) TEST_ERROR;
+ if(H5Gmove(fid, "ud_link", "move_fail") >= 0) TEST_ERROR
+ if(H5Lcopy(fid, "ud_link", fid, "copy_fail", H5P_DEFAULT, H5P_DEFAULT) >= 0) TEST_ERROR
/* The traversal callback will fail if we remove its target */
- if(H5Gunlink(fid, "group") < 0) TEST_ERROR;
- if((gid = H5Gopen(gid, "ud_link")) >= 0) TEST_ERROR;
+ if(H5Gunlink(fid, "group") < 0) TEST_ERROR
+ if((gid = H5Gopen(gid, "ud_link")) >= 0) TEST_ERROR
/* The deletion callback will always fail */
- if(H5Gunlink(fid, "ud_link") >= 0) TEST_ERROR;
+ if(H5Gunlink(fid, "ud_link") >= 0) TEST_ERROR
/* The query callback will fail */
- if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) >=0) TEST_ERROR;
+ if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) >=0) TEST_ERROR
} H5E_END_TRY
/* Now use a class with different callback functions */
- if(H5Lregister(UD_cbfail_class2) < 0) TEST_ERROR;
+ if(H5Lregister(UD_cbfail_class2) < 0) TEST_ERROR
/* Moving should still fail, but copying will succeed */
H5E_BEGIN_TRY {
@@ -4607,31 +4726,31 @@ ud_link_errors(hid_t fapl)
if(H5Lcopy(fid, "ud_link", fid, "copy_succ", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* The query callback will succeed when we only want to get the size of the buffer... */
- if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) <0) TEST_ERROR;
- if(li.u.link_size != 0) TEST_ERROR;
+ if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.u.link_size != 0) TEST_ERROR
/* ...but fail when we try to write data to the buffer itself*/
H5E_BEGIN_TRY {
- if(H5Lget_linkval(fid, "ud_link", NAME_BUF_SIZE, query_buf, H5P_DEFAULT) >=0) TEST_ERROR;
+ if(H5Lget_linkval(fid, "ud_link", (size_t)NAME_BUF_SIZE, query_buf, H5P_DEFAULT) >=0) TEST_ERROR
} H5E_END_TRY
/* Register a new class */
- if(H5Lregister(UD_cbfail_class3) < 0) TEST_ERROR;
+ if(H5Lregister(UD_cbfail_class3) < 0) TEST_ERROR
/* Now querying should succeed */
- if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) <0) TEST_ERROR;
- if(li.u.link_size != 8) TEST_ERROR;
- if(H5Lget_linkval(fid, "ud_link", NAME_BUF_SIZE, query_buf, H5P_DEFAULT) <0) TEST_ERROR;
- if(HDstrcmp(query_buf, "succeed") != 0) TEST_ERROR;
+ if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.u.link_size != 8) TEST_ERROR
+ if(H5Lget_linkval(fid, "ud_link", (size_t)NAME_BUF_SIZE, query_buf, H5P_DEFAULT) < 0) TEST_ERROR
+ if(HDstrcmp(query_buf, "succeed") != 0) TEST_ERROR
/* Moving and copying should both succeed */
if(H5Gmove(fid, "copy_succ", "move_succ") < 0) TEST_ERROR
if(H5Lcopy(fid, "ud_link", fid, "copy_succ2", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Delete link (this callback should work now) */
- if(H5Gunlink(fid, "ud_link") <0) TEST_ERROR;
+ if(H5Gunlink(fid, "ud_link") < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4645,7 +4764,6 @@ ud_link_errors(hid_t fapl)
}
-
/*-------------------------------------------------------------------------
* Function: lapl_nlinks
*
@@ -4664,7 +4782,7 @@ ud_link_errors(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-lapl_nlinks(hid_t fapl)
+lapl_nlinks(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1), gid2 = (-1); /* Group IDs */
@@ -4677,61 +4795,64 @@ lapl_nlinks(hid_t fapl)
size_t nlinks; /* nlinks for H5Pset_nlinks */
hsize_t dims[2];
- TESTING("adjusting nlinks with LAPL");
+ if(new_format)
+ TESTING("adjusting nlinks with LAPL (w/new group format)")
+ else
+ TESTING("adjusting nlinks with LAPL")
/* Make certain test is valid */
/* XXX: should probably make a "generic" test that creates the proper
* # of links based on this value - QAK
*/
- HDassert(H5G_NLINKS == 16);
+ HDassert(H5L_NLINKS_DEF == 16);
/* Create file */
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group with short name in file (used as target for links) */
- if((gid=H5Gcreate (fid, "final", (size_t)0))<0) TEST_ERROR;
+ if((gid=H5Gcreate (fid, "final", (size_t)0)) < 0) TEST_ERROR
/* Create chain of soft links to existing object (limited) */
- if(H5Glink2(fid, "final", H5G_LINK_SOFT, fid, "soft1") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft1", H5G_LINK_SOFT, fid, "soft2") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft2", H5G_LINK_SOFT, fid, "soft3") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft3", H5G_LINK_SOFT, fid, "soft4") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft4", H5G_LINK_SOFT, fid, "soft5") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft5", H5G_LINK_SOFT, fid, "soft6") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft6", H5G_LINK_SOFT, fid, "soft7") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft7", H5G_LINK_SOFT, fid, "soft8") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft8", H5G_LINK_SOFT, fid, "soft9") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft9", H5G_LINK_SOFT, fid, "soft10") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft10", H5G_LINK_SOFT, fid, "soft11") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft11", H5G_LINK_SOFT, fid, "soft12") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft12", H5G_LINK_SOFT, fid, "soft13") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft13", H5G_LINK_SOFT, fid, "soft14") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft14", H5G_LINK_SOFT, fid, "soft15") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft15", H5G_LINK_SOFT, fid, "soft16") < 0) TEST_ERROR;
- if(H5Glink2(fid, "soft16", H5G_LINK_SOFT, fid, "soft17") < 0) TEST_ERROR;
+ if(H5Glink2(fid, "final", H5G_LINK_SOFT, fid, "soft1") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft1", H5G_LINK_SOFT, fid, "soft2") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft2", H5G_LINK_SOFT, fid, "soft3") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft3", H5G_LINK_SOFT, fid, "soft4") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft4", H5G_LINK_SOFT, fid, "soft5") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft5", H5G_LINK_SOFT, fid, "soft6") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft6", H5G_LINK_SOFT, fid, "soft7") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft7", H5G_LINK_SOFT, fid, "soft8") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft8", H5G_LINK_SOFT, fid, "soft9") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft9", H5G_LINK_SOFT, fid, "soft10") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft10", H5G_LINK_SOFT, fid, "soft11") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft11", H5G_LINK_SOFT, fid, "soft12") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft12", H5G_LINK_SOFT, fid, "soft13") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft13", H5G_LINK_SOFT, fid, "soft14") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft14", H5G_LINK_SOFT, fid, "soft15") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft15", H5G_LINK_SOFT, fid, "soft16") < 0) TEST_ERROR
+ if(H5Glink2(fid, "soft16", H5G_LINK_SOFT, fid, "soft17") < 0) TEST_ERROR
/* Close objects */
- if(H5Gclose(gid)<0) TEST_ERROR;
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Open file */
- if((fid=H5Fopen(filename, H5F_ACC_RDWR, fapl))<0) TEST_ERROR;
+ if((fid=H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Create LAPL with higher-than-usual nlinks value */
/* Create a non-default lapl with udata set to point to the first group */
- if((plist = H5Pcreate(H5P_LINK_ACCESS)) < 0) TEST_ERROR;
+ if((plist = H5Pcreate(H5P_LINK_ACCESS)) < 0) TEST_ERROR
nlinks = 20;
- if(H5Pset_nlinks(plist, nlinks)<0) TEST_ERROR;
+ if(H5Pset_nlinks(plist, nlinks) < 0) TEST_ERROR
/* Ensure that nlinks was set successfully */
nlinks = 0;
- if(H5Pget_nlinks(plist, &nlinks)<0) TEST_ERROR
+ if(H5Pget_nlinks(plist, &nlinks) < 0) TEST_ERROR
if(nlinks != 20) TEST_ERROR
/* Open object through what is normally too many soft links using
* new property list */
- if((gid = H5Oopen(fid, "soft17", plist)) < 0) TEST_ERROR;
+ if((gid = H5Oopen(fid, "soft17", plist)) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -4742,16 +4863,16 @@ lapl_nlinks(hid_t fapl)
/* Close groups */
if(H5Gclose(gid2) < 0) TEST_ERROR
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Set nlinks to a smaller number */
nlinks = 4;
- if(H5Pset_nlinks(plist, nlinks)<0) TEST_ERROR;
+ if(H5Pset_nlinks(plist, nlinks) < 0) TEST_ERROR
/* Ensure that nlinks was set successfully */
nlinks = 0;
- if(H5Pget_nlinks(plist, &nlinks)<0) TEST_ERROR;
- if(nlinks != 4) TEST_ERROR;
+ if(H5Pget_nlinks(plist, &nlinks) < 0) TEST_ERROR
+ if(nlinks != 4) TEST_ERROR
/* Try opening through what is now too many soft links */
H5E_BEGIN_TRY {
@@ -4764,7 +4885,7 @@ lapl_nlinks(hid_t fapl)
}
/* Open object through lesser soft link */
- if((gid = H5Oopen(fid, "soft4", plist)) < 0) TEST_ERROR;
+ if((gid = H5Oopen(fid, "soft4", plist)) < 0) TEST_ERROR
/* Check name */
if((name_len = H5Iget_name( gid, objname, (size_t)NAME_BUF_SIZE )) < 0) TEST_ERROR
@@ -4773,9 +4894,9 @@ lapl_nlinks(hid_t fapl)
/* Test other functions that should use a LAPL */
nlinks = 20;
- if(H5Pset_nlinks(plist, nlinks)<0) TEST_ERROR;
+ if(H5Pset_nlinks(plist, nlinks) < 0) TEST_ERROR
- /* Try copying and moving when both src and dst cotain many soft links
+ /* Try copying and moving when both src and dst contain many soft links
* using a non-default LAPL
*/
if(H5Lcopy(fid, "soft17", fid, "soft17/newer_soft", H5P_DEFAULT, plist) < 0) TEST_ERROR
@@ -4792,16 +4913,16 @@ lapl_nlinks(hid_t fapl)
if(H5Lunlink(fid, "soft17/soft_link", plist) < 0) TEST_ERROR
/* H5Lget_linkval and H5Lget_linkinfo */
- if(H5Lget_linkval(fid, "soft17", 0, NULL, plist) < 0) TEST_ERROR
+ if(H5Lget_linkval(fid, "soft17", (size_t)0, NULL, plist) < 0) TEST_ERROR
if(H5Lget_linkinfo(fid, "soft17", NULL, plist) < 0) TEST_ERROR
/* H5Lcreate_external and H5Lcreate_ud */
- if(H5Lcreate_external("filename", "path", fid, "soft17/extlink", H5P_DEFAULT, plist) <0) TEST_ERROR
+ if(H5Lcreate_external("filename", "path", fid, "soft17/extlink", H5P_DEFAULT, plist) < 0) TEST_ERROR
if(H5Lregister(UD_rereg_class) < 0) TEST_ERROR
- if(H5Lcreate_ud(fid, "soft17/udlink", UD_HARD_TYPE, NULL, 0, H5P_DEFAULT, plist) < 0) TEST_ERROR
+ if(H5Lcreate_ud(fid, "soft17/udlink", UD_HARD_TYPE, NULL, (size_t)0, H5P_DEFAULT, plist) < 0) TEST_ERROR
/* Close plist */
- if(H5Pclose(plist) < 0) TEST_ERROR;
+ if(H5Pclose(plist) < 0) TEST_ERROR
/* Create a datatype and dataset as targets inside the group */
@@ -4813,27 +4934,27 @@ lapl_nlinks(hid_t fapl)
dims[1] = 2;
if((sid = H5Screate_simple(2, dims, NULL)) < 0) TEST_ERROR
if((did = H5Dcreate(gid, "dataset", H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
- if(H5Dclose(did) < 0) TEST_ERROR;
+ if(H5Dclose(did) < 0) TEST_ERROR
/* Close group */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Try to open the objects using too many symlinks with default *APLs */
H5E_BEGIN_TRY {
if((gid = H5Gopen_expand(fid, "soft17", H5P_DEFAULT)) >=0) {
H5_FAILED();
puts(" Should have failed for too many nested links.");
- TEST_ERROR;
+ TEST_ERROR
}
if((tid = H5Topen_expand(fid, "soft17/datatype", H5P_DEFAULT)) >=0) {
H5_FAILED();
puts(" Should have failed for too many nested links.");
- TEST_ERROR;
+ TEST_ERROR
}
if((did = H5Dopen_expand(fid, "soft17/dataset", H5P_DEFAULT)) >=0) {
H5_FAILED();
puts(" Should have failed for too many nested links.");
- TEST_ERROR;
+ TEST_ERROR
}
} H5E_END_TRY
@@ -4850,9 +4971,9 @@ lapl_nlinks(hid_t fapl)
/* We should now be able to use these property lists to open each kind
* of object.
*/
- if((gid = H5Gopen_expand(fid, "soft17", gapl)) <0) TEST_ERROR
- if((tid = H5Topen_expand(fid, "soft17/datatype", tapl)) <0) TEST_ERROR
- if((did = H5Dopen_expand(fid, "soft17/dataset", dapl)) <0) TEST_ERROR
+ if((gid = H5Gopen_expand(fid, "soft17", gapl)) < 0) TEST_ERROR
+ if((tid = H5Topen_expand(fid, "soft17/datatype", tapl)) < 0) TEST_ERROR
+ if((did = H5Dopen_expand(fid, "soft17/dataset", dapl)) < 0) TEST_ERROR
/* Close objects */
if(H5Gclose(gid) < 0) TEST_ERROR
@@ -4860,12 +4981,15 @@ lapl_nlinks(hid_t fapl)
if(H5Dclose(did) < 0) TEST_ERROR
/* Close plists */
- if(H5Pclose(gapl) < 0) TEST_ERROR;
- if(H5Pclose(tapl) < 0) TEST_ERROR;
- if(H5Pclose(dapl) < 0) TEST_ERROR;
+ if(H5Pclose(gapl) < 0) TEST_ERROR
+ if(H5Pclose(tapl) < 0) TEST_ERROR
+ if(H5Pclose(dapl) < 0) TEST_ERROR
+
+ /* Unregister UD hard link class */
+ if(H5Lunregister(UD_HARD_TYPE) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4885,9 +5009,10 @@ lapl_nlinks(hid_t fapl)
} H5E_END_TRY;
return -1;
} /* end lapl_nlinks() */
+
/*-------------------------------------------------------------------------
- * Function: objinfo_linkclass
+ * Function: linkinfo
*
* Purpose: Check that the link class is returned correctly when queried.
*
@@ -4900,7 +5025,7 @@ lapl_nlinks(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-linkinfo(hid_t fapl)
+linkinfo(hid_t fapl, hbool_t new_format)
{
hid_t fid = (-1); /* File ID */
hid_t gid = (-1); /* Group ID */
@@ -4909,52 +5034,55 @@ linkinfo(hid_t fapl)
H5L_linkinfo_t li; /* Link information */
char filename[NAME_BUF_SIZE];
- TESTING("linkclass field in H5Gget_objinfo");
+ if(new_format)
+ TESTING("link type field in H5Gget_objinfo (w/new group format)")
+ else
+ TESTING("link type field in H5Gget_objinfo")
/* Set up filename and create file*/
h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Register a couple of user-defined link classes with the library */
- if(H5Lregister(UD_plist_class) < 0) TEST_ERROR;
+ if(H5Lregister(UD_plist_class) < 0) TEST_ERROR
/* Create an object of each type */
- if((tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR;
- if(H5Tcommit(fid, "datatype", tid) < 0) TEST_ERROR;
- if((gid = H5Gcreate(fid, "group", 0)) < 0) TEST_ERROR;
- if(H5Glink(fid, H5G_LINK_SOFT, "group", "softlink") < 0) TEST_ERROR;
+ if((tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if(H5Tcommit(fid, "datatype", tid) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid, "group", (size_t)0)) < 0) TEST_ERROR
+ if(H5Glink(fid, H5G_LINK_SOFT, "group", "softlink") < 0) TEST_ERROR
- if((sid = H5Screate(H5S_SCALAR)) < 0) TEST_ERROR;
- if((did = H5Dcreate(fid, "dataset", H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR;
+ if((sid = H5Screate(H5S_SCALAR)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid, "dataset", H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
- if(H5Lcreate_ud(fid, "ud_link", UD_PLIST_TYPE, NULL, 0, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
- if(H5Lcreate_external("file_name", "obj_path", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lcreate_ud(fid, "ud_link", UD_PLIST_TYPE, NULL, (size_t)0, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external("file_name", "obj_path", fid, "ext_link", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Close all objects */
- if(H5Tclose(tid) < 0) TEST_ERROR;
- if(H5Gclose(gid) < 0) TEST_ERROR;
- if(H5Dclose(did) < 0) TEST_ERROR;
-
- /* Make sure that linkclass is correct when objects are queried */
- if(H5Lget_linkinfo(fid, "datatype", &li, H5P_DEFAULT) < 0) TEST_ERROR;
- if(li.linkclass != H5L_LINK_HARD) TEST_ERROR;
- if(H5Lget_linkinfo(fid, "group", &li, H5P_DEFAULT) < 0) TEST_ERROR;
- if(li.linkclass != H5L_LINK_HARD) TEST_ERROR;
- if(H5Lget_linkinfo(fid, "dataset", &li, H5P_DEFAULT) < 0) TEST_ERROR;
- if(li.linkclass != H5L_LINK_HARD) TEST_ERROR;
-
- if(H5Lget_linkinfo(fid, "ext_link", &li, H5P_DEFAULT) < 0) TEST_ERROR;
- if(li.linkclass != H5L_LINK_EXTERNAL) TEST_ERROR;
- if(H5Lget_linkinfo(fid, "softlink", &li, H5P_DEFAULT) < 0) TEST_ERROR;
- if(li.linkclass != H5G_LINK_SOFT) TEST_ERROR;
- if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) < 0) TEST_ERROR;
- if(li.linkclass != UD_PLIST_TYPE) TEST_ERROR;
+ if(H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
+
+ /* Make sure that link type is correct when objects are queried */
+ if(H5Lget_linkinfo(fid, "datatype", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.type != H5L_TYPE_HARD) TEST_ERROR
+ if(H5Lget_linkinfo(fid, "group", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.type != H5L_TYPE_HARD) TEST_ERROR
+ if(H5Lget_linkinfo(fid, "dataset", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.type != H5L_TYPE_HARD) TEST_ERROR
+
+ if(H5Lget_linkinfo(fid, "ext_link", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.type != H5L_TYPE_EXTERNAL) TEST_ERROR
+ if(H5Lget_linkinfo(fid, "softlink", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.type != H5G_LINK_SOFT) TEST_ERROR
+ if(H5Lget_linkinfo(fid, "ud_link", &li, H5P_DEFAULT) < 0) TEST_ERROR
+ if(li.type != UD_PLIST_TYPE) TEST_ERROR
/* Ensure that passing a NULL pointer doesn't cause an error */
- if(H5Lget_linkinfo(fid, "group", NULL, H5P_DEFAULT) < 0) TEST_ERROR;
+ if(H5Lget_linkinfo(fid, "group", NULL, H5P_DEFAULT) < 0) TEST_ERROR
- if(H5Fclose(fid) < 0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4989,13 +5117,16 @@ linkinfo(hid_t fapl)
*-------------------------------------------------------------------------
*/
static int
-check_all_closed(hid_t fapl)
+check_all_closed(hid_t fapl, hbool_t new_format)
{
hid_t fid=-1;
char filename[NAME_BUF_SIZE];
int x;
- TESTING("that all files were closed correctly")
+ if(new_format)
+ TESTING("that all files were closed correctly (w/new group format)")
+ else
+ TESTING("that all files were closed correctly")
/* Some of the external or UD link tests may have failed to close
* an external file properly.
@@ -5034,86 +5165,91 @@ check_all_closed(hid_t fapl)
* Programmer: Robb Matzke
* Friday, August 14, 1998
*
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
int
main(void)
{
- int nerrors = 0;
- hid_t fapl;
const char *envval = NULL;
envval = HDgetenv("HDF5_DRIVER");
- if (envval == NULL)
+ if(envval == NULL)
envval = "nomatch";
- if (HDstrcmp(envval, "core") && HDstrcmp(envval, "split") && HDstrcmp(envval, "multi") && HDstrcmp(envval, "family") && HDstrcmp(envval, "stdio")) {
+ if(HDstrcmp(envval, "core") && HDstrcmp(envval, "split") && HDstrcmp(envval, "multi") && HDstrcmp(envval, "family") && HDstrcmp(envval, "stdio")) {
+ hid_t fapl, fapl2; /* File access property lists */
+ int nerrors = 0;
+ hbool_t new_format; /* Whether to use the new format or not */
+
h5_reset();
fapl = h5_fileaccess();
- /* The tests... */
- nerrors += mklinks(fapl) < 0 ? 1 : 0;
- nerrors += cklinks(fapl) < 0 ? 1 : 0;
- nerrors += new_links(fapl) < 0 ? 1 : 0;
- nerrors += ck_new_links(fapl) < 0 ? 1 : 0;
- nerrors += long_links(fapl) < 0 ? 1 : 0;
- nerrors += toomany(fapl) < 0 ? 1 : 0;
-
- /* Test new H5L link creation routine */
-#ifdef H5_GROUP_REVISION
- nerrors += test_h5l_create(fapl);
- nerrors += test_lcpl(fapl);
-#endif
- nerrors += test_move(fapl);
- nerrors += test_copy(fapl);
-#ifdef H5_GROUP_REVISION
- nerrors += test_move_preserves(fapl);
-#endif
- nerrors += test_compat(fapl);
+
+ /* Copy the file access property list */
+ if((fapl2 = H5Pcopy(fapl)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl2, TRUE) < 0) TEST_ERROR
+
+ /* Loop over using new group format */
+ for(new_format = FALSE; new_format <= TRUE; new_format++) {
+ /* General tests... (on both old & new format groups */
+ nerrors += mklinks((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += cklinks((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += new_links((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += ck_new_links((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += long_links((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += toomany((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+
+ /* Test new H5L link creation routine */
+ nerrors += test_h5l_create((new_format ? fapl2 : fapl), new_format);
+ nerrors += test_lcpl((new_format ? fapl2 : fapl), new_format);
+ nerrors += test_move((new_format ? fapl2 : fapl), new_format);
+ nerrors += test_copy((new_format ? fapl2 : fapl), new_format);
+ nerrors += test_move_preserves((new_format ? fapl2 : fapl), new_format);
+ nerrors += test_compat((new_format ? fapl2 : fapl), new_format);
#ifndef H5_CANNOT_OPEN_TWICE
- nerrors += external_link_root(fapl) < 0 ? 1 : 0;
+ nerrors += external_link_root((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
#endif /* H5_CANNOT_OPEN_TWICE */
- nerrors += external_link_path(fapl) < 0 ? 1 : 0;
- nerrors += external_link_mult(fapl) < 0 ? 1 : 0;
-#ifdef H5_GROUP_REVISION
- nerrors += external_link_self(fapl) < 0 ? 1 : 0;
-#endif
+ nerrors += external_link_path((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_mult((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_self((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
#ifndef H5_CANNOT_OPEN_TWICE
- nerrors += external_link_pingpong(fapl) < 0 ? 1 : 0;
- nerrors += external_link_toomany(fapl) < 0 ? 1 : 0;
+ nerrors += external_link_pingpong((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_toomany((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
#endif /* H5_CANNOT_OPEN_TWICE */
- nerrors += external_link_dangling(fapl) < 0 ? 1 : 0;
- nerrors += external_link_recursive(fapl) < 0 ? 1 : 0;
- nerrors += external_link_query(fapl) < 0 ? 1 : 0;
- nerrors += external_link_unlink_compact(fapl) < 0 ? 1 : 0;
-#ifdef H5_GROUP_REVISION
- nerrors += external_link_unlink_dense(fapl) < 0 ? 1 : 0;
-#endif /* H5_GROUP_REVISION */
- nerrors += external_link_move(fapl) < 0 ? 1 : 0;
-#ifdef H5_GROUP_REVISION
- nerrors += external_link_ride(fapl) < 0 ? 1 : 0;
-#endif /* H5_GROUP_REVISION */
+ nerrors += external_link_dangling((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_recursive((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_query((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_unlink_compact((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_unlink_dense((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_move((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += external_link_ride((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
#ifndef H5_CANNOT_OPEN_TWICE
- nerrors += external_link_closing(fapl) < 0 ? 1 : 0;
+ nerrors += external_link_closing((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
#endif /* H5_CANNOT_OPEN_TWICE */
- nerrors += external_link_endian(fapl) < 0 ? 1 : 0;
-
- /* These tests assume that external links are a form of UD links,
- * so assume that everything that passed for external links
- * above has already been tested for UD links.
- */
- nerrors += ud_hard_links(fapl) < 0 ? 1 : 0;
- nerrors += ud_link_reregister(fapl) < 0 ? 1 : 0;
- nerrors += ud_callbacks(fapl) < 0 ? 1 : 0;
- nerrors += ud_link_errors(fapl) < 0 ? 1 : 0;
- nerrors += lapl_udata(fapl) < 0 ? 1 : 0;
- nerrors += lapl_nlinks(fapl) < 0 ? 1 : 0;
- nerrors += linkinfo(fapl) < 0 ? 1 : 0;
-
- nerrors += check_all_closed(fapl) < 0 ? 1 : 0;
+ nerrors += external_link_endian((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+
+ /* These tests assume that external links are a form of UD links,
+ * so assume that everything that passed for external links
+ * above has already been tested for UD links.
+ */
+ if(new_format == TRUE) {
+ nerrors += ud_hard_links(fapl2) < 0 ? 1 : 0; /* requires new format groups */
+ nerrors += ud_link_reregister(fapl2) < 0 ? 1 : 0; /* requires new format groups */
+ } /* end if */
+ nerrors += ud_callbacks((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += ud_link_errors((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += lapl_udata((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += lapl_nlinks((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ nerrors += linkinfo((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+
+ nerrors += check_all_closed((new_format ? fapl2 : fapl), new_format) < 0 ? 1 : 0;
+ } /* end for */
+
+ /* Close 2nd FAPL */
+ H5Pclose(fapl2);
/* Results */
- if (nerrors) {
+ if(nerrors) {
printf("***** %d LINK TEST%s FAILED! *****\n",
nerrors, 1 == nerrors ? "" : "S");
exit(1);
@@ -5122,11 +5258,12 @@ main(void)
h5_cleanup(FILENAME, fapl);
}
else
- {
puts("All link tests skipped - Incompatible with current Virtual File Driver");
- }
return 0;
+error:
+ puts("*** TESTS FAILED ***");
+ return 1;
}
diff --git a/test/mount.c b/test/mount.c
index cfd99dc..af59240 100644
--- a/test/mount.c
+++ b/test/mount.c
@@ -71,8 +71,8 @@ setup(hid_t fapl)
if (H5Gclose(H5Gcreate(file, "/mnt1/file1", (size_t)0))<0) goto error;
if (H5Gclose(H5Gcreate(file, "/mnt_unlink", (size_t)0))<0) goto error;
if (H5Gclose(H5Gcreate(file, "/mnt_move_a", (size_t)0))<0) goto error;
- if (H5Glink(file, H5L_LINK_HARD, "/mnt1/file1", "/file1")<0) goto error;
- if (H5Glink(file, H5L_LINK_HARD, "/mnt1", "/mnt1_link")<0) goto error;
+ if (H5Glink(file, H5L_TYPE_HARD, "/mnt1/file1", "/file1")<0) goto error;
+ if (H5Glink(file, H5L_TYPE_HARD, "/mnt1", "/mnt1_link")<0) goto error;
if (H5Fclose(file)<0) goto error;
/* file 2 */
@@ -854,7 +854,7 @@ test_interlink(hid_t fapl)
/* Try an interfile hard link directly */
H5E_BEGIN_TRY {
- status = H5Glink(file1, H5L_LINK_HARD, "/mnt1/file2", "/file2");
+ status = H5Glink(file1, H5L_TYPE_HARD, "/mnt1/file2", "/file2");
} H5E_END_TRY;
if (status>=0) {
H5_FAILED();
@@ -1108,9 +1108,9 @@ test_mount_after_close(hid_t fapl)
TEST_ERROR
if((gidABM = H5Gcreate(gidAB , "M", (size_t)0)) < 0) /* Mount point */
TEST_ERROR
- if(H5Glink(gidAB, H5L_LINK_SOFT, "./M/X/Y", "C") < 0) /* Soft link */
+ if(H5Glink(gidAB, H5L_TYPE_SOFT, "./M/X/Y", "C") < 0) /* Soft link */
TEST_ERROR
- if(H5Glink(gidAB, H5L_LINK_SOFT, "/A", "T") < 0) /* Soft link */
+ if(H5Glink(gidAB, H5L_TYPE_SOFT, "/A", "T") < 0) /* Soft link */
TEST_ERROR
/* Close groups and file */
@@ -1144,7 +1144,7 @@ test_mount_after_close(hid_t fapl)
TEST_ERROR
if((did = H5Dcreate(gidXY, "D", H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0)
TEST_ERROR
- if(H5Glink(gidX, H5L_LINK_SOFT, "./Y", "T") < 0) /* Soft link */
+ if(H5Glink(gidX, H5L_TYPE_SOFT, "./Y", "T") < 0) /* Soft link */
TEST_ERROR
/* Write data to the dataset. */
@@ -3686,7 +3686,7 @@ test_symlink(hid_t fapl)
TEST_ERROR
/* Create soft link to mounted object */
- if(H5Glink(fid1, H5L_LINK_SOFT, "./A/D/H", "L") < 0) /* Soft link */
+ if(H5Glink(fid1, H5L_TYPE_SOFT, "./A/D/H", "L") < 0) /* Soft link */
TEST_ERROR
if(H5Fclose(fid1) < 0)
diff --git a/test/objcopy.c b/test/objcopy.c
index be6a80f..6745c91 100755
--- a/test/objcopy.c
+++ b/test/objcopy.c
@@ -137,7 +137,11 @@ addr_insert(H5G_stat_t *sb)
/* Insert the entry */
n = idtab_g.nobjs++;
+#if H5_SIZEOF_UINT64_T > H5_SIZEOF_LONG
idtab_g.obj[n] = (haddr_t)sb->objno[0] | ((haddr_t)sb->objno[1] << (8 * sizeof(long)));
+#else
+ idtab_g.obj[n] = (haddr_t)sb->objno[0];
+#endif
} /* end addr_insert() */
@@ -161,9 +165,13 @@ addr_lookup(H5G_stat_t *sb)
haddr_t obj_addr; /* Object's address in the file */
size_t n;
- if (sb->nlink<2) return FALSE; /*only one link possible*/
+ if(sb->nlink<2) return FALSE; /*only one link possible*/
+#if H5_SIZEOF_UINT64_T > H5_SIZEOF_LONG
obj_addr = (haddr_t)sb->objno[0] | ((haddr_t)sb->objno[1] << (8 * sizeof(long)));
+#else
+ obj_addr = (haddr_t)sb->objno[0];
+#endif
for(n = 0; n < idtab_g.nobjs; n++)
if(idtab_g.obj[n] == obj_addr)
return TRUE;
@@ -371,10 +379,10 @@ test_copy_attach_attribute_vl(hid_t loc_id)
unsigned int i, j;
int ret_value = -1;
- if ( (sid = H5Screate_simple(1, &dim1, NULL)) < 0 )
+ if((sid = H5Screate_simple(1, &dim1, NULL)) < 0 )
goto done;
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0)
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0)
goto done;
for(i = 0; i < 4; i++) {
@@ -384,22 +392,22 @@ test_copy_attach_attribute_vl(hid_t loc_id)
((int *)buf[i].p)[j] = j+1;
} /* end for */
- if ( (aid = H5Acreate(loc_id, "vlen attribute", tid, sid, H5P_DEFAULT)) < 0)
+ if((aid = H5Acreate(loc_id, "vlen attribute", tid, sid, H5P_DEFAULT)) < 0)
goto done;
- if ( H5Awrite(aid, tid, buf) < 0)
+ if(H5Awrite(aid, tid, buf) < 0)
goto done;
ret_value = 0;
done:
- if (tid >0 && sid > 0)
+ if(tid >0 && sid > 0)
H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf);
- if (sid > 0)
+ if(sid > 0)
H5Sclose(sid);
- if (tid > 0)
+ if(tid > 0)
H5Tclose(tid);
- if (aid > 0)
+ if(aid > 0)
H5Aclose(aid);
return ret_value;
} /* end of attach_attribute_vl */
@@ -438,13 +446,13 @@ test_copy_attach_attributes(hid_t loc_id, hid_t type_id)
attr_data[0] = 100 * i;
attr_data[1] = 200 * i;
- if ( (aid = H5Acreate(loc_id, attr_name, type_id, sid, H5P_DEFAULT)) < 0)
+ if((aid = H5Acreate(loc_id, attr_name, type_id, sid, H5P_DEFAULT)) < 0)
goto done;
- if ( H5Awrite(aid, H5T_NATIVE_INT, attr_data) < 0)
+ if(H5Awrite(aid, H5T_NATIVE_INT, attr_data) < 0)
goto done;
- if (aid > 0)
+ if(aid > 0)
H5Aclose(aid);
aid = -1;
@@ -453,9 +461,9 @@ test_copy_attach_attributes(hid_t loc_id, hid_t type_id)
ret_value = 0;
done:
- if (sid > 0)
+ if(sid > 0)
H5Sclose(sid);
- if (aid > 0)
+ if(aid > 0)
H5Aclose(aid);
return ret_value;
@@ -482,7 +490,7 @@ test_copy_attach_paired_attributes(hid_t loc_id, hid_t loc_id2, hid_t type_id)
int attr_data[2], i;
hsize_t dim1 = 2;
- if ( (sid = H5Screate_simple(1, &dim1, NULL)) < 0 ) goto done;
+ if((sid = H5Screate_simple(1, &dim1, NULL)) < 0 ) goto done;
for (i=0; i<NUM_ATTRIBUTES; i++) {
sprintf(attr_name, "%d attr", i);
@@ -492,24 +500,24 @@ test_copy_attach_paired_attributes(hid_t loc_id, hid_t loc_id2, hid_t type_id)
attr_data[1] = 200 * i;
/* Add attribute to first object */
- if ( (aid = H5Acreate(loc_id, attr_name, type_id, sid, H5P_DEFAULT)) < 0) goto done;
- if ( H5Awrite(aid, H5T_NATIVE_INT, attr_data) < 0) goto done;
- if ( H5Aclose(aid) < 0) goto done;
+ if((aid = H5Acreate(loc_id, attr_name, type_id, sid, H5P_DEFAULT)) < 0) goto done;
+ if(H5Awrite(aid, H5T_NATIVE_INT, attr_data) < 0) goto done;
+ if(H5Aclose(aid) < 0) goto done;
/* Add attribute to second object */
- if ( (aid = H5Acreate(loc_id2, attr_name, type_id, sid, H5P_DEFAULT)) < 0) goto done;
- if ( H5Awrite(aid, H5T_NATIVE_INT, attr_data) < 0) goto done;
- if ( H5Aclose(aid) < 0) goto done;
+ if((aid = H5Acreate(loc_id2, attr_name, type_id, sid, H5P_DEFAULT)) < 0) goto done;
+ if(H5Awrite(aid, H5T_NATIVE_INT, attr_data) < 0) goto done;
+ if(H5Aclose(aid) < 0) goto done;
}
- if ( H5Sclose(sid) < 0) goto done;
+ if(H5Sclose(sid) < 0) goto done;
return 0;
done:
- if (sid > 0)
+ if(sid > 0)
H5Sclose(sid);
- if (aid > 0)
+ if(aid > 0)
H5Aclose(aid);
return -1;
@@ -543,41 +551,41 @@ compare_attribute(hid_t aid, hid_t aid2, hid_t pid, const void *wbuf)
/* Check the datatypes are equal */
/* Open the datatype for the source attribute */
- if ( (tid = H5Aget_type(aid)) < 0) TEST_ERROR
+ if((tid = H5Aget_type(aid)) < 0) TEST_ERROR
/* Open the datatype for the destination attribute */
- if ( (tid2 = H5Aget_type(aid2)) < 0) TEST_ERROR
+ if((tid2 = H5Aget_type(aid2)) < 0) TEST_ERROR
/* Check that both datatypes are committed/not committed */
- if ( (is_committed = H5Tcommitted(tid)) < 0) TEST_ERROR
- if ( (is_committed2 = H5Tcommitted(tid2)) < 0) TEST_ERROR
- if ( is_committed != is_committed2) TEST_ERROR
+ if((is_committed = H5Tcommitted(tid)) < 0) TEST_ERROR
+ if((is_committed2 = H5Tcommitted(tid2)) < 0) TEST_ERROR
+ if(is_committed != is_committed2) TEST_ERROR
/* Compare the datatypes */
- if ( H5Tequal(tid, tid2) != TRUE) TEST_ERROR
+ if(H5Tequal(tid, tid2) != TRUE) TEST_ERROR
/* Determine the size of datatype (for later) */
- if ( (elmt_size = H5Tget_size(tid)) == 0) TEST_ERROR
+ if((elmt_size = H5Tget_size(tid)) == 0) TEST_ERROR
/* Check the dataspaces are equal */
/* Open the dataspace for the source attribute */
- if ( (sid = H5Aget_space(aid)) < 0) TEST_ERROR
+ if((sid = H5Aget_space(aid)) < 0) TEST_ERROR
/* Open the dataspace for the destination attribute */
- if ( (sid2 = H5Aget_space(aid2)) < 0) TEST_ERROR
+ if((sid2 = H5Aget_space(aid2)) < 0) TEST_ERROR
/* Compare the dataspaces */
- if ( H5Sextent_equal(sid, sid2) != TRUE) TEST_ERROR
+ if(H5Sextent_equal(sid, sid2) != TRUE) TEST_ERROR
/* Determine the number of elements in dataspace (for later) */
- if ( (nelmts = H5Sget_simple_extent_npoints(sid2)) < 0) TEST_ERROR
+ if((nelmts = H5Sget_simple_extent_npoints(sid2)) < 0) TEST_ERROR
/* Check the raw data is equal */
/* Allocate & initialize space for the raw data buffers */
- if ( (rbuf = HDcalloc( elmt_size, (size_t)nelmts)) == NULL) TEST_ERROR
- if ( (rbuf2 = HDcalloc( elmt_size, (size_t)nelmts)) == NULL) TEST_ERROR
+ if((rbuf = HDcalloc( elmt_size, (size_t)nelmts)) == NULL) TEST_ERROR
+ if((rbuf2 = HDcalloc( elmt_size, (size_t)nelmts)) == NULL) TEST_ERROR
/* Read data from the source attribute */
if(H5Aread(aid, tid, rbuf) < 0) TEST_ERROR
@@ -605,16 +613,16 @@ compare_attribute(hid_t aid, hid_t aid2, hid_t pid, const void *wbuf)
HDfree(rbuf2);
/* close the source dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close the destination dataspace */
- if ( H5Sclose(sid2) < 0) TEST_ERROR
+ if(H5Sclose(sid2) < 0) TEST_ERROR
/* close the source datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the destination datatype */
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
return TRUE;
@@ -908,57 +916,57 @@ compare_datasets(hid_t did, hid_t did2, hid_t pid, const void *wbuf)
/* Check the datatypes are equal */
/* Open the datatype for the source dataset */
- if ( (tid = H5Dget_type(did)) < 0) TEST_ERROR
+ if((tid = H5Dget_type(did)) < 0) TEST_ERROR
/* Open the datatype for the destination dataset */
- if ( (tid2 = H5Dget_type(did2)) < 0) TEST_ERROR
+ if((tid2 = H5Dget_type(did2)) < 0) TEST_ERROR
/* Check that both datatypes are committed/not committed */
- if ( (is_committed = H5Tcommitted(tid)) < 0) TEST_ERROR
- if ( (is_committed2 = H5Tcommitted(tid2)) < 0) TEST_ERROR
- if ( is_committed != is_committed2) TEST_ERROR
+ if((is_committed = H5Tcommitted(tid)) < 0) TEST_ERROR
+ if((is_committed2 = H5Tcommitted(tid2)) < 0) TEST_ERROR
+ if(is_committed != is_committed2) TEST_ERROR
/* Compare the datatypes */
- if ( H5Tequal(tid, tid2) != TRUE) TEST_ERROR
+ if(H5Tequal(tid, tid2) != TRUE) TEST_ERROR
/* Determine the size of datatype (for later) */
- if ( (elmt_size = H5Tget_size(tid)) == 0) TEST_ERROR
+ if((elmt_size = H5Tget_size(tid)) == 0) TEST_ERROR
/* Check the dataspaces are equal */
/* Open the dataspace for the source dataset */
- if ( (sid = H5Dget_space(did)) < 0) TEST_ERROR
+ if((sid = H5Dget_space(did)) < 0) TEST_ERROR
/* Open the dataspace for the destination dataset */
- if ( (sid2 = H5Dget_space(did2)) < 0) TEST_ERROR
+ if((sid2 = H5Dget_space(did2)) < 0) TEST_ERROR
/* Compare the dataspaces */
- if ( H5Sextent_equal(sid, sid2) != TRUE) TEST_ERROR
+ if(H5Sextent_equal(sid, sid2) != TRUE) TEST_ERROR
/* Determine the number of elements in dataspace (for later) */
- if ( (nelmts = H5Sget_simple_extent_npoints(sid)) < 0) TEST_ERROR
+ if((nelmts = H5Sget_simple_extent_npoints(sid)) < 0) TEST_ERROR
/* Check the dataset creation property lists are equal */
/* Open the dataset creation property list for the source dataset */
- if ( (dcpl = H5Dget_create_plist(did)) < 0) TEST_ERROR
+ if((dcpl = H5Dget_create_plist(did)) < 0) TEST_ERROR
/* Open the dataset creation property list for the destination dataset */
- if ( (dcpl2 = H5Dget_create_plist(did2)) < 0) TEST_ERROR
+ if((dcpl2 = H5Dget_create_plist(did2)) < 0) TEST_ERROR
/* Compare the dataset creation property lists */
- if ( H5Pequal(dcpl, dcpl2) != TRUE) TEST_ERROR
+ if(H5Pequal(dcpl, dcpl2) != TRUE) TEST_ERROR
/* Get the number of filters on dataset */
- if ( (nfilters = H5Pget_nfilters(dcpl)) < 0) TEST_ERROR
+ if((nfilters = H5Pget_nfilters(dcpl)) < 0) TEST_ERROR
/* close the source dataset creation property list */
- if ( H5Pclose(dcpl) < 0) TEST_ERROR
+ if(H5Pclose(dcpl) < 0) TEST_ERROR
/* close the destination dataset creation property list */
- if ( H5Pclose(dcpl2) < 0) TEST_ERROR
+ if(H5Pclose(dcpl2) < 0) TEST_ERROR
/* Check the allocated storage is the same */
@@ -974,7 +982,7 @@ compare_datasets(hid_t did, hid_t did2, hid_t pid, const void *wbuf)
* data in each dataset will (probably) be different and the storage
* size will thus vary)
*/
- if (!(nfilters > 0 && H5Tdetect_class(tid, H5T_VLEN))) {
+ if(!(nfilters > 0 && H5Tdetect_class(tid, H5T_VLEN))) {
hsize_t storage_size = H5Dget_storage_size(did); /* Dataset's raw data storage size */
hsize_t storage_size2 = H5Dget_storage_size(did2); /* 2nd Dataset's raw data storage size */
@@ -1011,20 +1019,20 @@ compare_datasets(hid_t did, hid_t did2, hid_t pid, const void *wbuf)
HDfree(rbuf2);
/* close the source dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close the destination dataspace */
- if ( H5Sclose(sid2) < 0) TEST_ERROR
+ if(H5Sclose(sid2) < 0) TEST_ERROR
/* close the source datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the destination datatype */
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* Check if the attributes are equal */
- if ( compare_std_attributes(did, did2, pid) != TRUE) TEST_ERROR
+ if(compare_std_attributes(did, did2, pid) != TRUE) TEST_ERROR
/* Datasets should be the same. :-) */
@@ -1099,8 +1107,8 @@ compare_groups(hid_t gid, hid_t gid2, hid_t pid, int depth)
/* Loop over contents of groups */
for(idx = 0; idx < num_objs; idx++) {
/* Check name of objects */
- if(H5Gget_objname_by_idx(gid, idx, objname, NAME_BUF_SIZE) < 0) TEST_ERROR
- if(H5Gget_objname_by_idx(gid2, idx, objname2, NAME_BUF_SIZE) < 0) TEST_ERROR
+ if(H5Gget_objname_by_idx(gid, idx, objname, (size_t)NAME_BUF_SIZE) < 0) TEST_ERROR
+ if(H5Gget_objname_by_idx(gid2, idx, objname2, (size_t)NAME_BUF_SIZE) < 0) TEST_ERROR
if(HDstrcmp(objname, objname2)) TEST_ERROR
/* Check type of objects */
@@ -1136,8 +1144,8 @@ compare_groups(hid_t gid, hid_t gid2, hid_t pid, int depth)
char linkname2[NAME_BUF_SIZE]; /* Link value */
/* Check link values */
- if(H5Lget_linkval(gid, objname, NAME_BUF_SIZE, linkname, H5P_DEFAULT) < 0) TEST_ERROR
- if(H5Lget_linkval(gid2, objname2, NAME_BUF_SIZE, linkname2, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lget_linkval(gid, objname, (size_t)NAME_BUF_SIZE, linkname, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lget_linkval(gid2, objname2, (size_t)NAME_BUF_SIZE, linkname2, H5P_DEFAULT) < 0) TEST_ERROR
if(HDstrcmp(linkname, linkname2)) TEST_ERROR
}
break;
@@ -1187,12 +1195,12 @@ compare_groups(hid_t gid, hid_t gid2, hid_t pid, int depth)
char linkval2[NAME_BUF_SIZE]; /* Link value */
/* Check that both links are the same type and the same size */
- if(linfo.linkclass != linfo2.linkclass) TEST_ERROR
+ if(linfo.type != linfo2.type) TEST_ERROR
if(linfo.u.link_size != linfo2.u.link_size) TEST_ERROR
/* Get link udata */
- if(H5Lget_linkval(gid, objname, NAME_BUF_SIZE, linkval, H5P_DEFAULT) < 0) TEST_ERROR
- if(H5Lget_linkval(gid2, objname2, NAME_BUF_SIZE, linkval2, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lget_linkval(gid, objname, (size_t)NAME_BUF_SIZE, linkval, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lget_linkval(gid2, objname2, (size_t)NAME_BUF_SIZE, linkval2, H5P_DEFAULT) < 0) TEST_ERROR
/* Compare link udata */
if(HDmemcmp(linkval, linkval2, objstat.linklen)) TEST_ERROR
@@ -1254,53 +1262,53 @@ test_copy_named_datatype(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create named datatype */
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the datatype from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATATYPE_SIMPLE, fid_dst, NAME_DATATYPE_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATATYPE_SIMPLE, fid_dst, NAME_DATATYPE_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the datatype for copy */
- if ( (tid = H5Topen(fid_src, NAME_DATATYPE_SIMPLE)) < 0) TEST_ERROR
+ if((tid = H5Topen(fid_src, NAME_DATATYPE_SIMPLE)) < 0) TEST_ERROR
/* open the copied datatype */
- if ( (tid2 = H5Topen(fid_dst, NAME_DATATYPE_SIMPLE)) < 0) TEST_ERROR
+ if((tid2 = H5Topen(fid_dst, NAME_DATATYPE_SIMPLE)) < 0) TEST_ERROR
/* Compare the datatypes */
- if ( H5Tequal(tid, tid2) != TRUE) TEST_ERROR
+ if(H5Tequal(tid, tid2) != TRUE) TEST_ERROR
/* close the destination datatype */
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close the source datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1347,53 +1355,53 @@ test_copy_named_datatype_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create named datatype */
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the datatype from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATATYPE_VL, fid_dst, NAME_DATATYPE_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATATYPE_VL, fid_dst, NAME_DATATYPE_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the datatype for copy */
- if ( (tid = H5Topen(fid_src, NAME_DATATYPE_VL)) < 0) TEST_ERROR
+ if((tid = H5Topen(fid_src, NAME_DATATYPE_VL)) < 0) TEST_ERROR
/* open the copied datatype */
- if ( (tid2 = H5Topen(fid_dst, NAME_DATATYPE_VL)) < 0) TEST_ERROR
+ if((tid2 = H5Topen(fid_dst, NAME_DATATYPE_VL)) < 0) TEST_ERROR
/* Compare the datatypes */
- if ( H5Tequal(tid, tid2) != TRUE) TEST_ERROR
+ if(H5Tequal(tid, tid2) != TRUE) TEST_ERROR
/* close the destination datatype */
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close the source datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1440,59 +1448,59 @@ test_copy_named_datatype_vl_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create first vlen datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create second (nested) vlen datatype */
- if ( (tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
+ if((tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
/* create named datatype */
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_VL_VL, tid2)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_VL_VL, tid2)) < 0) TEST_ERROR
/* close the first datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the second datatype */
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the datatype from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATATYPE_VL_VL, fid_dst, NAME_DATATYPE_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATATYPE_VL_VL, fid_dst, NAME_DATATYPE_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the datatype for copy */
- if ( (tid = H5Topen(fid_src, NAME_DATATYPE_VL_VL)) < 0) TEST_ERROR
+ if((tid = H5Topen(fid_src, NAME_DATATYPE_VL_VL)) < 0) TEST_ERROR
/* open the copied datatype */
- if ( (tid2 = H5Topen(fid_dst, NAME_DATATYPE_VL_VL)) < 0) TEST_ERROR
+ if((tid2 = H5Topen(fid_dst, NAME_DATATYPE_VL_VL)) < 0) TEST_ERROR
/* Compare the datatypes */
- if ( H5Tequal(tid, tid2) != TRUE) TEST_ERROR
+ if(H5Tequal(tid, tid2) != TRUE) TEST_ERROR
/* close the destination datatype */
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close the source datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1550,66 +1558,66 @@ test_copy_dataset_simple(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0] = DIM_SIZE_1;
dim2d[1] = DIM_SIZE_2;
/* create 2D dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create 2D int dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_SIMPLE, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_SIMPLE, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1660,63 +1668,63 @@ test_copy_dataset_simple_empty(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0] = DIM_SIZE_1;
dim2d[1] = DIM_SIZE_2;
/* create 2D dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create 2D int dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_SIMPLE, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_SIMPLE, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1780,73 +1788,73 @@ test_copy_dataset_compound(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0] = DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tcreate (H5T_COMPOUND, sizeof(comp_t))) < 0) TEST_ERROR
- if (H5Tinsert(tid, "int_name", HOFFSET(comp_t, a), H5T_NATIVE_INT) < 0) TEST_ERROR
- if (H5Tinsert(tid, "double_name", HOFFSET(comp_t, d), H5T_NATIVE_DOUBLE) < 0) TEST_ERROR
+ if((tid = H5Tcreate (H5T_COMPOUND, sizeof(comp_t))) < 0) TEST_ERROR
+ if(H5Tinsert(tid, "int_name", HOFFSET(comp_t, a), H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(H5Tinsert(tid, "double_name", HOFFSET(comp_t, d), H5T_NATIVE_DOUBLE) < 0) TEST_ERROR
/* create dataset */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_COMPOUND, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_COMPOUND, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if (H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_COMPOUND, fid_dst, NAME_DATASET_COMPOUND, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_COMPOUND, fid_dst, NAME_DATASET_COMPOUND, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_COMPOUND)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_COMPOUND)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_COMPOUND)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_COMPOUND)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1908,73 +1916,73 @@ test_copy_dataset_chunked(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create and set chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
/* create dataset */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
/* close chunk plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2028,70 +2036,70 @@ test_copy_dataset_chunked_empty(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create and set chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
/* create dataset */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
/* close chunk plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2154,7 +2162,7 @@ test_copy_dataset_chunked_sparse(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
@@ -2163,73 +2171,73 @@ test_copy_dataset_chunked_sparse(hid_t fapl)
max_dim2d[1]=H5S_UNLIMITED;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, max_dim2d)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, max_dim2d)) < 0) TEST_ERROR
/* create and set chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
/* create dataset */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
/* close chunk plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* Set extended dataset dimensions */
new_dim2d[0] = DIM_SIZE_1 * 2;
new_dim2d[1] = DIM_SIZE_2 * 2;
/* Extend dataset's dimensions */
- if ( H5Dextend(did, new_dim2d) < 0) TEST_ERROR
+ if(H5Dextend(did, new_dim2d) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2295,74 +2303,74 @@ test_copy_dataset_compressed(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create and set comp & chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
- if ( H5Pset_deflate(pid, 9) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
+ if(H5Pset_deflate(pid, 9) < 0) TEST_ERROR
/* create dataset */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
/* close chunk plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
#endif /* H5_HAVE_FILTER_DEFLATE */
@@ -2424,73 +2432,73 @@ test_copy_dataset_compact(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create and set compact plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_layout(pid, H5D_COMPACT) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_layout(pid, H5D_COMPACT) < 0) TEST_ERROR
/* create dataset */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_COMPACT, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_COMPACT, H5T_NATIVE_FLOAT, sid, pid)) < 0) TEST_ERROR
/* close chunk plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_COMPACT, fid_dst, NAME_DATASET_COMPACT, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_COMPACT, fid_dst, NAME_DATASET_COMPACT, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_COMPACT)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_COMPACT)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_COMPACT)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_COMPACT)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2554,43 +2562,43 @@ test_copy_dataset_external(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* set dataset creation plist */
size = DIM_SIZE_1 * sizeof (int);
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_external(pid, FILE_EXT, (off_t)0, size) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_external(pid, FILE_EXT, (off_t)0, size) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_EXTERNAL, H5T_NATIVE_INT, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_EXTERNAL, H5T_NATIVE_INT, sid, pid)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close external plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the dataset */
- if (H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Don't change the address in the destination file for this test, it causes the
* external file list's heap to be at a different location and generates a false
@@ -2599,32 +2607,32 @@ test_copy_dataset_external(hid_t fapl)
*/
#if 0
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
#endif /* 0 */
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_EXTERNAL, fid_dst, NAME_DATASET_EXTERNAL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_EXTERNAL, fid_dst, NAME_DATASET_EXTERNAL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_EXTERNAL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_EXTERNAL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_EXTERNAL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_EXTERNAL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2683,69 +2691,69 @@ test_copy_dataset_named_dtype(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create named datatype */
- if ( (tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
+ if((tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_NAMED_DTYPE, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_NAMED_DTYPE, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_NAMED_DTYPE, fid_dst, NAME_DATASET_NAMED_DTYPE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_NAMED_DTYPE, fid_dst, NAME_DATASET_NAMED_DTYPE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_NAMED_DTYPE)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_NAMED_DTYPE)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_NAMED_DTYPE)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_NAMED_DTYPE)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2805,84 +2813,84 @@ test_copy_dataset_named_dtype_hier(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group to place all objects in */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create named datatype _inside_ hierarchy to copy */
- if ( (tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
- if ( (H5Tcommit(gid, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
+ if((tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((H5Tcommit(gid, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
/* create first dataset at SRC file */
- if ( (did = H5Dcreate(gid, NAME_DATASET_NAMED_DTYPE, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(gid, NAME_DATASET_NAMED_DTYPE, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* create second dataset at SRC file */
- if ( (did = H5Dcreate(gid, NAME_DATASET_NAMED_DTYPE2, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(gid, NAME_DATASET_NAMED_DTYPE2, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2944,84 +2952,84 @@ test_copy_dataset_named_dtype_hier_outside(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group to place all objects in */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create named datatype _outside_ hierarchy to copy */
- if ( (tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
+ if((tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
/* create first dataset at SRC file */
- if ( (did = H5Dcreate(gid, NAME_DATASET_NAMED_DTYPE, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(gid, NAME_DATASET_NAMED_DTYPE, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* create second dataset at SRC file */
- if ( (did = H5Dcreate(gid, NAME_DATASET_NAMED_DTYPE2, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(gid, NAME_DATASET_NAMED_DTYPE2, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -3082,80 +3090,80 @@ test_copy_dataset_multi_ohdr_chunks(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group to place all objects in */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create first dataset at SRC file */
- if ( (did = H5Dcreate(gid, NAME_DATASET_MULTI_OHDR, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(gid, NAME_DATASET_MULTI_OHDR, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* create second dataset at SRC file */
- if ( (did2 = H5Dcreate(gid, NAME_DATASET_MULTI_OHDR2, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did2 = H5Dcreate(gid, NAME_DATASET_MULTI_OHDR2, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did2, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did2, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* Add attributes to datasets in a way that creates lots of chunks */
- if ( test_copy_attach_paired_attributes(did, did2, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_paired_attributes(did, did2, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the first dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the second dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -3216,87 +3224,87 @@ test_copy_dataset_attr_named_dtype(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group to place all objects in */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create named datatype _outside_ hierarchy to copy */
- if ( (tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
+ if((tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
/* create first dataset at SRC file */
- if ( (did = H5Dcreate(gid, NAME_DATASET_MULTI_OHDR, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(gid, NAME_DATASET_MULTI_OHDR, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* create second dataset at SRC file */
- if ( (did2 = H5Dcreate(gid, NAME_DATASET_MULTI_OHDR2, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did2 = H5Dcreate(gid, NAME_DATASET_MULTI_OHDR2, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did2, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did2, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* Add attributes to datasets in a way that creates lots of chunks */
- if ( test_copy_attach_paired_attributes(did, did2, tid) < 0) TEST_ERROR
+ if(test_copy_attach_paired_attributes(did, did2, tid) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the first dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the second dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -3361,72 +3369,72 @@ test_copy_dataset_contig_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -3492,79 +3500,79 @@ test_copy_dataset_chunked_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create and set chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
/* close chunk plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -3629,79 +3637,79 @@ test_copy_dataset_compact_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create and set compact plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_layout(pid, H5D_COMPACT) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_layout(pid, H5D_COMPACT) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close compact plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -3755,68 +3763,68 @@ test_copy_attribute_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0] = DIM_SIZE_1;
dim2d[1] = DIM_SIZE_2;
/* create 2D dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create 2D int dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach VL attribute to the dataset */
- if ( test_copy_attach_attribute_vl(did) < 0) TEST_ERROR
+ if(test_copy_attach_attribute_vl(did) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_SIMPLE, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_SIMPLE, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* Check if the attributes are equal */
- if ( (aid = H5Aopen_idx(did, 0)) < 0) TEST_ERROR
- if ( (aid2 = H5Aopen_idx(did2, 0)) < 0) TEST_ERROR
- if ( compare_attribute(aid, aid2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
- if ( H5Aclose(aid) < 0) TEST_ERROR
- if ( H5Aclose(aid2) < 0) TEST_ERROR
+ if((aid = H5Aopen_idx(did, 0)) < 0) TEST_ERROR
+ if((aid2 = H5Aopen_idx(did2, 0)) < 0) TEST_ERROR
+ if(compare_attribute(aid, aid2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
+ if(H5Aclose(aid) < 0) TEST_ERROR
+ if(H5Aclose(aid2) < 0) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -3890,80 +3898,80 @@ test_copy_dataset_compressed_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create and set comp & chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
- if ( H5Pset_deflate(pid, 9) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 2, chunk_dim2d) < 0) TEST_ERROR
+ if(H5Pset_deflate(pid, 9) < 0) TEST_ERROR
/* create dataset */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, tid, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_CHUNKED, tid, sid, pid)) < 0) TEST_ERROR
/* close chunk plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_CHUNKED, fid_dst, NAME_DATASET_CHUNKED, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_CHUNKED)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, NULL) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
#endif /* H5_HAVE_FILTER_DEFLATE */
@@ -4019,53 +4027,53 @@ test_copy_group_empty(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group at the SRC file */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_EMPTY, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_EMPTY, (size_t)0)) < 0) TEST_ERROR
/* attach attributes to the group */
- if ( test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the group from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_EMPTY, fid_dst, NAME_GROUP_EMPTY, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_EMPTY, fid_dst, NAME_GROUP_EMPTY, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_EMPTY)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_EMPTY)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_EMPTY)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_EMPTY)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4125,78 +4133,78 @@ test_copy_group(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group at the SRC file */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
/* attach attributes to the group */
- if ( test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* add a dataset to the group */
- if ( (did = H5Dcreate(fid_src, NAME_GROUP_DATASET, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_GROUP_DATASET, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close the dataset */
- if (H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* create a sub-group */
- if ( (gid_sub = H5Gcreate(fid_src, NAME_GROUP_SUB, (size_t)0)) < 0) TEST_ERROR
+ if((gid_sub = H5Gcreate(fid_src, NAME_GROUP_SUB, (size_t)0)) < 0) TEST_ERROR
if( H5Gclose(gid_sub) < 0) TEST_ERROR
/* create another sub-group */
- if ( (gid_sub = H5Gcreate(fid_src, NAME_GROUP_SUB_2, (size_t)0)) < 0) TEST_ERROR
+ if((gid_sub = H5Gcreate(fid_src, NAME_GROUP_SUB_2, (size_t)0)) < 0) TEST_ERROR
if( H5Gclose(gid_sub) < 0) TEST_ERROR
/* close the group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the group from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4391,87 +4399,87 @@ test_copy_group_deep(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group at the SRC file */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
/* attach attributes to the group */
- if ( test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create nested sub-groups & datasets */
for(i = 0; i < NUM_SUB_GROUPS; i++) {
sprintf(objname, "Group #%d", i);
- if ( (gid_sub = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
+ if((gid_sub = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
for(j = 0; j < NUM_SUB_GROUPS; j++) {
sprintf(objname, "Group #%d", j);
- if ( (gid_sub2 = H5Gcreate(gid_sub, objname, (size_t)0)) < 0) TEST_ERROR
+ if((gid_sub2 = H5Gcreate(gid_sub, objname, (size_t)0)) < 0) TEST_ERROR
for(k = 0; k < NUM_DATASETS; k++) {
sprintf(objname, "Dataset #%d", k);
/* add a dataset to the group */
- if ( (did = H5Dcreate(gid_sub2, objname, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if((did = H5Dcreate(gid_sub2, objname, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
} /* end for */
- if( H5Gclose(gid_sub2) < 0) TEST_ERROR
+ if(H5Gclose(gid_sub2) < 0) TEST_ERROR
} /* end for */
- if( H5Gclose(gid_sub) < 0) TEST_ERROR
+ if(H5Gclose(gid_sub) < 0) TEST_ERROR
} /* end for */
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close the group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the group from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4522,21 +4530,21 @@ test_copy_group_loop(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group at the SRC file */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
/* attach attributes to the group */
- if ( test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
/* create sub-groups */
- if ( (gid_sub = H5Gcreate(gid, NAME_GROUP_SUB, (size_t)0)) < 0) TEST_ERROR
+ if((gid_sub = H5Gcreate(gid, NAME_GROUP_SUB, (size_t)0)) < 0) TEST_ERROR
- if ( (gid_sub2 = H5Gcreate(gid, NAME_GROUP_SUB_SUB, (size_t)0)) < 0) TEST_ERROR
+ if((gid_sub2 = H5Gcreate(gid, NAME_GROUP_SUB_SUB, (size_t)0)) < 0) TEST_ERROR
/* Create link to top group */
- if ( H5Glink2(gid, ".", H5L_LINK_HARD, gid_sub2, NAME_GROUP_LOOP) < 0) TEST_ERROR
+ if(H5Glink2(gid, ".", H5L_TYPE_HARD, gid_sub2, NAME_GROUP_LOOP) < 0) TEST_ERROR
/* close sub sub group */
if( H5Gclose(gid_sub2) < 0) TEST_ERROR
@@ -4545,44 +4553,44 @@ test_copy_group_loop(hid_t fapl)
if( H5Gclose(gid_sub) < 0) TEST_ERROR
/* close the group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the group from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4639,31 +4647,31 @@ test_copy_group_wide_loop(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group at the SRC file */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
/* attach attributes to the group */
- if ( test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
/* create wide sub-group hierarchy, with multiple links to higher groups */
for(u = 0; u < NUM_WIDE_LOOP_GROUPS; u++) {
sprintf(objname, "%s-%u", NAME_GROUP_SUB, u);
- if ( (gid_sub = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
+ if((gid_sub = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
for(v = 0; v < NUM_WIDE_LOOP_GROUPS; v++) {
sprintf(objname, "%s-%u", NAME_GROUP_SUB_SUB2, v);
- if ( (gid_sub2 = H5Gcreate(gid_sub, objname, (size_t)0)) < 0) TEST_ERROR
+ if((gid_sub2 = H5Gcreate(gid_sub, objname, (size_t)0)) < 0) TEST_ERROR
/* Create link to top group */
- if ( H5Glink2(gid, ".", H5L_LINK_HARD, gid_sub2, NAME_GROUP_LOOP) < 0) TEST_ERROR
+ if(H5Glink2(gid, ".", H5L_TYPE_HARD, gid_sub2, NAME_GROUP_LOOP) < 0) TEST_ERROR
/* Create link to sub-group */
- if ( H5Glink2(gid_sub, ".", H5L_LINK_HARD, gid_sub2, NAME_GROUP_LOOP2) < 0) TEST_ERROR
+ if(H5Glink2(gid_sub, ".", H5L_TYPE_HARD, gid_sub2, NAME_GROUP_LOOP2) < 0) TEST_ERROR
/* Create link to self :-) */
- if ( H5Glink2(gid_sub2, ".", H5L_LINK_HARD, gid_sub2, NAME_GROUP_LOOP3) < 0) TEST_ERROR
+ if(H5Glink2(gid_sub2, ".", H5L_TYPE_HARD, gid_sub2, NAME_GROUP_LOOP3) < 0) TEST_ERROR
/* close sub sub group */
if( H5Gclose(gid_sub2) < 0) TEST_ERROR
@@ -4674,44 +4682,44 @@ test_copy_group_wide_loop(hid_t fapl)
} /* end for */
/* close the group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the group from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, NAME_GROUP_TOP, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_TOP)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4772,82 +4780,82 @@ test_copy_group_links(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group at the SRC file */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
/* attach attributes to the group */
- if ( test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* add a dataset to the group */
- if ( (did = H5Dcreate(fid_src, NAME_LINK_DATASET, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_LINK_DATASET, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close the dataset */
- if (H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* make a hard link to the dataset */
- if (H5Glink(fid_src, H5L_LINK_HARD, NAME_LINK_DATASET, NAME_LINK_HARD) < 0) TEST_ERROR
+ if(H5Glink(fid_src, H5L_TYPE_HARD, NAME_LINK_DATASET, NAME_LINK_HARD) < 0) TEST_ERROR
/* make a soft link to the dataset */
- if (H5Glink(fid_src, H5L_LINK_SOFT, NAME_LINK_DATASET, NAME_LINK_SOFT) < 0) TEST_ERROR
+ if(H5Glink(fid_src, H5L_TYPE_SOFT, NAME_LINK_DATASET, NAME_LINK_SOFT) < 0) TEST_ERROR
/* make a soft link to nowhere */
- if (H5Glink(fid_src, H5L_LINK_SOFT, "nowhere", NAME_LINK_SOFT_DANGLE) < 0) TEST_ERROR
+ if(H5Glink(fid_src, H5L_TYPE_SOFT, "nowhere", NAME_LINK_SOFT_DANGLE) < 0) TEST_ERROR
/* make a dangling external link */
- if (H5Lcreate_external("filename", "obj_name", fid_src, NAME_LINK_EXTERN, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external("filename", "obj_name", fid_src, NAME_LINK_EXTERN, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* close the group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the group from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_GROUP_LINK, fid_dst, NAME_GROUP_LINK, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_GROUP_LINK, fid_dst, NAME_GROUP_LINK, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the group for copy */
- if ( (gid = H5Gopen(fid_src, NAME_GROUP_LINK)) < 0) TEST_ERROR
+ if((gid = H5Gopen(fid_src, NAME_GROUP_LINK)) < 0) TEST_ERROR
/* open the destination group */
- if ( (gid2 = H5Gopen(fid_dst, NAME_GROUP_LINK)) < 0) TEST_ERROR
+ if((gid2 = H5Gopen(fid_dst, NAME_GROUP_LINK)) < 0) TEST_ERROR
/* Check if the groups are equal */
- if ( compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
+ if(compare_groups(gid, gid2, H5P_DEFAULT, -1) != TRUE) TEST_ERROR
/* close the destination group */
- if ( H5Gclose(gid2) < 0) TEST_ERROR
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* close the source group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -4907,73 +4915,73 @@ test_copy_soft_link(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group at the SRC file */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
/* attach attributes to the group */
- if ( test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* add a dataset to the group */
- if ( (did = H5Dcreate(fid_src, NAME_LINK_DATASET, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_LINK_DATASET, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close the dataset */
- if (H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* make a soft link to the dataset */
- if (H5Glink(fid_src, H5L_LINK_SOFT, NAME_LINK_DATASET, NAME_LINK_SOFT) < 0) TEST_ERROR
+ if(H5Glink(fid_src, H5L_TYPE_SOFT, NAME_LINK_DATASET, NAME_LINK_SOFT) < 0) TEST_ERROR
/* close the group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_LINK_SOFT, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_LINK_SOFT, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset through the soft link for copy */
- if ( (did = H5Dopen(fid_src, NAME_LINK_SOFT)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_LINK_SOFT)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -5034,80 +5042,80 @@ test_copy_ext_link(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group at the SRC file */
- if ( (gid = H5Gcreate(fid_src, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_src, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
/* attach attributes to the group */
- if ( test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(gid, H5T_NATIVE_INT) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0]=DIM_SIZE_1;
dim2d[1]=DIM_SIZE_2;
/* create dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* add a dataset to the group */
- if ( (did = H5Dcreate(fid_src, NAME_LINK_DATASET, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_LINK_DATASET, H5T_NATIVE_INT, sid, H5P_DEFAULT) ) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* close the dataset */
- if (H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the group */
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* create file to hold external links to the src file */
- if ( (fid_ext = H5Fcreate(ext_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_ext = H5Fcreate(ext_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create group in the file that will hold the external link */
- if ( (gid = H5Gcreate(fid_ext, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_ext, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
/* Create an external link to the dataset in the source file */
- if ( H5Lcreate_external(src_filename, NAME_LINK_DATASET, fid_ext, NAME_LINK_EXTERN, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Lcreate_external(src_filename, NAME_LINK_DATASET, fid_ext, NAME_LINK_EXTERN, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* close the group and file */
- if ( H5Gclose(gid) < 0) TEST_ERROR
- if (H5Fclose(fid_ext) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
+ if(H5Fclose(fid_ext) < 0) TEST_ERROR
/* open the "extern" file with read-only */
- if ( (fid_ext = H5Fopen(ext_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_ext = H5Fopen(ext_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_ext, NAME_LINK_EXTERN, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_ext, NAME_LINK_EXTERN, fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset through the external link */
- if ( (did = H5Dopen(fid_ext, NAME_LINK_EXTERN)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_ext, NAME_LINK_EXTERN)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the EXT file */
- if ( H5Fclose(fid_ext) < 0) TEST_ERROR
+ if(H5Fclose(fid_ext) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -5167,45 +5175,45 @@ test_copy_exist(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0] = DIM_SIZE_1;
dim2d[1] = DIM_SIZE_2;
/* create 2D dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create 2D int dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_SIMPLE,fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_SIMPLE,fid_dst, NAME_DATASET_SIMPLE, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* try to copy the dataset from SRC to DST again (should fail) */
H5E_BEGIN_TRY {
@@ -5214,10 +5222,10 @@ test_copy_exist(hid_t fapl)
if( ret >= 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -5276,42 +5284,42 @@ test_copy_path(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim2d[0] = DIM_SIZE_1;
dim2d[1] = DIM_SIZE_2;
/* create 2D dataspace */
- if ( (sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(2, dim2d, NULL)) < 0) TEST_ERROR
/* create 2D int dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_SIMPLE, H5T_NATIVE_INT, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
/* attach attributes to the dataset */
- if ( test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
+ if(test_copy_attach_attributes(did, H5T_NATIVE_INT) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST (should fail - intermediate groups not there) */
H5E_BEGIN_TRY {
@@ -5320,38 +5328,38 @@ test_copy_path(hid_t fapl)
if( ret >= 0) TEST_ERROR
/* Create the intermediate groups in destination file */
- if ( (gid = H5Gcreate(fid_dst, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_dst, NAME_GROUP_TOP, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
- if ( (gid = H5Gcreate(fid_dst, NAME_GROUP_SUB, (size_t)0)) < 0) TEST_ERROR
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_dst, NAME_GROUP_SUB, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
- if ( (gid = H5Gcreate(fid_dst, NAME_GROUP_SUB_SUB, (size_t)0)) < 0) TEST_ERROR
- if ( H5Gclose(gid) < 0) TEST_ERROR
+ if((gid = H5Gcreate(fid_dst, NAME_GROUP_SUB_SUB, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* copy the dataset from SRC to DST, using full path */
- if ( H5Gcopy(fid_src, NAME_DATASET_SIMPLE, fid_dst, NAME_DATASET_SUB_SUB, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_SIMPLE, fid_dst, NAME_DATASET_SUB_SUB, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_SIMPLE)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_SUB_SUB)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_SUB_SUB)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
PASSED();
return 0;
@@ -5398,32 +5406,32 @@ test_copy_same_file_named_datatype(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tcopy(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create named datatype */
- if ( (H5Tcommit(fid, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
+ if((H5Tcommit(fid, NAME_DATATYPE_SIMPLE, tid)) < 0) TEST_ERROR
/* copy the datatype from SRC to DST */
- if ( H5Gcopy(fid, NAME_DATATYPE_SIMPLE, fid, NAME_DATATYPE_SIMPLE2, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid, NAME_DATATYPE_SIMPLE, fid, NAME_DATATYPE_SIMPLE2, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the copied datatype */
- if ( (tid2 = H5Topen(fid, NAME_DATATYPE_SIMPLE2)) < 0) TEST_ERROR
+ if((tid2 = H5Topen(fid, NAME_DATATYPE_SIMPLE2)) < 0) TEST_ERROR
/* Compare the datatypes */
- if ( H5Tequal(tid, tid2) != TRUE) TEST_ERROR
+ if(H5Tequal(tid, tid2) != TRUE) TEST_ERROR
/* close the destination datatype */
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close the source datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the file */
- if ( H5Fclose(fid) < 0) TEST_ERROR
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -5508,88 +5516,88 @@ test_copy_dataset_compact_named_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* make a copy of the datatype for later use */
- if ( (tid_copy = H5Tcopy(tid)) < 0)TEST_ERROR
+ if((tid_copy = H5Tcopy(tid)) < 0)TEST_ERROR
/* named data type */
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
/* create and set compact plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_layout(pid, H5D_COMPACT) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_layout(pid, H5D_COMPACT) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close compact plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid_copy, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid_copy, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid_copy) < 0) TEST_ERROR
+ if(H5Tclose(tid_copy) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -5655,81 +5663,81 @@ test_copy_dataset_contig_named_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* make a copy of the datatype for later use */
- if ( (tid_copy = H5Tcopy(tid)) < 0)TEST_ERROR
+ if((tid_copy = H5Tcopy(tid)) < 0)TEST_ERROR
/* named data type */
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid_copy, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid_copy, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid_copy) < 0) TEST_ERROR
+ if(H5Tclose(tid_copy) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -5796,88 +5804,88 @@ test_copy_dataset_chunked_named_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* make a copy of the datatype for later use */
- if ( (tid_copy = H5Tcopy(tid)) < 0)TEST_ERROR
+ if((tid_copy = H5Tcopy(tid)) < 0)TEST_ERROR
/* named data type */
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
/* create and set chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close compact plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid_copy, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid_copy, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid_copy) < 0) TEST_ERROR
+ if(H5Tclose(tid_copy) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -5945,89 +5953,89 @@ test_copy_dataset_compressed_named_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* make a copy of the datatype for later use */
- if ( (tid_copy = H5Tcopy(tid)) < 0)TEST_ERROR
+ if((tid_copy = H5Tcopy(tid)) < 0)TEST_ERROR
/* named data type */
- if ( (H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
+ if((H5Tcommit(fid_src, NAME_DATATYPE_VL, tid)) < 0) TEST_ERROR
/* create and set chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
- if ( H5Pset_deflate(pid, 9) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
+ if(H5Pset_deflate(pid, 9) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL, tid, sid, pid)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close compact plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL, fid_dst, NAME_DATASET_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid_copy, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid_copy, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid_copy) < 0) TEST_ERROR
+ if(H5Tclose(tid_copy) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -6108,82 +6116,82 @@ test_copy_dataset_compact_vl_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create nested VL datatype */
- if ( (tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
+ if((tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
/* create and set compact plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_layout(pid, H5D_COMPACT) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_layout(pid, H5D_COMPACT) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL_VL, tid2, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL_VL, tid2, sid, pid)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid2, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid2, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close compact plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL_VL, fid_dst, NAME_DATASET_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL_VL, fid_dst, NAME_DATASET_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid2, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid2, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -6263,81 +6271,81 @@ test_copy_dataset_contig_vl_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create nested VL datatype */
- if ( (tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
+ if((tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
/* create and set compact plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL_VL, tid2, sid, H5P_DEFAULT)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL_VL, tid2, sid, H5P_DEFAULT)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid2, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid2, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close compact plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL_VL, fid_dst, NAME_DATASET_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL_VL, fid_dst, NAME_DATASET_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid2, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid2, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -6417,82 +6425,82 @@ test_copy_dataset_chunked_vl_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create nested VL datatype */
- if ( (tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
+ if((tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
/* create and set chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL_VL, tid2, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL_VL, tid2, sid, pid)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid2, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid2, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close compact plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL_VL, fid_dst, NAME_DATASET_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL_VL, fid_dst, NAME_DATASET_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid2, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid2, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -6573,83 +6581,83 @@ test_copy_dataset_compressed_vl_vl(hid_t fapl)
addr_reset();
/* create source file */
- if ( (fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fcreate(src_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Set dataspace dimensions */
dim1d[0]=DIM_SIZE_1;
/* create dataspace */
- if ( (sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
+ if((sid = H5Screate_simple(1, dim1d, NULL)) < 0) TEST_ERROR
/* create datatype */
- if ( (tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if((tid = H5Tvlen_create(H5T_NATIVE_INT)) < 0) TEST_ERROR
/* create nested VL datatype */
- if ( (tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
+ if((tid2 = H5Tvlen_create(tid)) < 0) TEST_ERROR
/* create and set chunk plist */
- if ( (pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
- if ( H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
- if ( H5Pset_deflate(pid, 9) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_chunk(pid, 1, chunk_dim1d) < 0) TEST_ERROR
+ if(H5Pset_deflate(pid, 9) < 0) TEST_ERROR
/* create dataset at SRC file */
- if ( (did = H5Dcreate(fid_src, NAME_DATASET_VL_VL, tid2, sid, pid)) < 0) TEST_ERROR
+ if((did = H5Dcreate(fid_src, NAME_DATASET_VL_VL, tid2, sid, pid)) < 0) TEST_ERROR
/* write data into file */
- if ( H5Dwrite(did, tid2, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dwrite(did, tid2, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close compact plist */
- if ( H5Pclose(pid) < 0) TEST_ERROR
+ if(H5Pclose(pid) < 0) TEST_ERROR
/* close the dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* open the source file with read-only */
- if ( (fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
+ if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* copy the dataset from SRC to DST */
- if ( H5Gcopy(fid_src, NAME_DATASET_VL_VL, fid_dst, NAME_DATASET_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+ if(H5Gcopy(fid_src, NAME_DATASET_VL_VL, fid_dst, NAME_DATASET_VL_VL, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* open the dataset for copy */
- if ( (did = H5Dopen(fid_src, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
+ if((did = H5Dopen(fid_src, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
/* open the destination dataset */
- if ( (did2 = H5Dopen(fid_dst, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
+ if((did2 = H5Dopen(fid_dst, NAME_DATASET_VL_VL)) < 0) TEST_ERROR
/* Check if the datasets are equal */
- if ( compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
+ if(compare_datasets(did, did2, H5P_DEFAULT, buf) != TRUE) TEST_ERROR
/* close the destination dataset */
- if ( H5Dclose(did2) < 0) TEST_ERROR
+ if(H5Dclose(did2) < 0) TEST_ERROR
/* close the source dataset */
- if ( H5Dclose(did) < 0) TEST_ERROR
+ if(H5Dclose(did) < 0) TEST_ERROR
/* close the SRC file */
- if ( H5Fclose(fid_src) < 0) TEST_ERROR
+ if(H5Fclose(fid_src) < 0) TEST_ERROR
/* close the DST file */
- if ( H5Fclose(fid_dst) < 0) TEST_ERROR
+ if(H5Fclose(fid_dst) < 0) TEST_ERROR
/* Reclaim vlen buffer */
- if ( H5Dvlen_reclaim(tid2, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
+ if(H5Dvlen_reclaim(tid2, sid, H5P_DEFAULT, buf) < 0) TEST_ERROR
/* close datatype */
- if ( H5Tclose(tid) < 0) TEST_ERROR
- if ( H5Tclose(tid2) < 0) TEST_ERROR
+ if(H5Tclose(tid) < 0) TEST_ERROR
+ if(H5Tclose(tid2) < 0) TEST_ERROR
/* close dataspace */
- if ( H5Sclose(sid) < 0) TEST_ERROR
+ if(H5Sclose(sid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -6768,14 +6776,14 @@ test_copy_option(hid_t fapl, unsigned flag, hbool_t crt_intermediate_grp, const
if((flag & H5G_COPY_EXPAND_SOFT_LINK_FLAG) > 0) {
/* Create group to copy */
if((gid = H5Gcreate(fid_src, NAME_GROUP_LINK, (size_t)0)) < 0) TEST_ERROR
- if(H5Glink(fid_src, H5L_LINK_SOFT, NAME_DATASET_SUB_SUB, NAME_LINK_SOFT) < 0) TEST_ERROR
- if(H5Glink(fid_src, H5L_LINK_SOFT, "nowhere", NAME_LINK_SOFT_DANGLE) < 0) TEST_ERROR
+ if(H5Glink(fid_src, H5L_TYPE_SOFT, NAME_DATASET_SUB_SUB, NAME_LINK_SOFT) < 0) TEST_ERROR
+ if(H5Glink(fid_src, H5L_TYPE_SOFT, "nowhere", NAME_LINK_SOFT_DANGLE) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
/* Create group to compare with */
if((gid = H5Gcreate(fid_src, NAME_GROUP_LINK2, (size_t)0)) < 0) TEST_ERROR
- if(H5Glink(fid_src, H5L_LINK_HARD, NAME_DATASET_SUB_SUB, NAME_LINK_SOFT2) < 0) TEST_ERROR
- if(H5Glink(fid_src, H5L_LINK_SOFT, "nowhere", NAME_LINK_SOFT_DANGLE2) < 0) TEST_ERROR
+ if(H5Glink(fid_src, H5L_TYPE_HARD, NAME_DATASET_SUB_SUB, NAME_LINK_SOFT2) < 0) TEST_ERROR
+ if(H5Glink(fid_src, H5L_TYPE_SOFT, "nowhere", NAME_LINK_SOFT_DANGLE2) < 0) TEST_ERROR
if(H5Gclose(gid) < 0) TEST_ERROR
} /* end if */
@@ -6804,29 +6812,27 @@ test_copy_option(hid_t fapl, unsigned flag, hbool_t crt_intermediate_grp, const
if((fid_src = H5Fopen(src_filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* create destination file */
- if ( (fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ if((fid_dst = H5Fcreate(dst_filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create an uncopied object in destination file so that addresses in source and destination
files aren't the same */
- if ( H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(H5Gcreate(fid_dst, NAME_GROUP_UNCOPIED, (size_t)0)) < 0) TEST_ERROR
/* create property to pass copy options */
- if ( (pid = H5Pcreate(H5P_OBJECT_COPY)) < 0) TEST_ERROR
+ if((pid = H5Pcreate(H5P_OBJECT_COPY)) < 0) TEST_ERROR
/* set options for object copy */
- if ( H5Pset_copy_object(pid, flag) < 0) TEST_ERROR
+ if(H5Pset_copy_object(pid, flag) < 0) TEST_ERROR
/* Verify object copy flags */
- if ( H5Pget_copy_object(pid, &cpy_flags) < 0) TEST_ERROR
- if ( cpy_flags != flag) TEST_ERROR
+ if(H5Pget_copy_object(pid, &cpy_flags) < 0) TEST_ERROR
+ if(cpy_flags != flag) TEST_ERROR
/* copy the group from SRC to DST */
if(crt_intermediate_grp) {
/* Create link creation plist to pass in intermediate group creation */
if((lcpl_id = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
-#ifdef H5_GROUP_REVISION
if(H5Pset_create_intermediate_group(lcpl_id, TRUE) < 0) TEST_ERROR
-#endif /* H5_GROUP_REVISION */
if(H5Gcopy(fid_src, NAME_GROUP_TOP, fid_dst, "/new_g0/new_g00", pid, lcpl_id) < 0) TEST_ERROR
@@ -6942,71 +6948,90 @@ main(void)
envval = "nomatch";
if(HDstrcmp(envval, "stdio") && HDstrcmp(envval, "core") && HDstrcmp(envval, "split") && HDstrcmp(envval, "multi") && HDstrcmp(envval, "family")) {
- int nerrors = 0;
- hid_t fapl;
+ int nerrors = 0;
+ hid_t fapl, fapl2;
+ hbool_t new_format;
/* Setup */
h5_reset();
fapl = h5_fileaccess();
- /* The tests... */
- nerrors += test_copy_named_datatype(fapl);
- nerrors += test_copy_named_datatype_vl(fapl);
- nerrors += test_copy_named_datatype_vl_vl(fapl);
- nerrors += test_copy_dataset_simple(fapl);
- nerrors += test_copy_dataset_simple_empty(fapl);
- nerrors += test_copy_dataset_compound(fapl);
- nerrors += test_copy_dataset_chunked(fapl);
- nerrors += test_copy_dataset_chunked_empty(fapl);
- nerrors += test_copy_dataset_chunked_sparse(fapl);
- nerrors += test_copy_dataset_compressed(fapl);
- nerrors += test_copy_dataset_compact(fapl);
- nerrors += test_copy_dataset_external(fapl);
- nerrors += test_copy_dataset_named_dtype(fapl);
- nerrors += test_copy_dataset_named_dtype_hier(fapl);
- nerrors += test_copy_dataset_named_dtype_hier_outside(fapl);
- nerrors += test_copy_dataset_multi_ohdr_chunks(fapl);
- nerrors += test_copy_dataset_attr_named_dtype(fapl);
- nerrors += test_copy_dataset_contig_vl(fapl);
- nerrors += test_copy_dataset_chunked_vl(fapl);
- nerrors += test_copy_dataset_compact_vl(fapl);
- nerrors += test_copy_dataset_compressed_vl(fapl);
- nerrors += test_copy_attribute_vl(fapl);
- nerrors += test_copy_dataset_compact_named_vl(fapl);
- nerrors += test_copy_dataset_contig_named_vl(fapl);
- nerrors += test_copy_dataset_chunked_named_vl(fapl);
- nerrors += test_copy_dataset_compressed_named_vl(fapl);
- nerrors += test_copy_dataset_compact_vl_vl(fapl);
- nerrors += test_copy_dataset_contig_vl_vl(fapl);
- nerrors += test_copy_dataset_chunked_vl_vl(fapl);
- nerrors += test_copy_dataset_compressed_vl_vl(fapl);
- nerrors += test_copy_group_empty(fapl);
- nerrors += test_copy_root_group(fapl);
- nerrors += test_copy_group(fapl);
- nerrors += test_copy_group_deep(fapl);
- nerrors += test_copy_group_loop(fapl);
- nerrors += test_copy_group_wide_loop(fapl);
- nerrors += test_copy_group_links(fapl);
- nerrors += test_copy_soft_link(fapl);
+ /* Copy the file access property list */
+ if((fapl2 = H5Pcopy(fapl)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl2, TRUE) < 0) TEST_ERROR
+
+ /* Test with old & new format groups */
+ for(new_format = FALSE; new_format <= TRUE; new_format++) {
+ hid_t my_fapl;
+
+ /* Set the FAPL for the type of format */
+ if(new_format) {
+ puts("\nTesting with new group format:");
+ my_fapl = fapl2;
+ } /* end if */
+ else {
+ puts("Testing with old group format:");
+ my_fapl = fapl;
+ } /* end else */
+
+ /* The tests... */
+ nerrors += test_copy_named_datatype(my_fapl);
+ nerrors += test_copy_named_datatype_vl(my_fapl);
+ nerrors += test_copy_named_datatype_vl_vl(my_fapl);
+ nerrors += test_copy_dataset_simple(my_fapl);
+ nerrors += test_copy_dataset_simple_empty(my_fapl);
+ nerrors += test_copy_dataset_compound(my_fapl);
+ nerrors += test_copy_dataset_chunked(my_fapl);
+ nerrors += test_copy_dataset_chunked_empty(my_fapl);
+ nerrors += test_copy_dataset_chunked_sparse(my_fapl);
+ nerrors += test_copy_dataset_compressed(my_fapl);
+ nerrors += test_copy_dataset_compact(my_fapl);
+ nerrors += test_copy_dataset_external(my_fapl);
+ nerrors += test_copy_dataset_named_dtype(my_fapl);
+ nerrors += test_copy_dataset_named_dtype_hier(my_fapl);
+ nerrors += test_copy_dataset_named_dtype_hier_outside(my_fapl);
+ nerrors += test_copy_dataset_multi_ohdr_chunks(my_fapl);
+ nerrors += test_copy_dataset_attr_named_dtype(my_fapl);
+ nerrors += test_copy_dataset_contig_vl(my_fapl);
+ nerrors += test_copy_dataset_chunked_vl(my_fapl);
+ nerrors += test_copy_dataset_compact_vl(my_fapl);
+ nerrors += test_copy_dataset_compressed_vl(my_fapl);
+ nerrors += test_copy_attribute_vl(my_fapl);
+ nerrors += test_copy_dataset_compact_named_vl(my_fapl);
+ nerrors += test_copy_dataset_contig_named_vl(my_fapl);
+ nerrors += test_copy_dataset_chunked_named_vl(my_fapl);
+ nerrors += test_copy_dataset_compressed_named_vl(my_fapl);
+ nerrors += test_copy_dataset_compact_vl_vl(my_fapl);
+ nerrors += test_copy_dataset_contig_vl_vl(my_fapl);
+ nerrors += test_copy_dataset_chunked_vl_vl(my_fapl);
+ nerrors += test_copy_dataset_compressed_vl_vl(my_fapl);
+ nerrors += test_copy_group_empty(my_fapl);
+ nerrors += test_copy_root_group(my_fapl);
+ nerrors += test_copy_group(my_fapl);
+ nerrors += test_copy_group_deep(my_fapl);
+ nerrors += test_copy_group_loop(my_fapl);
+ nerrors += test_copy_group_wide_loop(my_fapl);
+ nerrors += test_copy_group_links(my_fapl);
+ nerrors += test_copy_soft_link(my_fapl);
#ifndef H5_CANNOT_OPEN_TWICE
- nerrors += test_copy_ext_link(fapl);
+ nerrors += test_copy_ext_link(my_fapl);
#endif /* H5_CANNOT_OPEN_TWICE */
- nerrors += test_copy_exist(fapl);
- nerrors += test_copy_path(fapl);
- nerrors += test_copy_same_file_named_datatype(fapl);
- nerrors += test_copy_option(fapl, H5G_COPY_WITHOUT_ATTR_FLAG, FALSE, "H5Gcopy(): without attributes");
-#ifdef H5_GROUP_REVISION
- nerrors += test_copy_option(fapl, 0, TRUE, "H5Gcopy(): with missing groups");
-#endif
- nerrors += test_copy_option(fapl, H5G_COPY_EXPAND_SOFT_LINK_FLAG, FALSE, "H5Gcopy(): expand soft link");
- nerrors += test_copy_option(fapl, H5G_COPY_SHALLOW_HIERARCHY_FLAG, FALSE, "H5Gcopy(): shallow group copy");
- nerrors += test_copy_option(fapl, H5G_COPY_EXPAND_REFERENCE_FLAG, FALSE, "H5Gcopy(): expand object reference");
-
+ nerrors += test_copy_exist(my_fapl);
+ nerrors += test_copy_path(my_fapl);
+ nerrors += test_copy_same_file_named_datatype(my_fapl);
+ nerrors += test_copy_option(my_fapl, H5G_COPY_WITHOUT_ATTR_FLAG, FALSE, "H5Gcopy(): without attributes");
+ nerrors += test_copy_option(my_fapl, 0, TRUE, "H5Gcopy(): with missing groups");
+ nerrors += test_copy_option(my_fapl, H5G_COPY_EXPAND_SOFT_LINK_FLAG, FALSE, "H5Gcopy(): expand soft link");
+ nerrors += test_copy_option(my_fapl, H5G_COPY_SHALLOW_HIERARCHY_FLAG, FALSE, "H5Gcopy(): shallow group copy");
+ nerrors += test_copy_option(my_fapl, H5G_COPY_EXPAND_REFERENCE_FLAG, FALSE, "H5Gcopy(): expand object reference");
/* TODO: not implemented
- nerrors += test_copy_option(fapl, H5G_COPY_EXPAND_EXT_LINK_FLAG, FALSE, "H5Gcopy: expand external link");
- nerrors += test_copy_mount(fapl);
+ nerrors += test_copy_option(my_fapl, H5G_COPY_EXPAND_EXT_LINK_FLAG, FALSE, "H5Gcopy: expand external link");
+ nerrors += test_copy_mount(my_fapl);
*/
+ } /* end for */
/* Reset file address checking info */
addr_reset();
@@ -7026,5 +7051,8 @@ main(void)
puts("All object copying tests skipped - Incompatible with current Virtual File Driver");
return 0;
+
+error:
+ return 1;
} /* main */
diff --git a/test/stab.c b/test/stab.c
index b684f9e..59e2436 100644
--- a/test/stab.c
+++ b/test/stab.c
@@ -27,13 +27,18 @@
#include "H5HLprivate.h" /* Local Heaps */
const char *FILENAME[] = {
- "stab1",
- "stab2",
+ "stab",
NULL
};
#define NAME_BUF_SIZE 1024
+/* Definitions for 'long' test */
+#define LONG_NAME_LEN 40960
+
+/* Definitions for 'large' test */
+#define LARGE_NOBJS 5000
+
/* Definitions for 'lifecycle' test */
#define LIFECYCLE_TOP_GROUP "top"
#define LIFECYCLE_BOTTOM_GROUP "bottom %u"
@@ -80,54 +85,62 @@ const char *FILENAME[] = {
* Programmer: Robb Matzke
* Tuesday, November 24, 1998
*
- * Modifications:
- * Robb Matzke, 2002-03-28
- * File is opened by parent instead of here.
*-------------------------------------------------------------------------
*/
static int
-test_misc(hid_t file)
+test_misc(hid_t fapl, hbool_t new_format)
{
- hid_t g1=-1, g2=-1, g3=-1;
+ hid_t fid = (-1); /* File ID */
+ hid_t g1 = (-1), g2 = (-1), g3 = (-1);
+ char filename[NAME_BUF_SIZE];
char comment[64];
- /* Test current working groups */
- TESTING("miscellaneous group tests");
+ if(new_format)
+ TESTING("miscellaneous group tests (w/new group format)")
+ else
+ TESTING("miscellaneous group tests")
+
+ /* Create file */
+ h5_fixname(FILENAME[0], fapl, filename, sizeof(filename));
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create initial groups for testing, then close */
- if ((g1=H5Gcreate(file, "test_1a", 0))<0) goto error;
- if ((g2=H5Gcreate(g1, "sub_1", 0))<0) goto error;
- if ((g3=H5Gcreate(file, "test_1b", 0))<0) goto error;
- if (H5Gset_comment(g3, ".", "hello world")<0) goto error;
- if (H5Gclose(g1)<0) goto error;
- if (H5Gclose(g2)<0) goto error;
- if (H5Gclose(g3)<0) goto error;
+ if((g1 = H5Gcreate(fid, "test_1a", (size_t)0)) < 0) TEST_ERROR
+ if((g2 = H5Gcreate(g1, "sub_1", (size_t)0)) < 0) TEST_ERROR
+ if((g3 = H5Gcreate(fid, "test_1b", (size_t)0)) < 0) TEST_ERROR
+ if(H5Gset_comment(g3, ".", "hello world") < 0) TEST_ERROR
+ if(H5Gclose(g1) < 0) TEST_ERROR
+ if(H5Gclose(g2) < 0) TEST_ERROR
+ if(H5Gclose(g3) < 0) TEST_ERROR
/* Open all groups with absolute names to check for exsistence */
- if ((g1=H5Gopen(file, "/test_1a"))<0) goto error;
- if ((g2=H5Gopen(file, "/test_1a/sub_1"))<0) goto error;
- if ((g3=H5Gopen(file, "/test_1b"))<0) goto error;
- if (H5Gget_comment(g3, "././.", sizeof comment, comment)<0) goto error;
- if (strcmp(comment, "hello world")) {
+ if((g1 = H5Gopen(fid, "/test_1a")) < 0) TEST_ERROR
+ if((g2 = H5Gopen(fid, "/test_1a/sub_1")) < 0) TEST_ERROR
+ if((g3 = H5Gopen(fid, "/test_1b")) < 0) TEST_ERROR
+ if(H5Gget_comment(g3, "././.", sizeof comment, comment) < 0) TEST_ERROR
+ if(HDstrcmp(comment, "hello world")) {
H5_FAILED();
puts(" Read the wrong comment string from the group.");
printf(" got: \"%s\"\n ans: \"hello world\"\n", comment);
- goto error;
+ TEST_ERROR
}
- if (H5Gclose(g1)<0) goto error;
- if (H5Gclose(g2)<0) goto error;
- if (H5Gclose(g3)<0) goto error;
+ if(H5Gclose(g1) < 0) TEST_ERROR
+ if(H5Gclose(g2) < 0) TEST_ERROR
+ if(H5Gclose(g3) < 0) TEST_ERROR
/* Check that creating groups with no-op names isn't allowed */
H5E_BEGIN_TRY {
- g1=H5Gcreate(file, "/", 0);
+ g1 = H5Gcreate(fid, "/", (size_t)0);
} H5E_END_TRY
- if(g1 >= 0) goto error;
+ if(g1 >= 0) TEST_ERROR
H5E_BEGIN_TRY {
- g1=H5Gcreate(file, "./././", 0);
+ g1 = H5Gcreate(fid, "./././", (size_t)0);
} H5E_END_TRY
- if(g1 >= 0) goto error;
+ if(g1 >= 0) TEST_ERROR
+
+ /* Close file */
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -137,6 +150,7 @@ test_misc(hid_t file)
H5Gclose(g1);
H5Gclose(g2);
H5Gclose(g3);
+ H5Fclose(fid);
} H5E_END_TRY;
return 1;
}
@@ -155,33 +169,45 @@ test_misc(hid_t file)
*-------------------------------------------------------------------------
*/
static int
-test_long(hid_t file)
+test_long(hid_t fapl, hbool_t new_format)
{
- hid_t g1=-1, g2=-1;
- char *name1=NULL, *name2=NULL;
- size_t namesize=40960, i;
+ hid_t fid = (-1); /* File ID */
+ hid_t g1 = (-1), g2 = (-1);
+ char *name1 = NULL, *name2 = NULL;
+ char filename[NAME_BUF_SIZE];
+ size_t i;
- TESTING("long names");
+ if(new_format)
+ TESTING("long names (w/new group format)")
+ else
+ TESTING("long names")
+
+ /* Create file */
+ h5_fixname(FILENAME[0], fapl, filename, sizeof(filename));
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Group names */
- name1 = HDmalloc(namesize);
- for (i=0; i<namesize; i++)
+ name1 = HDmalloc(LONG_NAME_LEN);
+ for(i = 0; i < LONG_NAME_LEN; i++)
name1[i] = (char)('A' + i%26);
- name1[namesize-1] = '\0';
- name2 = HDmalloc(2*namesize + 2);
+ name1[LONG_NAME_LEN - 1] = '\0';
+ name2 = HDmalloc((2 * LONG_NAME_LEN) + 2);
sprintf(name2, "%s/%s", name1, name1);
/* Create groups */
- if ((g1=H5Gcreate(file, name1, 0))<0) goto error;
- if ((g2=H5Gcreate(g1, name1, 0))<0) goto error;
- H5Gclose(g1);
- H5Gclose(g2);
+ if((g1 = H5Gcreate(fid, name1, (size_t)0)) < 0) TEST_ERROR
+ if((g2 = H5Gcreate(g1, name1, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(g1) < 0) TEST_ERROR
+ if(H5Gclose(g2) < 0) TEST_ERROR
/* Open groups */
- if ((g1=H5Gopen(file, name1))<0) goto error;
- if ((g2=H5Gopen(file, name2))<0) goto error;
- H5Gclose(g1);
- H5Gclose(g2);
+ if((g1 = H5Gopen(fid, name1)) < 0) TEST_ERROR
+ if((g2 = H5Gopen(fid, name2)) < 0) TEST_ERROR
+ if(H5Gclose(g1) < 0) TEST_ERROR
+ if(H5Gclose(g2) < 0) TEST_ERROR
+
+ /* Close file */
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Release name buffers */
HDfree(name2);
@@ -190,17 +216,16 @@ test_long(hid_t file)
PASSED();
return 0;
- error:
+error:
H5E_BEGIN_TRY {
H5Gclose(g1);
H5Gclose(g2);
- if(name2)
- free(name2);
- if(name1)
- free(name1);
+ H5Fclose(fid);
+ H5MM_xfree(name2);
+ H5MM_xfree(name1);
} H5E_END_TRY;
return 1;
-}
+} /* end test_long() */
/*-------------------------------------------------------------------------
@@ -222,29 +247,41 @@ test_long(hid_t file)
*-------------------------------------------------------------------------
*/
static int
-test_large(hid_t file)
+test_large(hid_t fapl, hbool_t new_format)
{
- hid_t cwg=-1, dir=-1;
- int i;
- char name[1024];
- int nsyms = 5000;
+ hid_t fid = (-1); /* File ID */
+ hid_t cwg = (-1), dir = (-1); /* Group IDs */
+ char filename[NAME_BUF_SIZE];
+ char name[NAME_BUF_SIZE];
+ int i;
- TESTING("large directories");
+ if(new_format)
+ TESTING("large directories (w/new group format)")
+ else
+ TESTING("large directories")
+
+ /* Create file */
+ h5_fixname(FILENAME[0], fapl, filename, sizeof(filename));
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/*
* Create a directory that has so many entries that the root
* of the B-tree ends up splitting.
*/
- if ((cwg=H5Gcreate(file, "/big", (size_t)nsyms*16+2))<0) goto error;
- for (i=0; i<nsyms; i++) {
- sprintf(name, "%05d%05d", rand()%100000, i);
-#if 0
- fprintf(stderr, "%s\n", name);
-#endif
- if ((dir=H5Gcreate(cwg, name, 0))<0) goto error;
- if (H5Gclose(dir)<0) goto error;
+ if((cwg = H5Gcreate(fid, "/big", (size_t)(LARGE_NOBJS * 16 + 2))) < 0) TEST_ERROR
+ if(new_format)
+ if(H5G_has_stab_test(cwg) != FALSE) TEST_ERROR
+ for(i = 0; i < LARGE_NOBJS; i++) {
+ sprintf(name, "%05d%05d", (HDrandom() % 100000), i);
+ if((dir = H5Gcreate(cwg, name, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(dir) < 0) TEST_ERROR
}
- if (H5Gclose(cwg)<0) goto error;
+ if(new_format)
+ if(H5G_is_new_dense_test(cwg) != TRUE) TEST_ERROR
+ if(H5Gclose(cwg) < 0) TEST_ERROR
+
+ /* Close file */
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -253,11 +290,11 @@ test_large(hid_t file)
H5E_BEGIN_TRY {
H5Gclose(dir);
H5Gclose(cwg);
+ H5Fclose(fid);
} H5E_END_TRY;
return 1;
-}
+} /* end test_large() */
-#ifdef H5_GROUP_REVISION
/*-------------------------------------------------------------------------
* Function: lifecycle
@@ -282,6 +319,7 @@ lifecycle(hid_t fapl)
hid_t gid = (-1); /* Group ID */
hid_t gid2 = (-1); /* Datatype ID */
hid_t gcpl = (-1); /* Group creation property list ID */
+ hid_t fapl2 = (-1); /* File access property list ID */
size_t lheap_size_hint; /* Local heap size hint */
unsigned max_compact; /* Maximum # of links to store in group compactly */
unsigned min_dense; /* Minimum # of links to store in group "densely" */
@@ -297,68 +335,74 @@ lifecycle(hid_t fapl)
TESTING("group lifecycle");
+ /* Copy the file access property list */
+ if((fapl2 = H5Pcopy(fapl)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl2, TRUE) < 0) TEST_ERROR
+
/* Create file */
- h5_fixname(FILENAME[1], fapl, filename, sizeof(filename));
- if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR;
+ h5_fixname(FILENAME[0], fapl2, filename, sizeof(filename));
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl2)) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid) < 0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Get size of file as empty */
- if((empty_size = h5_get_file_size(filename)) == 0) TEST_ERROR;
+ if((empty_size = h5_get_file_size(filename)) == 0) TEST_ERROR
/* Re-open file */
- if((fid = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR;
+ if((fid = H5Fopen(filename, H5F_ACC_RDWR, fapl2)) < 0) TEST_ERROR
/* Set up group creation property list */
- if((gcpl = H5Pcreate(H5P_GROUP_CREATE)) < 0) TEST_ERROR;
+ if((gcpl = H5Pcreate(H5P_GROUP_CREATE)) < 0) TEST_ERROR
/* Query default group creation property settings */
- if(H5Pget_local_heap_size_hint(gcpl, &lheap_size_hint) < 0) TEST_ERROR;
- if(lheap_size_hint != H5G_CRT_GINFO_LHEAP_SIZE_HINT) TEST_ERROR;
- if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR;
- if(max_compact != H5G_CRT_GINFO_MAX_COMPACT) TEST_ERROR;
- if(min_dense != H5G_CRT_GINFO_MIN_DENSE) TEST_ERROR;
- if(H5Pget_est_link_info(gcpl, &est_num_entries, &est_name_len) < 0) TEST_ERROR;
- if(est_num_entries != H5G_CRT_GINFO_EST_NUM_ENTRIES) TEST_ERROR;
- if(est_name_len != H5G_CRT_GINFO_EST_NAME_LEN) TEST_ERROR;
+ if(H5Pget_local_heap_size_hint(gcpl, &lheap_size_hint) < 0) TEST_ERROR
+ if(lheap_size_hint != H5G_CRT_GINFO_LHEAP_SIZE_HINT) TEST_ERROR
+ if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR
+ if(max_compact != H5G_CRT_GINFO_MAX_COMPACT) TEST_ERROR
+ if(min_dense != H5G_CRT_GINFO_MIN_DENSE) TEST_ERROR
+ if(H5Pget_est_link_info(gcpl, &est_num_entries, &est_name_len) < 0) TEST_ERROR
+ if(est_num_entries != H5G_CRT_GINFO_EST_NUM_ENTRIES) TEST_ERROR
+ if(est_name_len != H5G_CRT_GINFO_EST_NAME_LEN) TEST_ERROR
/* Set GCPL parameters */
- if(H5Pset_local_heap_size_hint(gcpl, LIFECYCLE_LOCAL_HEAP_SIZE_HINT) < 0) TEST_ERROR;
- if(H5Pset_link_phase_change(gcpl, LIFECYCLE_MAX_COMPACT, LIFECYCLE_MIN_DENSE) < 0) TEST_ERROR;
- if(H5Pset_est_link_info(gcpl, LIFECYCLE_EST_NUM_ENTRIES, LIFECYCLE_EST_NAME_LEN) < 0) TEST_ERROR;
+ if(H5Pset_local_heap_size_hint(gcpl, (size_t)LIFECYCLE_LOCAL_HEAP_SIZE_HINT) < 0) TEST_ERROR
+ if(H5Pset_link_phase_change(gcpl, LIFECYCLE_MAX_COMPACT, LIFECYCLE_MIN_DENSE) < 0) TEST_ERROR
+ if(H5Pset_est_link_info(gcpl, LIFECYCLE_EST_NUM_ENTRIES, LIFECYCLE_EST_NAME_LEN) < 0) TEST_ERROR
/* Create group for testing lifecycle */
if((gid = H5Gcreate_expand(fid, gcpl, H5P_DEFAULT)) < 0) TEST_ERROR
if((H5Llink(fid, LIFECYCLE_TOP_GROUP, gid, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
/* Query group creation property settings */
- if(H5Pget_local_heap_size_hint(gcpl, &lheap_size_hint) < 0) TEST_ERROR;
- if(lheap_size_hint != LIFECYCLE_LOCAL_HEAP_SIZE_HINT) TEST_ERROR;
- if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR;
- if(max_compact != LIFECYCLE_MAX_COMPACT) TEST_ERROR;
- if(min_dense != LIFECYCLE_MIN_DENSE) TEST_ERROR;
- if(H5Pget_est_link_info(gcpl, &est_num_entries, &est_name_len) < 0) TEST_ERROR;
- if(est_num_entries != LIFECYCLE_EST_NUM_ENTRIES) TEST_ERROR;
- if(est_name_len != LIFECYCLE_EST_NAME_LEN) TEST_ERROR;
+ if(H5Pget_local_heap_size_hint(gcpl, &lheap_size_hint) < 0) TEST_ERROR
+ if(lheap_size_hint != LIFECYCLE_LOCAL_HEAP_SIZE_HINT) TEST_ERROR
+ if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR
+ if(max_compact != LIFECYCLE_MAX_COMPACT) TEST_ERROR
+ if(min_dense != LIFECYCLE_MIN_DENSE) TEST_ERROR
+ if(H5Pget_est_link_info(gcpl, &est_num_entries, &est_name_len) < 0) TEST_ERROR
+ if(est_num_entries != LIFECYCLE_EST_NUM_ENTRIES) TEST_ERROR
+ if(est_name_len != LIFECYCLE_EST_NAME_LEN) TEST_ERROR
/* Use internal testing routine to check that the group has no links or symbol table */
- if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR
/* Create first "bottom" group */
sprintf(objname, LIFECYCLE_BOTTOM_GROUP, (unsigned)0);
if((gid2 = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
/* Check on bottom group's status */
- if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR
/* Close bottom group */
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Check on top group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR;
- if(nmsgs != 1) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR
+ if(nmsgs != 1) TEST_ERROR
/* Create several more bottom groups, to push the top group almost to a symbol table */
/* (Start counting at '1', since we've already created one bottom group */
@@ -367,55 +411,54 @@ lifecycle(hid_t fapl)
if((gid2 = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
/* Check on bottom group's status */
- if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR
/* Close bottom group */
if(H5Gclose(gid2) < 0) TEST_ERROR
} /* end for */
/* Check on top group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR;
- if(nmsgs != LIFECYCLE_MAX_COMPACT) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR
+ if(nmsgs != LIFECYCLE_MAX_COMPACT) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != FALSE) TEST_ERROR
/* Check that the object header is only one chunk and the space has been allocated correctly */
- if(H5Gget_objinfo(gid, ".", FALSE, &obj_stat) < 0) TEST_ERROR;
+ if(H5Gget_objinfo(gid, ".", FALSE, &obj_stat) < 0) TEST_ERROR
#ifdef H5_HAVE_LARGE_HSIZET
- if(obj_stat.ohdr.size != 232) TEST_ERROR;
+ if(obj_stat.ohdr.size != 240) TEST_ERROR
#else /* H5_HAVE_LARGE_HSIZET */
- if(obj_stat.ohdr.size != 224) TEST_ERROR;
+ if(obj_stat.ohdr.size != 232) TEST_ERROR
#endif /* H5_HAVE_LARGE_HSIZET */
- if(obj_stat.ohdr.free != 0) TEST_ERROR;
- if(obj_stat.ohdr.nmesgs != 6) TEST_ERROR;
- if(obj_stat.ohdr.nchunks != 1) TEST_ERROR;
+ if(obj_stat.ohdr.free != 0) TEST_ERROR
+ if(obj_stat.ohdr.nmesgs != 6) TEST_ERROR
+ if(obj_stat.ohdr.nchunks != 1) TEST_ERROR
/* Create one more "bottom" group, which should push top group into using a symbol table */
sprintf(objname, LIFECYCLE_BOTTOM_GROUP, u);
if((gid2 = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
/* Check on bottom group's status */
- if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR
/* Close bottom group */
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Check on top group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR;
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR;
- if(H5G_lheap_size_test(gid, &lheap_size_hint) < 0) TEST_ERROR;
- if(lheap_size_hint != LIFECYCLE_LOCAL_HEAP_SIZE_HINT) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Check that the object header is still one chunk and the space has been allocated correctly */
- if(H5Gget_objinfo(gid, ".", FALSE, &obj_stat) < 0) TEST_ERROR;
+ if(H5Gget_objinfo(gid, ".", FALSE, &obj_stat) < 0) TEST_ERROR
#ifdef H5_HAVE_LARGE_HSIZET
- if(obj_stat.ohdr.size != 232) TEST_ERROR;
+ if(obj_stat.ohdr.size != 240) TEST_ERROR
#else /* H5_HAVE_LARGE_HSIZET */
- if(obj_stat.ohdr.size != 224) TEST_ERROR;
+ if(obj_stat.ohdr.size != 232) TEST_ERROR
#endif /* H5_HAVE_LARGE_HSIZET */
- if(obj_stat.ohdr.free != 136) TEST_ERROR;
- if(obj_stat.ohdr.nmesgs != 4) TEST_ERROR;
- if(obj_stat.ohdr.nchunks != 1) TEST_ERROR;
+ if(obj_stat.ohdr.free != 128) TEST_ERROR
+ if(obj_stat.ohdr.nmesgs != 3) TEST_ERROR
+ if(obj_stat.ohdr.nchunks != 1) TEST_ERROR
/* Unlink objects from top group */
while(u >= LIFECYCLE_MIN_DENSE) {
@@ -427,9 +470,9 @@ lifecycle(hid_t fapl)
} /* end while */
/* Check on top group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR;
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Unlink one more object from the group, which should transform back to using links */
sprintf(objname, LIFECYCLE_BOTTOM_GROUP, u);
@@ -437,9 +480,9 @@ lifecycle(hid_t fapl)
u--;
/* Check on top group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR;
- if(nmsgs != (LIFECYCLE_MIN_DENSE - 1)) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, &nmsgs) != TRUE) TEST_ERROR
+ if(nmsgs != (LIFECYCLE_MIN_DENSE - 1)) TEST_ERROR
/* Unlink last two objects from top group */
sprintf(objname, LIFECYCLE_BOTTOM_GROUP, u);
@@ -449,25 +492,28 @@ lifecycle(hid_t fapl)
if(H5Gunlink(gid, objname) < 0) TEST_ERROR
/* Check on top group's status */
- if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR
/* Close top group */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Unlink top group */
if(H5Gunlink(fid, LIFECYCLE_TOP_GROUP) < 0) TEST_ERROR
/* Close GCPL */
- if(H5Pclose(gcpl) < 0) TEST_ERROR;
+ if(H5Pclose(gcpl) < 0) TEST_ERROR
+
+ /* Close FAPL copy */
+ if(H5Pclose(fapl2) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid) < 0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Get size of file as empty */
- if((file_size = h5_get_file_size(filename)) == 0) TEST_ERROR;
+ if((file_size = h5_get_file_size(filename)) == 0) TEST_ERROR
/* Verify that file is correct size */
- if(file_size != empty_size) TEST_ERROR;
+ if(file_size != empty_size) TEST_ERROR
PASSED();
@@ -475,6 +521,7 @@ lifecycle(hid_t fapl)
error:
H5E_BEGIN_TRY {
+ H5Pclose(fapl2);
H5Gclose(gcpl);
H5Gclose(gid2);
H5Gclose(gid);
@@ -505,6 +552,7 @@ long_compact(hid_t fapl)
hid_t fid = (-1); /* File ID */
hid_t gid = (-1); /* Group ID */
hid_t gid2 = (-1); /* Group ID */
+ hid_t fapl2 = (-1); /* File access property list ID */
char *objname; /* Object name */
char filename[NAME_BUF_SIZE];
off_t empty_size; /* Size of an empty file */
@@ -512,9 +560,15 @@ long_compact(hid_t fapl)
TESTING("long link names in compact groups");
+ /* Copy the file access property list */
+ if((fapl2 = H5Pcopy(fapl)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl2, TRUE) < 0) TEST_ERROR
+
/* Create file */
- h5_fixname(FILENAME[1], fapl, filename, sizeof(filename));
- if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
+ h5_fixname(FILENAME[0], fapl2, filename, sizeof(filename));
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl2)) < 0) TEST_ERROR
/* Close file */
if(H5Fclose(fid) < 0) TEST_ERROR
@@ -523,17 +577,17 @@ long_compact(hid_t fapl)
if((empty_size = h5_get_file_size(filename)) == 0) TEST_ERROR
/* Construct very long object name template */
- if((objname = HDmalloc(LONG_COMPACT_LENGTH+1)) == NULL) TEST_ERROR
- HDmemset(objname, 'a', LONG_COMPACT_LENGTH);
+ if((objname = HDmalloc((size_t)(LONG_COMPACT_LENGTH + 1))) == NULL) TEST_ERROR
+ HDmemset(objname, 'a', (size_t)LONG_COMPACT_LENGTH);
objname[LONG_COMPACT_LENGTH] = '\0';
/* Re-open file */
- if((fid = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
+ if((fid = H5Fopen(filename, H5F_ACC_RDWR, fapl2)) < 0) TEST_ERROR
/* Create top group */
if((gid = H5Gcreate(fid, "top", (size_t)0)) < 0) TEST_ERROR
- /* Use internal testing routine to check that the group has no links or symbol table */
+ /* Use internal testing routine to check that the group has no links or dense storage */
if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR
/* Create first group with "long" name */
@@ -546,43 +600,43 @@ long_compact(hid_t fapl)
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Check on top group's status */
- /* (Should have symbol table to hold links, since name is too long for object header message) */
+ /* (Should have dense storage to hold links, since name is too long for object header message) */
if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Create second group with "long" name */
objname[0] = 'b';
if((gid2 = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
/* Check on bottom group's status */
- if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR
/* Close bottom group */
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Check on top group's status */
- /* (Should have symbol table to hold links, since name is too long for object header message) */
+ /* (Should have dense storage to hold links, since name is too long for object header message) */
if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Unlink second object from top group */
if(H5Gunlink(gid, objname) < 0) TEST_ERROR
/* Check on top group's status */
- /* (Should still be symbol table to hold links, since name is too long for object header message) */
+ /* (Should still be dense storage to hold links, since name is too long for object header message) */
if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Unlink first object from top group */
objname[0] = 'a';
if(H5Gunlink(gid, objname) < 0) TEST_ERROR
/* Check on top group's status */
- /* (Should have deleted the symbol table now) */
- if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR;
+ /* (Should have deleted the dense storage now) */
+ if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR
/* Free object name */
HDfree(objname);
@@ -593,20 +647,24 @@ long_compact(hid_t fapl)
/* Unlink top group */
if(H5Gunlink(fid, "top") < 0) TEST_ERROR
+ /* Close FAPL copy */
+ if(H5Pclose(fapl2) < 0) TEST_ERROR
+
/* Close file */
if(H5Fclose(fid) < 0) TEST_ERROR
/* Get size of file as empty */
- if((file_size = h5_get_file_size(filename)) == 0) TEST_ERROR;
+ if((file_size = h5_get_file_size(filename)) == 0) TEST_ERROR
/* Verify that file is correct size */
- if(file_size != empty_size) TEST_ERROR;
+ if(file_size != empty_size) TEST_ERROR
PASSED();
return 0;
error:
H5E_BEGIN_TRY {
+ H5Pclose(fapl2);
H5Gclose(gid2);
H5Gclose(gid);
H5Fclose(fid);
@@ -641,7 +699,7 @@ read_old(hid_t fapl)
char objname[NAME_BUF_SIZE]; /* Object name */
unsigned u; /* Local index variable */
char *srcdir = HDgetenv("srcdir"); /* where the src code is located */
- char filename[512]=""; /* old test file name */
+ char filename[512] = ""; /* old test file name */
char filename2[NAME_BUF_SIZE]; /* copy of old test file */
TESTING("reading old groups");
@@ -654,7 +712,7 @@ read_old(hid_t fapl)
HDstrcat(filename, FILE_OLD_GROUPS);
/* Create filename */
- h5_fixname(FILENAME[1], fapl, filename2, sizeof(filename2));
+ h5_fixname(FILENAME[0], fapl, filename2, sizeof(filename2));
/* Copy old file into temporary file */
if((fd_old = HDopen(filename, O_RDONLY, 0666)) < 0) TEST_ERROR
@@ -676,7 +734,7 @@ read_old(hid_t fapl)
if((gid = H5Gopen(fid, "old")) < 0) TEST_ERROR
/* Check on old group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_is_empty_test(gid) == FALSE) TEST_ERROR
if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR
@@ -705,16 +763,16 @@ read_old(hid_t fapl)
} /* end for */
/* Check on old group's status */
- /* (Should stay in old "symbol table" form) */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ /* (Should stay in old "symbol table" form, but have no links) */
+ if(H5G_is_empty_test(gid) == FALSE) TEST_ERROR
if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR
/* Close old group */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Close first file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid)<0) TEST_ERROR
PASSED();
return 0;
@@ -750,93 +808,95 @@ no_compact(hid_t fapl)
hid_t gid = (-1); /* Group ID */
hid_t gid2 = (-1); /* Datatype ID */
hid_t gcpl = (-1); /* Group creation property list ID */
+ hid_t fapl2 = (-1); /* File access property list ID */
char objname[NAME_BUF_SIZE]; /* Object name */
char filename[NAME_BUF_SIZE];
off_t empty_size; /* Size of an empty file */
off_t file_size; /* Size of each file created */
- size_t lheap_size_hint; /* Local heap size */
- size_t def_lheap_size; /* Default local heap size */
unsigned est_num_entries; /* Estimated # of entries in group */
unsigned est_name_len; /* Estimated length of entry name */
TESTING("group without compact form");
+ /* Copy the file access property list */
+ if((fapl2 = H5Pcopy(fapl)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl2, TRUE) < 0) TEST_ERROR
+
/* Create file */
- h5_fixname(FILENAME[1], fapl, filename, sizeof(filename));
- if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR;
+ h5_fixname(FILENAME[0], fapl2, filename, sizeof(filename));
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl2)) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid) < 0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Get size of file as empty */
- if((empty_size = h5_get_file_size(filename)) == 0) TEST_ERROR;
+ if((empty_size = h5_get_file_size(filename)) == 0) TEST_ERROR
/* Re-open file */
- if((fid = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR;
+ if((fid = H5Fopen(filename, H5F_ACC_RDWR, fapl2)) < 0) TEST_ERROR
/* Set up group creation property list */
- if((gcpl = H5Pcreate(H5P_GROUP_CREATE)) < 0) TEST_ERROR;
+ if((gcpl = H5Pcreate(H5P_GROUP_CREATE)) < 0) TEST_ERROR
/* Set GCPL parameters */
- if(H5Pset_link_phase_change(gcpl, NO_COMPACT_MAX_COMPACT, NO_COMPACT_MIN_DENSE) < 0) TEST_ERROR;
+ if(H5Pset_link_phase_change(gcpl, NO_COMPACT_MAX_COMPACT, NO_COMPACT_MIN_DENSE) < 0) TEST_ERROR
- /* Check information for default local heap creation */
- if(H5Pget_local_heap_size_hint(gcpl, &lheap_size_hint) < 0) TEST_ERROR;
- if(lheap_size_hint != H5G_CRT_GINFO_LHEAP_SIZE_HINT) TEST_ERROR;
- if(H5Pget_est_link_info(gcpl, &est_num_entries, &est_name_len) < 0) TEST_ERROR;
- if(est_num_entries != H5G_CRT_GINFO_EST_NUM_ENTRIES) TEST_ERROR;
- if(est_name_len != H5G_CRT_GINFO_EST_NAME_LEN) TEST_ERROR;
+ /* Check information for default group creation */
+ if(H5Pget_est_link_info(gcpl, &est_num_entries, &est_name_len) < 0) TEST_ERROR
+ if(est_num_entries != H5G_CRT_GINFO_EST_NUM_ENTRIES) TEST_ERROR
+ if(est_name_len != H5G_CRT_GINFO_EST_NAME_LEN) TEST_ERROR
- /* Create group for testing lifecycle */
+ /* Create group for testing no compact form */
if((gid = H5Gcreate_expand(fid, gcpl, H5P_DEFAULT)) < 0) TEST_ERROR
if((H5Llink(fid, NO_COMPACT_TOP_GROUP, gid, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
/* Close GCPL */
- if(H5Pclose(gcpl) < 0) TEST_ERROR;
+ if(H5Pclose(gcpl) < 0) TEST_ERROR
- /* Use internal testing routine to check that the group has no links or symbol table */
- if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR;
+ /* Use internal testing routine to check that the group has no links or dense storage */
+ if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR
/* Create first "bottom" group */
sprintf(objname, NO_COMPACT_BOTTOM_GROUP, (unsigned)0);
if((gid2 = H5Gcreate(gid, objname, (size_t)0)) < 0) TEST_ERROR
/* Check on bottom group's status */
- if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid2) != TRUE) TEST_ERROR
/* Close bottom group */
if(H5Gclose(gid2) < 0) TEST_ERROR
/* Check on top group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR;
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR;
- if(H5G_lheap_size_test(gid, &lheap_size_hint) < 0) TEST_ERROR;
- def_lheap_size = est_num_entries * (est_name_len + 1);
- def_lheap_size = H5HL_ALIGN(def_lheap_size);
- if(lheap_size_hint != def_lheap_size) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Unlink object from top group */
sprintf(objname, NO_COMPACT_BOTTOM_GROUP, (unsigned)0);
if(H5Gunlink(gid, objname) < 0) TEST_ERROR
/* Check on top group's status */
- if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) != TRUE) TEST_ERROR
/* Close top group */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Unlink top group */
if(H5Gunlink(fid, NO_COMPACT_TOP_GROUP) < 0) TEST_ERROR
+ /* Close FAPL copy */
+ if(H5Pclose(fapl2) < 0) TEST_ERROR
+
/* Close file */
- if(H5Fclose(fid) < 0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
/* Get size of file as empty */
- if((file_size = h5_get_file_size(filename)) == 0) TEST_ERROR;
+ if((file_size = h5_get_file_size(filename)) == 0) TEST_ERROR
/* Verify that file is correct size */
- if(file_size != empty_size) TEST_ERROR;
+ if(file_size != empty_size) TEST_ERROR
PASSED();
@@ -844,6 +904,7 @@ no_compact(hid_t fapl)
error:
H5E_BEGIN_TRY {
+ H5Pclose(fapl2);
H5Gclose(gcpl);
H5Gclose(gid2);
H5Gclose(gid);
@@ -874,6 +935,7 @@ gcpl_on_root(hid_t fapl)
hid_t gid = (-1); /* Group ID */
hid_t gid2 = (-1); /* Datatype ID */
hid_t fcpl = (-1); /* File creation property list ID */
+ hid_t fapl2 = (-1); /* File access property list ID */
hid_t gcpl = (-1); /* Group creation property list ID */
hid_t lcpl = (-1); /* Link creation property list ID */
unsigned max_compact; /* Maximum # of links to store in group compactly */
@@ -882,40 +944,46 @@ gcpl_on_root(hid_t fapl)
TESTING("setting root group creation properties");
+ /* Copy the file access property list */
+ if((fapl2 = H5Pcopy(fapl)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl2, TRUE) < 0) TEST_ERROR
+
/* Create file */
- h5_fixname(FILENAME[1], fapl, filename, sizeof(filename));
+ h5_fixname(FILENAME[0], fapl2, filename, sizeof(filename));
/* Set up file creation property list */
- if((fcpl = H5Pcreate(H5P_FILE_CREATE)) < 0) TEST_ERROR;
+ if((fcpl = H5Pcreate(H5P_FILE_CREATE)) < 0) TEST_ERROR
/* Set GCPL parameters */
- if(H5Pset_link_phase_change(fcpl, GCPL_ON_ROOT_MAX_COMPACT, GCPL_ON_ROOT_MIN_DENSE) < 0) TEST_ERROR;
+ if(H5Pset_link_phase_change(fcpl, GCPL_ON_ROOT_MAX_COMPACT, GCPL_ON_ROOT_MIN_DENSE) < 0) TEST_ERROR
/* Query the group creation properties from the FCPL */
- if(H5Pget_link_phase_change(fcpl, &max_compact, &min_dense) < 0) TEST_ERROR;
- if(max_compact != GCPL_ON_ROOT_MAX_COMPACT) TEST_ERROR;
- if(min_dense != GCPL_ON_ROOT_MIN_DENSE) TEST_ERROR;
+ if(H5Pget_link_phase_change(fcpl, &max_compact, &min_dense) < 0) TEST_ERROR
+ if(max_compact != GCPL_ON_ROOT_MAX_COMPACT) TEST_ERROR
+ if(min_dense != GCPL_ON_ROOT_MIN_DENSE) TEST_ERROR
/* Create file with modified root group creation properties */
- if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, fcpl, fapl)) < 0) TEST_ERROR;
+ if((fid = H5Fcreate(filename, H5F_ACC_TRUNC, fcpl, fapl2)) < 0) TEST_ERROR
/* Close FCPL */
- if(H5Pclose(fcpl) < 0) TEST_ERROR;
+ if(H5Pclose(fcpl) < 0) TEST_ERROR
/* Open the root group */
- if((gid = H5Gopen(fid, "/")) < 0) TEST_ERROR;
+ if((gid = H5Gopen(fid, "/")) < 0) TEST_ERROR
/* Query the group creation properties */
- if((gcpl = H5Gget_create_plist(gid)) < 0) TEST_ERROR;
- if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR;
- if(max_compact != GCPL_ON_ROOT_MAX_COMPACT) TEST_ERROR;
- if(min_dense != GCPL_ON_ROOT_MIN_DENSE) TEST_ERROR;
+ if((gcpl = H5Gget_create_plist(gid)) < 0) TEST_ERROR
+ if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR
+ if(max_compact != GCPL_ON_ROOT_MAX_COMPACT) TEST_ERROR
+ if(min_dense != GCPL_ON_ROOT_MIN_DENSE) TEST_ERROR
/* Close GCPL */
- if(H5Pclose(gcpl) < 0) TEST_ERROR;
+ if(H5Pclose(gcpl) < 0) TEST_ERROR
/* Create a link creation property list, with intermediate group creation set */
- if((lcpl = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR;
+ if((lcpl = H5Pcreate(H5P_LINK_CREATE)) < 0) TEST_ERROR
if(H5Pset_create_intermediate_group(lcpl, TRUE) < 0) TEST_ERROR
/* Create a group and intermediate groups, to check if root group settings are inherited */
@@ -923,40 +991,43 @@ gcpl_on_root(hid_t fapl)
if((H5Llink(fid, GCPL_ON_ROOT_BOTTOM_GROUP, gid2, lcpl, H5P_DEFAULT)) < 0) TEST_ERROR
/* Close LCPL */
- if(H5Pclose(lcpl) < 0) TEST_ERROR;
+ if(H5Pclose(lcpl) < 0) TEST_ERROR
/* Query the group creation properties */
- if((gcpl = H5Gget_create_plist(gid2)) < 0) TEST_ERROR;
- if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR;
- if(max_compact != H5G_CRT_GINFO_MAX_COMPACT) TEST_ERROR;
- if(min_dense != H5G_CRT_GINFO_MIN_DENSE) TEST_ERROR;
+ if((gcpl = H5Gget_create_plist(gid2)) < 0) TEST_ERROR
+ if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR
+ if(max_compact != H5G_CRT_GINFO_MAX_COMPACT) TEST_ERROR
+ if(min_dense != H5G_CRT_GINFO_MIN_DENSE) TEST_ERROR
/* Close GCPL */
- if(H5Pclose(gcpl) < 0) TEST_ERROR;
+ if(H5Pclose(gcpl) < 0) TEST_ERROR
/* Close bottom group */
- if(H5Gclose(gid2) < 0) TEST_ERROR;
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* Open the middle group */
- if((gid2 = H5Gopen(fid, GCPL_ON_ROOT_MIDDLE_GROUP)) < 0) TEST_ERROR;
+ if((gid2 = H5Gopen(fid, GCPL_ON_ROOT_MIDDLE_GROUP)) < 0) TEST_ERROR
/* Query the group creation properties */
- if((gcpl = H5Gget_create_plist(gid2)) < 0) TEST_ERROR;
- if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR;
- if(max_compact != GCPL_ON_ROOT_MAX_COMPACT) TEST_ERROR;
- if(min_dense != GCPL_ON_ROOT_MIN_DENSE) TEST_ERROR;
+ if((gcpl = H5Gget_create_plist(gid2)) < 0) TEST_ERROR
+ if(H5Pget_link_phase_change(gcpl, &max_compact, &min_dense) < 0) TEST_ERROR
+ if(max_compact != GCPL_ON_ROOT_MAX_COMPACT) TEST_ERROR
+ if(min_dense != GCPL_ON_ROOT_MIN_DENSE) TEST_ERROR
/* Close GCPL */
- if(H5Pclose(gcpl) < 0) TEST_ERROR;
+ if(H5Pclose(gcpl) < 0) TEST_ERROR
/* Close bottom group */
- if(H5Gclose(gid2) < 0) TEST_ERROR;
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* Close root group */
- if(H5Gclose(gid) < 0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
+
+ /* Close FAPL copy */
+ if(H5Pclose(fapl2) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(fid) < 0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
@@ -968,12 +1039,12 @@ error:
H5Gclose(gcpl);
H5Gclose(gid2);
H5Gclose(gid);
+ H5Pclose(fapl2);
H5Gclose(fcpl);
H5Fclose(fid);
} H5E_END_TRY;
return 1;
} /* end gcpl_on_root() */
-#endif /* H5_GROUP_REVISION */
/*-------------------------------------------------------------------------
@@ -995,60 +1066,58 @@ error:
int
main(void)
{
- hid_t fapl, fcpl, file;
- int nerrors=0;
- char filename[1024];
const char *envval = NULL;
/* Don't run this test using the split file driver */
envval = HDgetenv("HDF5_DRIVER");
- if (envval == NULL)
+ if(envval == NULL)
envval = "nomatch";
- if (HDstrcmp(envval, "split")) {
+ if(HDstrcmp(envval, "split")) {
+ hid_t fapl, fapl2; /* File access property list IDs */
+ int nerrors = 0;
+
/* Reset library */
h5_reset();
fapl = h5_fileaccess();
- /*
- * Use larger symbol table data structures to be more efficient, use
- * defaults to bang harder on the library for testing.
- */
- fcpl = H5Pcreate(H5P_FILE_CREATE);
-#if 0
- H5Pset_sym_k(fcpl, 16, 16);
-#endif
-
- /* Open the file */
- h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, fcpl, fapl))<0)
- goto error;
-
- /* Perform tests */
- nerrors += test_misc(file);
- nerrors += test_long(file);
- nerrors += test_large(file);
-#ifdef H5_GROUP_REVISION
+ /* Copy the file access property list */
+ if((fapl2 = H5Pcopy(fapl)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl2, TRUE) < 0) TEST_ERROR
+
+ /* Perform basic tests, with old & new style groups */
+ nerrors += test_misc(fapl, FALSE); /* with old-style group */
+ nerrors += test_misc(fapl2, TRUE); /* with new-style group */
+ nerrors += test_long(fapl, FALSE); /* with old-style group */
+ nerrors += test_long(fapl2, TRUE); /* with new-style group */
+ nerrors += test_large(fapl, FALSE); /* with old-style group */
+ nerrors += test_large(fapl2, TRUE); /* with new-style group */
+
+ /* New format group specific tests (require new format features) */
nerrors += lifecycle(fapl);
nerrors += long_compact(fapl);
nerrors += read_old(fapl);
nerrors += no_compact(fapl);
nerrors += gcpl_on_root(fapl);
-#endif /* H5_GROUP_REVISION */
- if (nerrors) goto error;
+
+ /* Close 2nd FAPL */
+ H5Pclose(fapl2);
+
+ /* Check for test errors */
+ if(nerrors)
+ goto error;
/* Cleanup */
- H5Fclose(file);
puts("All symbol table tests passed.");
h5_cleanup(FILENAME, fapl);
- }
+ } /* end if */
else
- {
puts("All symbol table tests skipped - Incompatible with current Virtual File Driver");
- }
return 0;
- error:
- puts("*** TESTS FAILED ***");
- return 1;
+error:
+ puts("*** TESTS FAILED ***");
+ return 1;
}
diff --git a/test/tattr.c b/test/tattr.c
index 5bb9947..b6514b7 100644
--- a/test/tattr.c
+++ b/test/tattr.c
@@ -459,7 +459,6 @@ test_attr_flush(void)
CHECK(ret, FAIL, "H5Fclose");
} /* test_attr_flush() */
-#ifdef H5_GROUP_REVISION
/****************************************************************
**
** test_attr_plist(): Test Attribute Creation Property Lists
@@ -571,7 +570,6 @@ test_attr_plist(void)
ret=H5Fclose(fid1);
CHECK(ret, FAIL, "H5Fclose");
} /* test_attr_plist() */
-#endif /* H5_GROUP_REVISION */
/****************************************************************
**
@@ -1686,9 +1684,7 @@ test_attr(void)
test_attr_flush(); /* Test H5A I/O in the presence of H5Fflush calls */
/* This next test uses the same file information */
-#ifdef H5_GROUP_REVISION
test_attr_plist(); /* Test attribute property lists */
-#endif /* H5_GROUP_REVISION */
/* These next two tests use the same file information */
test_attr_compound_write(); /* Test complex datatype H5A writing code */
diff --git a/test/tfile.c b/test/tfile.c
index 4c6e845..ebc666d 100644
--- a/test/tfile.c
+++ b/test/tfile.c
@@ -1221,12 +1221,12 @@ test_file_freespace(void)
CHECK(dcpl, FAIL, "H5Pcreate");
/* Set the space allocation time to early */
- ret = H5Pset_alloc_time(dcpl,H5D_ALLOC_TIME_EARLY);
+ ret = H5Pset_alloc_time(dcpl, H5D_ALLOC_TIME_EARLY);
CHECK(ret, FAIL, "H5Pset_alloc_time");
/* Create datasets in file */
- for(u=0; u<10; u++) {
- sprintf(name,"Dataset %u",u);
+ for(u = 0; u < 10; u++) {
+ sprintf(name, "Dataset %u", u);
dset = H5Dcreate(file, name, H5T_STD_U32LE, dspace, dcpl);
CHECK(dset, FAIL, "H5Dcreate");
@@ -1239,22 +1239,21 @@ test_file_freespace(void)
CHECK(ret, FAIL, "H5Sclose");
/* Close dataset creation property list */
- ret=H5Pclose(dcpl);
+ ret = H5Pclose(dcpl);
CHECK(ret, FAIL, "H5Pclose");
-#ifdef H5_GROUP_REVISION
/* Check that there is the right amount of free space in the file */
free_space = H5Fget_freespace(file);
CHECK(free_space, FAIL, "H5Fget_freespace");
#ifdef H5_HAVE_LARGE_HSIZET
- VERIFY(free_space, 420, "H5Fget_freespace");
+ VERIFY(free_space, 2368, "H5Fget_freespace");
#else /* H5_HAVE_LARGE_HSIZET */
- VERIFY(free_space, 588, "H5Fget_freespace");
+ VERIFY(free_space, 588, "H5Fget_freespace"); /* XXX: fix me */
#endif /* H5_HAVE_LARGE_HSIZET */
/* Delete datasets in file */
- for(u=0; u<10; u++) {
- sprintf(name,"Dataset %u",u);
+ for(u = 0; u < 10; u++) {
+ sprintf(name, "Dataset %u", u);
ret = H5Gunlink(file, name);
CHECK(ret, FAIL, "H5Gunlink");
} /* end for */
@@ -1263,16 +1262,14 @@ test_file_freespace(void)
free_space = H5Fget_freespace(file);
CHECK(free_space, FAIL, "H5Fget_freespace");
#ifdef H5_HAVE_LARGE_HSIZET
- VERIFY(free_space, 4628, "H5Fget_freespace");
+ VERIFY(free_space, 5512, "H5Fget_freespace");
#else /* H5_HAVE_LARGE_HSIZET */
- VERIFY(free_space, 4592, "H5Fget_freespace");
+ VERIFY(free_space, 4592, "H5Fget_freespace"); /* XXX: fix me */
#endif /* H5_HAVE_LARGE_HSIZET */
-#endif /* H5_GROUP_REVISION */
/* Close file */
ret = H5Fclose(file);
CHECK(ret, FAIL, "H5Fclose");
-
} /* end test_file_freespace() */
/****************************************************************
diff --git a/test/titerate.c b/test/titerate.c
index 4850db0..3241901 100644
--- a/test/titerate.c
+++ b/test/titerate.c
@@ -46,7 +46,8 @@
typedef enum {
RET_ZERO,
RET_TWO,
- RET_CHANGE
+ RET_CHANGE,
+ RET_CHANGE2
} iter_enum;
/* Custom group iteration callback data */
@@ -70,7 +71,7 @@ herr_t aiter_cb(hid_t loc_id, const char *name, void *op_data);
****************************************************************/
int iter_strcmp(const void *s1, const void *s2)
{
- return(strcmp(*(const char * const *)s1,*(const char * const *)s2));
+ return(HDstrcmp(*(const char * const *)s1,*(const char * const *)s2));
}
/****************************************************************
@@ -80,10 +81,11 @@ int iter_strcmp(const void *s1, const void *s2)
****************************************************************/
herr_t giter_cb(hid_t UNUSED group, const char *name, void *op_data)
{
- iter_info *info=(iter_info *)op_data;
- static int count=0;
+ iter_info *info = (iter_info *)op_data;
+ static int count = 0;
+ static int count2 = 0;
- strcpy(info->name,name);
+ HDstrcpy(info->name, name);
switch(info->command) {
case RET_ZERO:
@@ -94,20 +96,24 @@ herr_t giter_cb(hid_t UNUSED group, const char *name, void *op_data)
case RET_CHANGE:
count++;
- return(count>10 ? 1: 0);
+ return(count > 10 ? 1 : 0);
+
+ case RET_CHANGE2:
+ count2++;
+ return(count2 > 10 ? 1 : 0);
default:
printf("invalid iteration command");
return(-1);
} /* end switch */
-}
+} /* end giter_cb() */
/****************************************************************
**
** test_iter_group(): Test group iteration functionality
**
****************************************************************/
-static void test_iter_group(void)
+static void test_iter_group(hid_t fapl, hbool_t new_format)
{
hid_t file; /* File ID */
hid_t dataset; /* Dataset ID */
@@ -117,7 +123,7 @@ static void test_iter_group(void)
int i; /* counting variable */
int idx; /* Index in the group */
char name[NAMELEN]; /* temporary name buffer */
- char *dnames[NDATASETS];/* Names of the datasets created */
+ char *lnames[NDATASETS + 2];/* Names of the links created */
char dataset_name[NAMELEN]; /* dataset name */
iter_info info; /* Custom iteration information */
hsize_t num_membs; /* Number of group members */
@@ -127,7 +133,7 @@ static void test_iter_group(void)
MESSAGE(5, ("Testing Group Iteration Functionality\n"));
/* Create the test file with the datasets */
- file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+ file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
CHECK(file, FAIL, "H5Fcreate");
/* Test iterating over empty group */
@@ -148,12 +154,12 @@ static void test_iter_group(void)
CHECK(dataset, FAIL, "H5Dcreate");
/* Keep a copy of the dataset names around for later */
- dnames[i]=HDstrdup(name);
- CHECK(dnames[i], NULL, "strdup");
+ lnames[i] = HDstrdup(name);
+ CHECK(lnames[i], NULL, "strdup");
- ret=H5Dclose(dataset);
+ ret = H5Dclose(dataset);
CHECK(ret, FAIL, "H5Dclose");
- }
+ } /* end for */
/* Create a group and named datatype under root group for testing
* H5Gget_objtype_by_idx.
@@ -161,9 +167,15 @@ static void test_iter_group(void)
grp = H5Gcreate(file, "grp", 0);
CHECK(ret, FAIL, "H5Gcreate");
+ lnames[NDATASETS] = HDstrdup("grp");
+ CHECK(lnames[NDATASETS], NULL, "strdup");
+
ret = H5Tcommit(file, "dtype", datatype);
CHECK(ret, FAIL, "H5Tcommit");
+ lnames[NDATASETS + 1] = HDstrdup("dtype");
+ CHECK(lnames[NDATASETS], NULL, "strdup");
+
/* Close everything up */
ret=H5Tclose(datatype);
CHECK(ret, FAIL, "H5Tclose");
@@ -178,11 +190,11 @@ static void test_iter_group(void)
CHECK(ret, FAIL, "H5Fclose");
/* Sort the dataset names */
- HDqsort(dnames,NDATASETS,sizeof(char *),iter_strcmp);
+ HDqsort(lnames, NDATASETS + 2, sizeof(char *), iter_strcmp);
/* Iterate through the datasets in the root group in various ways */
- file=H5Fopen(DATAFILE, H5F_ACC_RDONLY, H5P_DEFAULT);
+ file = H5Fopen(DATAFILE, H5F_ACC_RDONLY, fapl);
CHECK(file, FAIL, "H5Fopen");
/* These two functions, H5Gget_num_objs and H5Gget_objname_by_idx, actually
@@ -194,9 +206,9 @@ static void test_iter_group(void)
ret = H5Gget_num_objs(root_group, &num_membs);
CHECK(ret, FAIL, "H5Gget_num_objs");
- VERIFY(num_membs,NDATASETS+2,"H5Gget_num_objs");
+ VERIFY(num_membs, (NDATASETS + 2), "H5Gget_num_objs");
- for(i=0; i< (int)num_membs; i++) {
+ for(i = 0; i< (int)num_membs; i++) {
H5G_obj_t obj_type; /* Type of object in file */
ret = (herr_t)H5Gget_objname_by_idx(root_group, (hsize_t)i, dataset_name, NAMELEN);
@@ -204,7 +216,7 @@ static void test_iter_group(void)
obj_type = H5Gget_objtype_by_idx(root_group, (hsize_t)i);
CHECK(obj_type, H5G_UNKNOWN, "H5Gget_objtype_by_idx");
- }
+ } /* end for */
H5E_BEGIN_TRY {
ret = (herr_t)H5Gget_objname_by_idx(root_group, (hsize_t)(NDATASETS+3), dataset_name, NAMELEN);
@@ -222,9 +234,9 @@ static void test_iter_group(void)
{
ret = H5Gget_num_objs(file, &num_membs);
CHECK(ret, FAIL, "H5Gget_num_objs");
- VERIFY(num_membs,NDATASETS+2,"H5Gget_num_objs");
+ VERIFY(num_membs, NDATASETS + 2, "H5Gget_num_objs");
- for(i=0; i< (int)num_membs; i++) {
+ for(i = 0; i< (int)num_membs; i++) {
H5G_obj_t obj_type; /* Type of object in file */
ret = (herr_t)H5Gget_objname_by_idx(file, (hsize_t)i, dataset_name, NAMELEN);
@@ -235,116 +247,95 @@ static void test_iter_group(void)
}
H5E_BEGIN_TRY {
- ret = (herr_t)H5Gget_objname_by_idx(file, (hsize_t)(NDATASETS+3), dataset_name, NAMELEN);
+ ret = (herr_t)H5Gget_objname_by_idx(file, (hsize_t)(NDATASETS + 3), dataset_name, NAMELEN);
} H5E_END_TRY;
VERIFY(ret, FAIL, "H5Gget_objname_by_idx");
}
/* Test invalid indices for starting iteration */
- info.command=RET_ZERO;
- idx=-1;
+ info.command = RET_ZERO;
+ idx = -1;
H5E_BEGIN_TRY {
- ret=H5Giterate(file,"/",&idx,giter_cb,&info);
+ ret = H5Giterate(file, "/", &idx, giter_cb, &info);
} H5E_END_TRY;
VERIFY(ret, FAIL, "H5Giterate");
/* Test skipping exactly as many entries as in the group */
- idx=NDATASETS+2;
+ idx = NDATASETS + 2;
H5E_BEGIN_TRY {
- ret=H5Giterate(file,"/",&idx,giter_cb,&info);
+ ret = H5Giterate(file, "/", &idx, giter_cb, &info);
} H5E_END_TRY;
VERIFY(ret, FAIL, "H5Giterate");
/* Test skipping more entries than are in the group */
- idx=NDATASETS+3;
+ idx = NDATASETS + 3;
H5E_BEGIN_TRY {
- ret=H5Giterate(file,"/",&idx,giter_cb,&info);
+ ret = H5Giterate(file, "/", &idx, giter_cb, &info);
} H5E_END_TRY;
VERIFY(ret, FAIL, "H5Giterate");
/* Test all objects in group, when callback always returns 0 */
- info.command=RET_ZERO;
- idx=0;
- if((ret=H5Giterate(file,"/",&idx,giter_cb,&info))>0)
+ info.command = RET_ZERO;
+ idx = 0;
+ if((ret = H5Giterate(file, "/", &idx, giter_cb, &info)) > 0)
TestErrPrintf("Group iteration function didn't return zero correctly!\n");
/* Test all objects in group, when callback always returns 1 */
/* This also tests the "restarting" ability, because the index changes */
- info.command=RET_TWO;
- idx=i=0;
- while((ret=H5Giterate(file,"/",&idx,giter_cb,&info))>0) {
+ info.command = RET_TWO;
+ idx = i = 0;
+ while((ret = H5Giterate(file, "/", &idx, giter_cb, &info)) > 0) {
/* Verify return value from iterator gets propagated correctly */
- VERIFY(ret,2,"H5Giterate");
+ VERIFY(ret, 2, "H5Giterate");
- /* Increment the number of times "1" is returned */
+ /* Increment the number of times "2" is returned */
i++;
/* Verify that the index is the correct value */
- VERIFY(idx,i,"H5Giterate");
+ VERIFY(idx, i, "H5Giterate");
+ if(idx > (NDATASETS + 2))
+ TestErrPrintf("Group iteration function walked too far!\n");
/* Verify that the correct name is retrieved */
- if(idx<=NDATASETS) {
- if(HDstrcmp(info.name,dnames[idx-1])!=0)
- TestErrPrintf("Group iteration function didn't return one correctly for dataset #%d!\n",idx);
- } /* end if */
- else if(idx==(NDATASETS+1)) {
- if(HDstrcmp(info.name,"dtype")!=0)
- TestErrPrintf("Group iteration function didn't return one correctly for group!\n");
- } /* end if */
- else if(idx==(NDATASETS+2)) {
- if(HDstrcmp(info.name,"grp")!=0)
- TestErrPrintf("Group iteration function didn't return one correctly for group!\n");
- } /* end if */
- else
- TestErrPrintf("Group iteration function walked too far!\n");
- }
- VERIFY(ret,-1,"H5Giterate");
+ if(HDstrcmp(info.name, lnames[idx - 1]) != 0)
+ TestErrPrintf("Group iteration function didn't return name correctly for link - lnames[%u] = '%s'!\n", (idx - 1), lnames[idx - 1]);
+ } /* end while */
+ VERIFY(ret, -1, "H5Giterate");
- if(i!=(NDATASETS+2))
+ if(i != (NDATASETS + 2))
TestErrPrintf("Group iteration function didn't perform multiple iterations correctly!\n");
/* Test all objects in group, when callback changes return value */
/* This also tests the "restarting" ability, because the index changes */
- info.command=RET_CHANGE;
- idx=i=0;
- while((ret=H5Giterate(file,"/",&idx,giter_cb,&info))>=0) {
+ info.command = new_format ? RET_CHANGE2 : RET_CHANGE;
+ idx = i = 0;
+ while((ret = H5Giterate(file, "/", &idx, giter_cb, &info)) >= 0) {
/* Verify return value from iterator gets propagated correctly */
- VERIFY(ret,1,"H5Giterate");
+ VERIFY(ret, 1, "H5Giterate");
/* Increment the number of times "1" is returned */
i++;
/* Verify that the index is the correct value */
- VERIFY(idx,i+10,"H5Giterate");
+ VERIFY(idx, (i + 10), "H5Giterate");
+ if(idx > (NDATASETS + 2))
+ TestErrPrintf("Group iteration function walked too far!\n");
/* Verify that the correct name is retrieved */
- if(idx<=NDATASETS) {
- if(HDstrcmp(info.name,dnames[idx-1])!=0)
- TestErrPrintf("Group iteration function didn't return one correctly for dataset #%d!\n",idx);
- } /* end if */
- else if(idx==(NDATASETS+1)) {
- if(HDstrcmp(info.name,"dtype")!=0)
- TestErrPrintf("Group iteration function didn't return one correctly for group!\n");
- } /* end if */
- else if(idx==(NDATASETS+2)) {
- if(HDstrcmp(info.name,"grp")!=0)
- TestErrPrintf("Group iteration function didn't return one correctly for group!\n");
- } /* end if */
- else
- TestErrPrintf("Group iteration function walked too far!\n");
- }
- VERIFY(ret,-1,"H5Giterate");
+ if(HDstrcmp(info.name, lnames[idx - 1]) != 0)
+ TestErrPrintf("Group iteration function didn't return name correctly for link - lnames[%u] = '%s'!\n", (idx - 1), lnames[idx - 1]);
+ } /* end while */
+ VERIFY(ret, -1, "H5Giterate");
- if(i!=42 || idx!=52)
+ if(i != 42 || idx != 52)
TestErrPrintf("Group iteration function didn't perform multiple iterations correctly!\n");
- ret=H5Fclose(file);
+ ret = H5Fclose(file);
CHECK(ret, FAIL, "H5Fclose");
/* Free the dataset names */
- for(i=0; i< NDATASETS; i++)
- HDfree(dnames[i]);
-
+ for(i = 0; i< (NDATASETS + 2); i++)
+ HDfree(lnames[i]);
} /* test_iter_group() */
/****************************************************************
@@ -352,12 +343,14 @@ static void test_iter_group(void)
** aiter_cb(): Custom group iteration callback routine.
**
****************************************************************/
-herr_t aiter_cb(hid_t UNUSED group, const char *name, void *op_data)
+herr_t
+aiter_cb(hid_t UNUSED group, const char *name, void *op_data)
{
- iter_info *info=(iter_info *)op_data;
- static int count=0;
+ iter_info *info = (iter_info *)op_data;
+ static int count = 0;
+ static int count2 = 0;
- strcpy(info->name,name);
+ HDstrcpy(info->name, name);
switch(info->command) {
case RET_ZERO:
@@ -368,20 +361,24 @@ herr_t aiter_cb(hid_t UNUSED group, const char *name, void *op_data)
case RET_CHANGE:
count++;
- return(count>10 ? 1: 0);
+ return(count > 10 ? 1: 0);
+
+ case RET_CHANGE2:
+ count2++;
+ return(count2 > 10 ? 1: 0);
default:
printf("invalid iteration command");
return(-1);
} /* end switch */
-}
+} /* end aiter_cb() */
/****************************************************************
**
** test_iter_attr(): Test attribute iteration functionality
**
****************************************************************/
-static void test_iter_attr(void)
+static void test_iter_attr(hid_t fapl, hbool_t new_format)
{
hid_t file; /* File ID */
hid_t dataset; /* Common Dataset ID */
@@ -398,7 +395,7 @@ static void test_iter_attr(void)
MESSAGE(5, ("Testing Attribute Iteration Functionality\n"));
/* Create the test file with the datasets */
- file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+ file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
CHECK(file, FAIL, "H5Fcreate");
filespace=H5Screate(H5S_SCALAR);
@@ -432,7 +429,7 @@ static void test_iter_attr(void)
/* Iterate through the attributes on the dataset in various ways */
- file=H5Fopen(DATAFILE, H5F_ACC_RDONLY, H5P_DEFAULT);
+ file=H5Fopen(DATAFILE, H5F_ACC_RDONLY, fapl);
CHECK(file, FAIL, "H5Fopen");
dataset=H5Dopen(file, "Dataset");
@@ -486,7 +483,7 @@ static void test_iter_attr(void)
/* Test all attributes on dataset, when callback changes return value */
/* This also tests the "restarting" ability, because the index changes */
- info.command=RET_CHANGE;
+ info.command = new_format ? RET_CHANGE2 : RET_CHANGE;
idx=i=0;
while((ret=H5Aiterate(dataset,&idx,aiter_cb,&info))>0) {
/* Verify return value from iterator gets propagated correctly */
@@ -525,8 +522,8 @@ static void test_iter_attr(void)
****************************************************************/
int iter_strcmp2(const void *s1, const void *s2)
{
- return(strcmp((const char *)s1,(const char *)s2));
-}
+ return(HDstrcmp((const char *)s1,(const char *)s2));
+} /* end iter_strcmp2() */
/****************************************************************
**
@@ -535,23 +532,23 @@ int iter_strcmp2(const void *s1, const void *s2)
****************************************************************/
herr_t giter_cb2(hid_t loc_id, const char *name, void *opdata)
{
- const iter_info *test_info=(const iter_info *)opdata;
- herr_t ret; /* Generic return value */
+ const iter_info *test_info = (const iter_info *)opdata;
H5G_stat_t statbuf;
+ herr_t ret; /* Generic return value */
- if(HDstrcmp(name,test_info->name)) {
- TestErrPrintf("name=%s, test_info=%s\n",name,test_info->name);
+ if(HDstrcmp(name, test_info->name)) {
+ TestErrPrintf("name = '%s', test_info = '%s'\n", name, test_info->name);
return(-1);
} /* end if */
/*
* Get type of the object and check it.
*/
- ret=H5Gget_objinfo(loc_id, name, FALSE, &statbuf);
+ ret = H5Gget_objinfo(loc_id, name, FALSE, &statbuf);
CHECK(ret, FAIL, "H5Gget_objinfo");
- if(test_info->type!=statbuf.type) {
- TestErrPrintf("test_info->type=%d, statbuf.type=%d\n",test_info->type,statbuf.type);
+ if(test_info->type != statbuf.type) {
+ TestErrPrintf("test_info->type = %d, statbuf.type = %d\n", test_info->type, statbuf.type);
return(-1);
} /* end if */
@@ -564,7 +561,7 @@ herr_t giter_cb2(hid_t loc_id, const char *name, void *opdata)
** for groups with large #'s of objects
**
****************************************************************/
-static void test_iter_group_large(void)
+static void test_iter_group_large(hid_t fapl)
{
hid_t file; /* HDF5 File IDs */
hid_t dataset; /* Dataset ID */
@@ -585,13 +582,13 @@ static void test_iter_group_large(void)
float c;
} s1_t;
- memset(names, 0, sizeof names);
+ HDmemset(names, 0, sizeof names);
/* Output message about test being performed */
MESSAGE(5, ("Testing Large Group Iteration Functionality\n"));
/* Create file */
- file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+ file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
CHECK(file, FAIL, "H5Fcreate");
/* Create dataspace for datasets */
@@ -599,29 +596,29 @@ static void test_iter_group_large(void)
CHECK(sid, FAIL, "H5Screate_simple");
/* Create a bunch of groups */
- for (i=0; i<ITER_NGROUPS; i++) {
+ for(i = 0; i < ITER_NGROUPS; i++) {
sprintf(gname, "Group_%d", i);
/* Add the name to the list of objects in the root group */
- strcpy(names[i].name,gname);
- names[i].type=H5G_GROUP;
+ HDstrcpy(names[i].name, gname);
+ names[i].type = H5G_GROUP;
/* Create a group */
- group=H5Gcreate(file,gname,0);
+ group = H5Gcreate(file, gname, 0);
CHECK(group, FAIL, "H5Gcreate");
/* Close a group */
ret = H5Gclose(group);
CHECK(ret, FAIL, "H5Gclose");
- }
+ } /* end for */
/* Create a dataset */
- dataset=H5Dcreate(file,"Dataset1",H5T_STD_U32LE,sid,H5P_DEFAULT);
+ dataset = H5Dcreate(file, "Dataset1", H5T_STD_U32LE, sid, H5P_DEFAULT);
CHECK(dataset, FAIL, "H5Dcreate");
/* Add the name to the list of objects in the root group */
- strcpy(names[ITER_NGROUPS].name,"Dataset1");
- names[ITER_NGROUPS].type=H5G_DATASET;
+ HDstrcpy(names[ITER_NGROUPS].name, "Dataset1");
+ names[ITER_NGROUPS].type = H5G_DATASET;
/* Close Dataset */
ret = H5Dclose(dataset);
@@ -632,40 +629,42 @@ static void test_iter_group_large(void)
CHECK(ret, FAIL, "H5Sclose");
/* Create a datatype */
- tid = H5Tcreate (H5T_COMPOUND, sizeof(s1_t));
+ tid = H5Tcreate(H5T_COMPOUND, sizeof(s1_t));
CHECK(tid, FAIL, "H5Tcreate");
/* Insert fields */
- ret=H5Tinsert (tid, "a", HOFFSET(s1_t,a), H5T_NATIVE_INT);
+ ret = H5Tinsert(tid, "a", HOFFSET(s1_t, a), H5T_NATIVE_INT);
CHECK(ret, FAIL, "H5Tinsert");
- ret=H5Tinsert (tid, "b", HOFFSET(s1_t,b), H5T_NATIVE_INT);
+ ret = H5Tinsert(tid, "b", HOFFSET(s1_t, b), H5T_NATIVE_INT);
CHECK(ret, FAIL, "H5Tinsert");
- ret=H5Tinsert (tid, "c", HOFFSET(s1_t,c), H5T_NATIVE_FLOAT);
+ ret = H5Tinsert(tid, "c", HOFFSET(s1_t, c), H5T_NATIVE_FLOAT);
CHECK(ret, FAIL, "H5Tinsert");
/* Save datatype for later */
- ret=H5Tcommit (file, "Datatype1", tid);
+ ret = H5Tcommit(file, "Datatype1", tid);
CHECK(ret, FAIL, "H5Tcommit");
/* Add the name to the list of objects in the root group */
- strcpy(names[ITER_NGROUPS+1].name,"Datatype1");
- names[ITER_NGROUPS+1].type=H5G_TYPE;
+ HDstrcpy(names[ITER_NGROUPS + 1].name, "Datatype1");
+ names[ITER_NGROUPS + 1].type = H5G_TYPE;
/* Close datatype */
ret = H5Tclose(tid);
CHECK(ret, FAIL, "H5Tclose");
/* Need to sort the names in the root group, cause that's what the library does */
- qsort(names,ITER_NGROUPS+2,sizeof(iter_info),iter_strcmp2);
+ HDqsort(names, (ITER_NGROUPS + 2), sizeof(iter_info), iter_strcmp2);
/* Iterate through the file to see members of the root group */
- curr_name=&names[0];
- H5Giterate(file, "/", NULL, giter_cb2, curr_name);
- for (i=1; i<100; ) {
- curr_name=&names[i];
- H5Giterate(file, "/", &i, giter_cb2, curr_name);
+ curr_name = &names[0];
+ ret = H5Giterate(file, "/", NULL, giter_cb2, curr_name);
+ CHECK(ret, FAIL, "H5Giterate");
+ for(i = 1; i < 100; ) {
+ curr_name = &names[i];
+ ret = H5Giterate(file, "/", &i, giter_cb2, curr_name);
+ CHECK(ret, FAIL, "H5Giterate");
} /* end for */
/* Close file */
@@ -679,7 +678,7 @@ static void test_iter_group_large(void)
** functionality
**
****************************************************************/
-static void test_grp_memb_funcs(void)
+static void test_grp_memb_funcs(hid_t fapl)
{
hid_t file; /* File ID */
hid_t dataset; /* Dataset ID */
@@ -699,7 +698,7 @@ static void test_grp_memb_funcs(void)
MESSAGE(5, ("Testing Group Member Information Functionality\n"));
/* Create the test file with the datasets */
- file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+ file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
CHECK(file, FAIL, "H5Fcreate");
datatype = H5Tcopy(H5T_NATIVE_INT);
@@ -708,18 +707,18 @@ static void test_grp_memb_funcs(void)
filespace=H5Screate(H5S_SCALAR);
CHECK(filespace, FAIL, "H5Screate");
- for(i=0; i< NDATASETS; i++) {
+ for(i = 0; i< NDATASETS; i++) {
sprintf(name,"Dataset %d",i);
dataset = H5Dcreate(file, name, datatype, filespace, H5P_DEFAULT);
CHECK(dataset, FAIL, "H5Dcreate");
/* Keep a copy of the dataset names around for later */
- dnames[i]=HDstrdup(name);
+ dnames[i] = HDstrdup(name);
CHECK(dnames[i], NULL, "strdup");
- ret=H5Dclose(dataset);
+ ret = H5Dclose(dataset);
CHECK(ret, FAIL, "H5Dclose");
- }
+ } /* end for */
/* Create a group and named datatype under root group for testing
* H5Gget_objtype_by_idx.
@@ -727,33 +726,33 @@ static void test_grp_memb_funcs(void)
grp = H5Gcreate(file, "grp", 0);
CHECK(ret, FAIL, "H5Gcreate");
- dnames[NDATASETS]=HDstrdup("grp");
+ dnames[NDATASETS] = HDstrdup("grp");
CHECK(dnames[NDATASETS], NULL, "strdup");
ret = H5Tcommit(file, "dtype", datatype);
CHECK(ret, FAIL, "H5Tcommit");
- dnames[NDATASETS+1]=HDstrdup("dtype");
+ dnames[NDATASETS + 1] = HDstrdup("dtype");
CHECK(dnames[NDATASETS], NULL, "strdup");
/* Close everything up */
- ret=H5Tclose(datatype);
+ ret = H5Tclose(datatype);
CHECK(ret, FAIL, "H5Tclose");
- ret=H5Gclose(grp);
+ ret = H5Gclose(grp);
CHECK(ret, FAIL, "H5Gclose");
- ret=H5Sclose(filespace);
+ ret = H5Sclose(filespace);
CHECK(ret, FAIL, "H5Sclose");
- ret=H5Fclose(file);
+ ret = H5Fclose(file);
CHECK(ret, FAIL, "H5Fclose");
/* Sort the dataset names */
- HDqsort(dnames,NDATASETS+2,sizeof(char *),iter_strcmp);
+ HDqsort(dnames, (NDATASETS + 2), sizeof(char *), iter_strcmp);
/* Iterate through the datasets in the root group in various ways */
- file=H5Fopen(DATAFILE, H5F_ACC_RDONLY, H5P_DEFAULT);
+ file = H5Fopen(DATAFILE, H5F_ACC_RDONLY, fapl);
CHECK(file, FAIL, "H5Fopen");
/* These two functions, H5Gget_num_objs and H5Gget_objname_by_idx, actually
@@ -773,14 +772,14 @@ static void test_grp_memb_funcs(void)
name_len = H5Gget_objname_by_idx(root_group, (hsize_t)i, NULL, NAMELEN);
CHECK(name_len, FAIL, "H5Gget_objname_by_idx");
- ret = (herr_t)H5Gget_objname_by_idx(root_group, (hsize_t)i, dataset_name, (size_t)(name_len+1));
+ ret = (herr_t)H5Gget_objname_by_idx(root_group, (hsize_t)i, dataset_name, (size_t)(name_len + 1));
CHECK(ret, FAIL, "H5Gget_objname_by_idx");
/* Double-check that the length is the same */
VERIFY(ret, name_len, "H5Gget_objname_by_idx");
/* Keep a copy of the dataset names around for later */
- obj_names[i]=HDstrdup(dataset_name);
+ obj_names[i] = HDstrdup(dataset_name);
CHECK(obj_names[i], NULL, "strdup");
obj_type = H5Gget_objtype_by_idx(root_group, (hsize_t)i);
@@ -792,7 +791,7 @@ static void test_grp_memb_funcs(void)
VERIFY(obj_type, H5G_TYPE, "H5Gget_objname_by_idx");
if(!HDstrncmp(dataset_name, "Dataset", 7))
VERIFY(obj_type, H5G_DATASET, "H5Gget_objname_by_idx");
- }
+ } /* end for */
H5E_BEGIN_TRY {
ret = (herr_t)H5Gget_objname_by_idx(root_group, (hsize_t)(NDATASETS+3), dataset_name, NAMELEN);
@@ -800,27 +799,26 @@ static void test_grp_memb_funcs(void)
VERIFY(ret, FAIL, "H5Gget_objname_by_idx");
/* Sort the dataset names */
- qsort(obj_names,NDATASETS+2,sizeof(char *),iter_strcmp);
+ HDqsort(obj_names, (NDATASETS + 2), sizeof(char *), iter_strcmp);
/* Compare object names */
- for(i=0; i< (int)num_membs; i++) {
+ for(i = 0; i< (int)num_membs; i++) {
ret = HDstrcmp(dnames[i], obj_names[i]);
VERIFY(ret, 0, "HDstrcmp");
- }
+ } /* end for */
ret = H5Gclose(root_group);
CHECK(ret, FAIL, "H5Gclose");
- ret=H5Fclose(file);
+ ret = H5Fclose(file);
CHECK(ret, FAIL, "H5Fclose");
/* Free the dataset names */
- for(i=0; i< NDATASETS+2; i++) {
- free(dnames[i]);
- free(obj_names[i]);
- }
-
+ for(i = 0; i< (NDATASETS + 2); i++) {
+ HDfree(dnames[i]);
+ HDfree(obj_names[i]);
+ } /* end for */
} /* test_grp_memb_funcs() */
/****************************************************************
@@ -828,7 +826,7 @@ static void test_grp_memb_funcs(void)
** test_links(): Test soft and hard link iteration
**
****************************************************************/
-static void test_links(void)
+static void test_links(hid_t fapl)
{
hid_t file; /* File ID */
char obj_name[NAMELEN]; /* Names of the object in group */
@@ -843,7 +841,7 @@ static void test_links(void)
MESSAGE(5, ("Testing Soft and Hard Link Iteration Functionality\n"));
/* Create the test file with the datasets */
- file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+ file = H5Fcreate(DATAFILE, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);
CHECK(file, FAIL, "H5Fcreate");
/* create groups */
@@ -854,10 +852,10 @@ static void test_links(void)
CHECK(gid1, FAIL, "H5Gcreate");
/* create soft and hard links to the group "/g1". */
- ret = H5Glink (gid, H5L_LINK_SOFT, "something", "softlink");
+ ret = H5Glink (gid, H5L_TYPE_SOFT, "something", "softlink");
CHECK(ret, FAIL, "H5Glink");
- ret = H5Glink (gid, H5L_LINK_HARD, "/g1", "hardlink");
+ ret = H5Glink (gid, H5L_TYPE_HARD, "/g1", "hardlink");
CHECK(ret, FAIL, "H5Glink");
ret = H5Gget_num_objs(gid, &nobjs);
@@ -865,7 +863,7 @@ static void test_links(void)
VERIFY(nobjs,3,"H5Gget_num_objs");
/* Test these two functions, H5Gget_num_objs and H5Gget_objname_by_idx */
- for(i=0; i<nobjs; i++) {
+ for(i = 0; i < nobjs; i++) {
/* Get object name */
name_len = H5Gget_objname_by_idx(gid, i, obj_name, NAMELEN);
CHECK(name_len, FAIL, "H5Gget_objname_by_idx");
@@ -883,13 +881,13 @@ static void test_links(void)
CHECK(0, 0, "unknown object name");
}
- ret=H5Gclose(gid);
+ ret = H5Gclose(gid);
CHECK(ret, FAIL, "H5Gclose");
- ret=H5Gclose(gid1);
+ ret = H5Gclose(gid1);
CHECK(ret, FAIL, "H5Gclose");
- ret=H5Fclose(file);
+ ret = H5Fclose(file);
CHECK(ret, FAIL, "H5Fclose");
} /* test_links() */
@@ -901,15 +899,39 @@ static void test_links(void)
void
test_iterate(void)
{
+ hid_t fapl, fapl2; /* File access property lists */
+ hbool_t new_format; /* Whether to use the new format or not */
+ herr_t ret; /* Generic return value */
+
/* Output message about test being performed */
MESSAGE(5, ("Testing Iteration Operations\n"));
+ /* Get the default FAPL */
+ fapl = H5Pcreate(H5P_FILE_ACCESS);
+ CHECK(fapl, FAIL, "H5Pcreate");
+
+ /* Copy the file access property list */
+ fapl2 = H5Pcopy(fapl);
+ CHECK(fapl2, FAIL, "H5Pcopy");
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ ret = H5Pset_latest_format(fapl2, TRUE);
+ CHECK(ret, FAIL, "H5Pset_latest_format");
+
/* These next tests use the same file */
- test_iter_group(); /* Test group iteration */
- test_iter_group_large(); /* Test group iteration for large # of objects */
- test_iter_attr(); /* Test attribute iteration */
- test_grp_memb_funcs(); /* Test group member information functions */
- test_links(); /* Test soft and hard link iteration */
+ for(new_format = FALSE; new_format <= TRUE; new_format++) {
+ test_iter_group(new_format ? fapl2 : fapl, new_format); /* Test group iteration */
+ test_iter_group_large(new_format ? fapl2 : fapl); /* Test group iteration for large # of objects */
+ test_iter_attr(new_format ? fapl2 : fapl, new_format); /* Test attribute iteration */
+ test_grp_memb_funcs(new_format ? fapl2 : fapl); /* Test group member information functions */
+ test_links(new_format ? fapl2 : fapl); /* Test soft and hard link iteration */
+ } /* end for */
+
+ /* Close FAPLs */
+ ret = H5Pclose(fapl);
+ CHECK(ret, FAIL, "H5Pclose");
+ ret = H5Pclose(fapl2);
+ CHECK(ret, FAIL, "H5Pclose");
} /* test_iterate() */
diff --git a/test/tmisc.c b/test/tmisc.c
index b89a9a6..db1605e 100644
--- a/test/tmisc.c
+++ b/test/tmisc.c
@@ -3768,7 +3768,6 @@ test_misc22(void)
} /* end test_misc22() */
#endif /* H5_HAVE_FILTER_SZIP */
-#ifdef H5_GROUP_REVISION
/****************************************************************
**
** test_misc23(): Test intermediate group creation.
@@ -4075,7 +4074,6 @@ test_misc23(void)
CHECK(status, FAIL, "H5Fclose");
} /* end test_misc23() */
-#endif /* H5_GROUP_REVISION */
/****************************************************************
**
@@ -4114,13 +4112,13 @@ test_misc24(void)
CHECK(ret, FAIL, "H5Tcommit");
/* Create soft links to the objects created */
- ret = H5Glink2(file_id, MISC24_GROUP_NAME, H5L_LINK_SOFT, file_id, MISC24_GROUP_LINK);
+ ret = H5Glink2(file_id, MISC24_GROUP_NAME, H5L_TYPE_SOFT, file_id, MISC24_GROUP_LINK);
CHECK(ret, FAIL, "H5Glink2");
- ret = H5Glink2(file_id, MISC24_DATASET_NAME, H5L_LINK_SOFT, file_id, MISC24_DATASET_LINK);
+ ret = H5Glink2(file_id, MISC24_DATASET_NAME, H5L_TYPE_SOFT, file_id, MISC24_DATASET_LINK);
CHECK(ret, FAIL, "H5Glink2");
- ret = H5Glink2(file_id, MISC24_DATATYPE_NAME, H5L_LINK_SOFT, file_id, MISC24_DATATYPE_LINK);
+ ret = H5Glink2(file_id, MISC24_DATATYPE_NAME, H5L_TYPE_SOFT, file_id, MISC24_DATATYPE_LINK);
CHECK(ret, FAIL, "H5Glink2");
/* Close IDs for objects */
@@ -4668,9 +4666,7 @@ test_misc(void)
test_misc21(); /* Test that "late" allocation time is treated the same as "incremental", for chunked datasets w/a filters */
test_misc22(); /* check szip bits per pixel */
#endif /* H5_HAVE_FILTER_SZIP */
-#ifdef H5_GROUP_REVISION
test_misc23(); /* Test intermediate group creation */
-#endif /* H5_GROUP_REVISION */
test_misc24(); /* Test inappropriate API opens of objects */
test_misc25a(); /* Exercise null object header message merge bug */
test_misc25b(); /* Exercise null object header message merge bug on existing file */
diff --git a/test/unlink.c b/test/unlink.c
index 1ad3790..908ea1d 100644
--- a/test/unlink.c
+++ b/test/unlink.c
@@ -77,7 +77,9 @@ const char *FILENAME[] = {
#define SLASHES_ROOTLINK_NAME "Root///"
#define FULL_GROUP_NUM_KEEP 2
#define FULL_GROUP_NUM_DELETE_COMPACT 2
-#define FULL_GROUP_NUM_DELETE_DENSE 16
+#define FULL_GROUP_NUM_DELETE_DENSE 16
+#define FULL_GROUP_EST_NUM_ENTRIES 8
+#define FULL_GROUP_EST_ENTRY_LEN 9
/*-------------------------------------------------------------------------
@@ -104,38 +106,35 @@ test_one(hid_t file)
herr_t status;
/* Create a test group */
- if ((work=H5Gcreate(file, "/test_one", 0))<0) goto error;
+ if((work=H5Gcreate(file, "/test_one", (size_t)0)) < 0) goto error;
/* Delete by absolute name */
TESTING("unlink by absolute name");
- if ((grp=H5Gcreate(work, "foo", 0))<0) goto error;
- if (H5Gclose(grp)<0) goto error;
- if (H5Gunlink(file, "/test_one/foo")<0) goto error;
+ if((grp=H5Gcreate(work, "foo", (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(grp) < 0) TEST_ERROR
+ if(H5Gunlink(file, "/test_one/foo") < 0) TEST_ERROR
PASSED();
/* Delete by local name */
TESTING("unlink by local name");
- if ((grp=H5Gcreate(work, "foo", 0))<0) goto error;
- if (H5Gclose(grp)<0) goto error;
- if (H5Gunlink(work, "foo")<0) goto error;
+ if((grp=H5Gcreate(work, "foo", (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose(grp) < 0) TEST_ERROR
+ if(H5Gunlink(work, "foo") < 0) TEST_ERROR
PASSED();
/* Delete directly - should fail */
TESTING("unlink without a name");
- if ((grp=H5Gcreate(work, "foo", 0))<0) goto error;
+ if((grp=H5Gcreate(work, "foo", (size_t)0)) < 0) TEST_ERROR
H5E_BEGIN_TRY {
status = H5Gunlink(grp, ".");
} H5E_END_TRY;
- if (status>=0) {
- H5_FAILED();
- puts(" Unlinking object w/o a name should have failed.");
- goto error;
- }
- if (H5Gclose(grp)<0) goto error;
+ if(status>=0)
+ FAIL_PUTS_ERROR(" Unlinking object w/o a name should have failed.")
+ if(H5Gclose(grp) < 0) TEST_ERROR
PASSED();
/* Cleanup */
- if (H5Gclose(work)<0) goto error;
+ if(H5Gclose(work) < 0) goto error;
return 0;
error:
@@ -172,19 +171,19 @@ test_many(hid_t file)
char name[32];
/* Create a test group */
- if ((work=H5Gcreate(file, "/test_many", 0))<0) goto error;
- if ((grp = H5Gcreate(work, "/test_many_foo", 0))<0) goto error;
- if (H5Gclose(grp)<0) goto error;
+ if((work=H5Gcreate(file, "/test_many", (size_t)0)) < 0) goto error;
+ if((grp = H5Gcreate(work, "/test_many_foo", (size_t)0)) < 0) goto error;
+ if(H5Gclose(grp) < 0) goto error;
/* Create a bunch of names and unlink them in order */
TESTING("forward unlink");
for (i=0; i<how_many; i++) {
sprintf(name, "obj_%05d", i);
- if (H5Glink(work, H5L_LINK_HARD, "/test_many_foo", name)<0) goto error;
+ if (H5Glink(work, H5L_TYPE_HARD, "/test_many_foo", name) < 0) TEST_ERROR
}
for (i=0; i<how_many; i++) {
sprintf(name, "obj_%05d", i);
- if (H5Gunlink(work, name)<0) goto error;
+ if (H5Gunlink(work, name) < 0) TEST_ERROR
}
PASSED();
@@ -192,11 +191,11 @@ test_many(hid_t file)
TESTING("backward unlink");
for (i=0; i<how_many; i++) {
sprintf(name, "obj_%05d", i);
- if (H5Glink(work, H5L_LINK_HARD, "/test_many_foo", name)<0) goto error;
+ if (H5Glink(work, H5L_TYPE_HARD, "/test_many_foo", name) < 0) TEST_ERROR
}
for (i=how_many-1; i>=0; --i) {
sprintf(name, "obj_%05d", i);
- if (H5Gunlink(work, name)<0) goto error;
+ if (H5Gunlink(work, name) < 0) TEST_ERROR
}
PASSED();
@@ -204,7 +203,7 @@ test_many(hid_t file)
TESTING("inward unlink");
for (i=0; i<how_many; i++) {
sprintf(name, "obj_%05d", i);
- if (H5Glink(work, H5L_LINK_HARD, "/test_many_foo", name)<0) goto error;
+ if (H5Glink(work, H5L_TYPE_HARD, "/test_many_foo", name) < 0) TEST_ERROR
}
for (i=0; i<how_many; i++) {
if (i%2) {
@@ -212,7 +211,7 @@ test_many(hid_t file)
} else {
sprintf(name, "obj_%05d", i/2);
}
- if (H5Gunlink(work, name)<0) goto error;
+ if (H5Gunlink(work, name) < 0) TEST_ERROR
}
PASSED();
@@ -220,7 +219,7 @@ test_many(hid_t file)
TESTING("outward unlink");
for (i=0; i<how_many; i++) {
sprintf(name, "obj_%05d", i);
- if (H5Glink(work, H5L_LINK_HARD, "/test_many_foo", name)<0) goto error;
+ if (H5Glink(work, H5L_TYPE_HARD, "/test_many_foo", name) < 0) TEST_ERROR
}
for (i=how_many-1; i>=0; --i) {
if (i%2) {
@@ -228,13 +227,13 @@ test_many(hid_t file)
} else {
sprintf(name, "obj_%05d", i/2);
}
- if (H5Gunlink(work, name)<0) goto error;
+ if (H5Gunlink(work, name) < 0) TEST_ERROR
}
PASSED();
/* Cleanup */
- if (H5Gclose(work)<0) goto error;
+ if (H5Gclose(work) < 0) goto error;
return 0;
error:
@@ -268,12 +267,12 @@ test_symlink(hid_t file)
TESTING("symlink removal");
/* Create a test group and symlink */
- if ((work=H5Gcreate(file, "/test_symlink", 0))<0) TEST_ERROR;
- if (H5Glink(work, H5L_LINK_SOFT, "link_value", "link")<0) TEST_ERROR;
- if (H5Gunlink(work, "link")<0) TEST_ERROR;
+ if ((work=H5Gcreate(file, "/test_symlink", (size_t)0)) < 0) TEST_ERROR
+ if (H5Glink(work, H5L_TYPE_SOFT, "link_value", "link") < 0) TEST_ERROR
+ if (H5Gunlink(work, "link") < 0) TEST_ERROR
/* Cleanup */
- if (H5Gclose(work)<0) TEST_ERROR;
+ if (H5Gclose(work) < 0) TEST_ERROR
PASSED();
return 0;
@@ -308,24 +307,24 @@ test_rename(hid_t file)
/* Create a test group and rename something */
TESTING("object renaming");
- if ((work=H5Gcreate(file, "/test_rename", 0))<0) goto error;
- if ((foo=H5Gcreate(work, "foo", 0))<0) goto error;
- if (H5Gmove(work, "foo", "bar")<0) goto error;
- if ((inner=H5Gcreate(foo, "inner", 0))<0) goto error;
- if (H5Gclose(inner)<0) goto error;
- if (H5Gclose(foo)<0) goto error;
- if ((inner=H5Gopen(work, "bar/inner"))<0) goto error;
- if (H5Gclose(inner)<0) goto error;
+ if ((work=H5Gcreate(file, "/test_rename", (size_t)0)) < 0) TEST_ERROR
+ if ((foo=H5Gcreate(work, "foo", (size_t)0)) < 0) TEST_ERROR
+ if (H5Gmove(work, "foo", "bar") < 0) TEST_ERROR
+ if ((inner=H5Gcreate(foo, "inner", (size_t)0)) < 0) TEST_ERROR
+ if (H5Gclose(inner) < 0) TEST_ERROR
+ if (H5Gclose(foo) < 0) TEST_ERROR
+ if ((inner=H5Gopen(work, "bar/inner")) < 0) TEST_ERROR
+ if (H5Gclose(inner) < 0) TEST_ERROR
PASSED();
/* Try renaming a symlink */
TESTING("symlink renaming");
- if (H5Glink(work, H5L_LINK_SOFT, "link_value", "link_one")<0) goto error;
- if (H5Gmove(work, "link_one", "link_two")<0) goto error;
+ if (H5Glink(work, H5L_TYPE_SOFT, "link_value", "link_one") < 0) TEST_ERROR
+ if (H5Gmove(work, "link_one", "link_two") < 0) TEST_ERROR
PASSED();
/* Cleanup */
- if (H5Gclose(work)<0) goto error;
+ if (H5Gclose(work) < 0) goto error;
return 0;
error:
@@ -355,61 +354,52 @@ test_rename(hid_t file)
*-------------------------------------------------------------------------
*/
static int
-test_new_move(void)
+test_new_move(hid_t fapl)
{
- hid_t fapl, file_a, file_b=(-1);
+ hid_t file_a, file_b=(-1);
hid_t grp_1=(-1), grp_2=(-1), grp_move=(-1), moved_grp=(-1);
char filename[1024];
TESTING("new move");
/* Create a second file */
- fapl = h5_fileaccess();
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if ((file_a=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0)
- goto error;
+ if((file_a = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
h5_fixname(FILENAME[2], fapl, filename, sizeof filename);
- if ((file_b=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0)
- goto error;
+ if((file_b = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create groups in first file */
- if((grp_1=H5Gcreate(file_a, "group1", 0))<0) goto error;
- if((grp_2=H5Gcreate(file_a, "group2", 0))<0) goto error;
- if((grp_move=H5Gcreate(grp_1, "group_move", 0))<0) goto error;
+ if((grp_1 = H5Gcreate(file_a, "group1", (size_t)0)) < 0) TEST_ERROR
+ if((grp_2 = H5Gcreate(file_a, "group2", (size_t)0)) < 0) TEST_ERROR
+ if((grp_move = H5Gcreate(grp_1, "group_move", (size_t)0)) < 0) TEST_ERROR
/* Create hard and soft links. */
- if(H5Glink2(grp_1, "group_move", H5L_LINK_HARD, H5G_SAME_LOC, "hard")<0)
- goto error;
- if(H5Glink2(grp_1, "/group1/group_move", H5L_LINK_SOFT, grp_2, "soft")<0)
- goto error;
+ if(H5Glink2(grp_1, "group_move", H5L_TYPE_HARD, H5G_SAME_LOC, "hard") < 0) TEST_ERROR
+ if(H5Glink2(grp_1, "/group1/group_move", H5L_TYPE_SOFT, grp_2, "soft") < 0) TEST_ERROR
/* Move a group within the file. Both of source and destination use
* H5G_SAME_LOC. Should fail. */
H5E_BEGIN_TRY {
- if(H5Gmove2(H5G_SAME_LOC, "group_move", H5G_SAME_LOC, "group_new_name")
- !=FAIL) goto error;
+ if(H5Gmove2(H5G_SAME_LOC, "group_move", H5G_SAME_LOC, "group_new_name") !=FAIL) TEST_ERROR
} H5E_END_TRY;
/* Move a group across files. Should fail. */
H5E_BEGIN_TRY {
- if(H5Gmove2(grp_1, "group_move", file_b, "group_new_name")!=FAIL)
- goto error;
+ if(H5Gmove2(grp_1, "group_move", file_b, "group_new_name")!=FAIL) TEST_ERROR
} H5E_END_TRY;
/* Move a group across groups in the same file. */
- if(H5Gmove2(grp_1, "group_move", grp_2, "group_new_name")<0)
- goto error;
+ if(H5Gmove2(grp_1, "group_move", grp_2, "group_new_name") < 0) TEST_ERROR
/* Open the group just moved to the new location. */
- if((moved_grp = H5Gopen(grp_2, "group_new_name"))<0)
- goto error;
+ if((moved_grp = H5Gopen(grp_2, "group_new_name")) < 0) TEST_ERROR
- H5Gclose(grp_1);
- H5Gclose(grp_2);
- H5Gclose(grp_move);
- H5Gclose(moved_grp);
- H5Fclose(file_a);
- H5Fclose(file_b);
+ if(H5Gclose(grp_1) < 0) TEST_ERROR
+ if(H5Gclose(grp_2) < 0) TEST_ERROR
+ if(H5Gclose(grp_move) < 0) TEST_ERROR
+ if(H5Gclose(moved_grp) < 0) TEST_ERROR
+ if(H5Fclose(file_a) < 0) TEST_ERROR
+ if(H5Fclose(file_b) < 0) TEST_ERROR
PASSED();
return 0;
@@ -444,9 +434,9 @@ test_new_move(void)
*-------------------------------------------------------------------------
*/
static int
-check_new_move(void)
+check_new_move(hid_t fapl)
{
- hid_t fapl, file;
+ hid_t file;
H5G_stat_t sb_hard1, sb_hard2;
char filename[1024];
char linkval[1024];
@@ -454,43 +444,27 @@ check_new_move(void)
TESTING("check new move function");
/* Open file */
- fapl = h5_fileaccess();
h5_fixname(FILENAME[1], fapl, filename, sizeof filename);
- if ((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl))<0) {
- goto error;
- }
+ if((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* Get hard link info */
- if(H5Gget_objinfo(file, "/group2/group_new_name", TRUE, &sb_hard1)<0)
- goto error;
- if(H5Gget_objinfo(file, "/group1/hard", TRUE, &sb_hard2)<0)
- goto error;
+ if(H5Gget_objinfo(file, "/group2/group_new_name", TRUE, &sb_hard1) < 0) TEST_ERROR
+ if(H5Gget_objinfo(file, "/group1/hard", TRUE, &sb_hard2) < 0) TEST_ERROR
/* Check hard links */
- if(H5G_GROUP!=sb_hard1.type || H5G_GROUP!=sb_hard2.type) {
- H5_FAILED();
- puts(" Unexpected object type, should have been a group");
- goto error;
- }
- if (HDmemcmp(&sb_hard1.objno, &sb_hard2.objno, sizeof(sb_hard1.objno))) {
- H5_FAILED();
- puts(" Hard link test failed. Link seems not to point to the ");
- puts(" expected file location.");
- goto error;
- }
+ if(H5G_GROUP!=sb_hard1.type || H5G_GROUP!=sb_hard2.type)
+ FAIL_PUTS_ERROR(" Unexpected object type, should have been a group")
+ if(HDmemcmp(&sb_hard1.objno, &sb_hard2.objno, sizeof(sb_hard1.objno)))
+ FAIL_PUTS_ERROR(" Hard link test failed. Link seems not to point to the expected file location.")
/* Check soft links */
- if (H5Gget_linkval(file, "group2/soft", sizeof linkval, linkval)<0) {
- goto error;
- }
- if (strcmp(linkval, "/group1/group_move")) {
- H5_FAILED();
- puts(" Soft link test failed. Wrong link value");
- goto error;
- }
+ if(H5Gget_linkval(file, "group2/soft", sizeof linkval, linkval) < 0) TEST_ERROR
+ if(HDstrcmp(linkval, "/group1/group_move"))
+ FAIL_PUTS_ERROR(" Soft link test failed. Wrong link value")
/* Cleanup */
- if(H5Fclose(file)<0) goto error;
+ if(H5Fclose(file) < 0) TEST_ERROR
+
PASSED();
return 0;
@@ -515,9 +489,8 @@ check_new_move(void)
*-------------------------------------------------------------------------
*/
static int
-test_filespace(void)
+test_filespace(hid_t fapl)
{
- hid_t fapl; /* File access property list */
hid_t fapl_nocache; /* File access property list with raw data cache turned off */
hid_t contig_dcpl; /* Dataset creation property list for contiguous dataset */
hid_t early_chunk_dcpl; /* Dataset creation property list for chunked dataset & early allocation */
@@ -553,91 +526,90 @@ test_filespace(void)
puts("Testing file space gets reused:");
/* Open file */
- fapl = h5_fileaccess();
h5_fixname(FILENAME[4], fapl, filename, sizeof filename);
/* Create FAPL with raw data cache disabled */
/* Create file access property list with raw data cache disabled */
- if ((fapl_nocache=H5Pcopy(fapl))<0) TEST_ERROR;
+ if ((fapl_nocache=H5Pcopy(fapl)) < 0) TEST_ERROR
/* Get the cache settings */
- if(H5Pget_cache(fapl_nocache,&mdc_nelmts,&rdcc_nelmts,&rdcc_nbytes,&rdcc_w0)<0) TEST_ERROR;
+ if(H5Pget_cache(fapl_nocache,&mdc_nelmts,&rdcc_nelmts,&rdcc_nbytes,&rdcc_w0) < 0) TEST_ERROR
/* Disable the raw data cache */
rdcc_nelmts=0;
rdcc_nbytes=0;
- if(H5Pset_cache(fapl_nocache,mdc_nelmts,rdcc_nelmts,rdcc_nbytes,rdcc_w0)<0) TEST_ERROR;
+ if(H5Pset_cache(fapl_nocache,mdc_nelmts,rdcc_nelmts,rdcc_nbytes,rdcc_w0) < 0) TEST_ERROR
/* Create empty file for size comparisons later */
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of an empty file */
- if((empty_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((empty_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Create common objects for datasets */
/* Create dataset creation property list for contigous storage */
- if ((contig_dcpl=H5Pcreate(H5P_DATASET_CREATE))<0) TEST_ERROR;
+ if ((contig_dcpl=H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
/* Make certain that space is allocated early */
- if(H5Pset_alloc_time(contig_dcpl, H5D_ALLOC_TIME_EARLY) < 0) TEST_ERROR;
+ if(H5Pset_alloc_time(contig_dcpl, H5D_ALLOC_TIME_EARLY) < 0) TEST_ERROR
/* Create dataset creation property list for chunked storage & early allocation */
- if ((early_chunk_dcpl=H5Pcopy(contig_dcpl))<0) TEST_ERROR;
+ if ((early_chunk_dcpl=H5Pcopy(contig_dcpl)) < 0) TEST_ERROR
/* Set chunk dimensions */
- if(H5Pset_chunk(early_chunk_dcpl, FILESPACE_NDIMS, chunk_dims) < 0) TEST_ERROR;
+ if(H5Pset_chunk(early_chunk_dcpl, FILESPACE_NDIMS, chunk_dims) < 0) TEST_ERROR
/* Create dataset creation property list for chunked storage & late allocation */
- if ((late_chunk_dcpl=H5Pcreate(H5P_DATASET_CREATE))<0) TEST_ERROR;
+ if ((late_chunk_dcpl=H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
/* Set chunk dimensions */
- if(H5Pset_chunk(late_chunk_dcpl, FILESPACE_NDIMS, chunk_dims) < 0) TEST_ERROR;
+ if(H5Pset_chunk(late_chunk_dcpl, FILESPACE_NDIMS, chunk_dims) < 0) TEST_ERROR
/* Create dataset creation property list for compressed, chunked storage & early allocation */
- if ((comp_dcpl=H5Pcopy(early_chunk_dcpl))<0) TEST_ERROR;
+ if ((comp_dcpl=H5Pcopy(early_chunk_dcpl)) < 0) TEST_ERROR
/* Enable compression & set level */
- if(H5Pset_deflate(comp_dcpl, FILESPACE_DEFLATE_LEVEL) < 0) TEST_ERROR;
+ if(H5Pset_deflate(comp_dcpl, FILESPACE_DEFLATE_LEVEL) < 0) TEST_ERROR
/* Create dataset creation property list for compact storage */
- if ((compact_dcpl=H5Pcreate(H5P_DATASET_CREATE))<0) TEST_ERROR;
+ if ((compact_dcpl=H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
/* Set to compact storage */
- if(H5Pset_layout(compact_dcpl, H5D_COMPACT) < 0) TEST_ERROR;
+ if(H5Pset_layout(compact_dcpl, H5D_COMPACT) < 0) TEST_ERROR
/* Create dataspace for datasets */
- if((space = H5Screate_simple(FILESPACE_NDIMS, dims, NULL))<0) TEST_ERROR;
+ if((space = H5Screate_simple(FILESPACE_NDIMS, dims, NULL)) < 0) TEST_ERROR
/* Create buffer for writing dataset */
- if((data = HDmalloc(sizeof(int)*FILESPACE_DIM0*FILESPACE_DIM1*FILESPACE_DIM2))==NULL) TEST_ERROR;
+ if((data = HDmalloc(sizeof(int)*FILESPACE_DIM0*FILESPACE_DIM1*FILESPACE_DIM2))==NULL) TEST_ERROR
/* Create single dataset (with contiguous storage & late allocation), remove it & verify file size */
TESTING(" contiguous dataset with late allocation");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single dataset to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, H5P_DEFAULT))<0) TEST_ERROR;
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -645,23 +617,23 @@ test_filespace(void)
TESTING(" contiguous dataset with early allocation");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single dataset to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, contig_dcpl))<0) TEST_ERROR;
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, contig_dcpl)) < 0) TEST_ERROR
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -669,23 +641,23 @@ test_filespace(void)
TESTING(" chunked dataset with late allocation");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single dataset to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, late_chunk_dcpl))<0) TEST_ERROR;
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, late_chunk_dcpl)) < 0) TEST_ERROR
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -693,23 +665,23 @@ test_filespace(void)
TESTING(" chunked dataset with early allocation");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single dataset to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, early_chunk_dcpl))<0) TEST_ERROR;
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, early_chunk_dcpl)) < 0) TEST_ERROR
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -717,23 +689,23 @@ test_filespace(void)
TESTING(" compressed, chunked dataset");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single dataset to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, comp_dcpl))<0) TEST_ERROR;
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, comp_dcpl)) < 0) TEST_ERROR
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -744,10 +716,10 @@ test_filespace(void)
TESTING(" re-writing compressed, chunked dataset");
/* Create file (using FAPL with disabled raw data cache) */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl_nocache))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl_nocache)) < 0) TEST_ERROR
/* Create a single dataset to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, comp_dcpl))<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, comp_dcpl)) < 0) TEST_ERROR
/* Alternate re-writing dataset with compressible & random data */
for(u=0; u<FILESPACE_REWRITE; u++) {
@@ -756,30 +728,30 @@ test_filespace(void)
*tmp_data++ = v*u;
/* Write the buffer to the dataset */
- if (H5Dwrite(dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, data)<0) TEST_ERROR;
+ if (H5Dwrite(dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, data) < 0) TEST_ERROR
/* Set buffer to different random numbers each time */
for (v=0, tmp_data=data; v<(FILESPACE_DIM0*FILESPACE_DIM1*FILESPACE_DIM2); v++)
*tmp_data++ = (int)HDrandom();
/* Write the buffer to the dataset */
- if (H5Dwrite(dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, data)<0) TEST_ERROR;
+ if (H5Dwrite(dataset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, data) < 0) TEST_ERROR
} /* end for */
/* Close dataset */
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -787,23 +759,23 @@ test_filespace(void)
TESTING(" compact dataset");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single dataset to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, compact_dcpl))<0) TEST_ERROR;
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, compact_dcpl)) < 0) TEST_ERROR
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -814,59 +786,59 @@ test_filespace(void)
TESTING(" object header continuations");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create datasets to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, contig_dcpl))<0) TEST_ERROR;
- if((dataset2 = H5Dcreate (file, DATASET2NAME, H5T_NATIVE_INT, space, contig_dcpl))<0) TEST_ERROR;
+ if((dataset = H5Dcreate(file, DATASETNAME, H5T_NATIVE_INT, space, contig_dcpl)) < 0) TEST_ERROR
+ if((dataset2 = H5Dcreate(file, DATASET2NAME, H5T_NATIVE_INT, space, contig_dcpl)) < 0) TEST_ERROR
/* Create a dataspace for the attributes */
- if((attr_space = H5Screate_simple(FILESPACE_ATTR_NDIMS, attr_dims, NULL))<0) TEST_ERROR;
+ if((attr_space = H5Screate_simple(FILESPACE_ATTR_NDIMS, attr_dims, NULL)) < 0) TEST_ERROR
/* Alternate adding attributes to each one */
- for(u=0; u<FILESPACE_NATTR; u++) {
+ for(u = 0; u < FILESPACE_NATTR; u++) {
/* Set the name of the attribute to create */
sprintf(objname,"%s %u",ATTRNAME,u);
/* Create an attribute on the first dataset */
- if((attr = H5Acreate (dataset, objname, H5T_NATIVE_INT, attr_space, H5P_DEFAULT))<0) TEST_ERROR;
+ if((attr = H5Acreate(dataset, objname, H5T_NATIVE_INT, attr_space, H5P_DEFAULT)) < 0) TEST_ERROR
/* Don't worry about writing the attribute - it will have a fill value */
/* Close the attribute on the first dataset */
- if(H5Aclose (attr)<0) TEST_ERROR;
+ if(H5Aclose(attr) < 0) TEST_ERROR
/* Create an attribute on the second dataset */
- if((attr = H5Acreate (dataset2, objname, H5T_NATIVE_INT, attr_space, H5P_DEFAULT))<0) TEST_ERROR;
+ if((attr = H5Acreate(dataset2, objname, H5T_NATIVE_INT, attr_space, H5P_DEFAULT)) < 0) TEST_ERROR
/* Don't worry about writing the attribute - it will have a fill value */
/* Close the attribute on the second dataset */
- if(H5Aclose (attr)<0) TEST_ERROR;
+ if(H5Aclose(attr) < 0) TEST_ERROR
/* Flush the file (to fix the sizes of object header buffers, etc) */
- if(H5Fflush(file,H5F_SCOPE_GLOBAL)<0) TEST_ERROR;
+ if(H5Fflush(file,H5F_SCOPE_GLOBAL) < 0) TEST_ERROR
} /* end for */
/* Close the dataspace for the attributes */
- if(H5Sclose (attr_space)<0) TEST_ERROR;
+ if(H5Sclose(attr_space) < 0) TEST_ERROR
/* Close datasets */
- if(H5Dclose (dataset)<0) TEST_ERROR;
- if(H5Dclose (dataset2)<0) TEST_ERROR;
+ if(H5Dclose(dataset) < 0) TEST_ERROR
+ if(H5Dclose(dataset2) < 0) TEST_ERROR
/* Remove the datasets */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
- if(H5Gunlink (file, DATASET2NAME)<0) TEST_ERROR;
+ if(H5Gunlink(file, DATASETNAME) < 0) TEST_ERROR
+ if(H5Gunlink(file, DATASET2NAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size = h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -874,26 +846,26 @@ test_filespace(void)
TESTING(" named datatype");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create datatype to commit */
- if((type = H5Tcopy (H5T_NATIVE_INT))<0) TEST_ERROR;
+ if((type = H5Tcopy (H5T_NATIVE_INT)) < 0) TEST_ERROR
/* Create a single named datatype to remove */
- if(H5Tcommit (file, TYPENAME, type)<0) TEST_ERROR;
- if(H5Tclose (type)<0) TEST_ERROR;
+ if(H5Tcommit (file, TYPENAME, type) < 0) TEST_ERROR
+ if(H5Tclose (type) < 0) TEST_ERROR
/* Remove the named datatype */
- if(H5Gunlink (file, TYPENAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, TYPENAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -901,23 +873,23 @@ test_filespace(void)
TESTING(" single group");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single group to remove */
- if((group = H5Gcreate (file, GROUPNAME, 0))<0) TEST_ERROR;
- if(H5Gclose (group)<0) TEST_ERROR;
+ if((group = H5Gcreate (file, GROUPNAME, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose (group) < 0) TEST_ERROR
/* Remove the group */
- if(H5Gunlink (file, GROUPNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, GROUPNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -925,32 +897,30 @@ test_filespace(void)
TESTING(" multiple groups");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a many groups to remove */
- for(u=0; u<UNLINK_NGROUPS; u++) {
- sprintf(objname,"%s %u",GROUPNAME,u);
- if((group = H5Gcreate (file, objname, 0))<0) TEST_ERROR;
- if(H5Gclose (group)<0) TEST_ERROR;
+ for(u = 0; u < UNLINK_NGROUPS; u++) {
+ sprintf(objname, "%s %u", GROUPNAME, u);
+ if((group = H5Gcreate(file, objname, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose (group) < 0) TEST_ERROR
} /* end for */
/* Remove the all the groups */
/* (Remove them in reverse order just to make file size calculation easier -QAK) */
- for(u=UNLINK_NGROUPS; u>0; u--) {
- sprintf(objname,"%s %u",GROUPNAME,(u-1));
- if(H5Gunlink (file, objname)<0) TEST_ERROR;
+ for(u = UNLINK_NGROUPS; u > 0; u--) {
+ sprintf(objname, "%s %u", GROUPNAME, (u - 1));
+ if(H5Gunlink(file, objname) < 0) TEST_ERROR
} /* end for */
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
-#ifdef H5_GROUP_REVISION
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size = h5_get_file_size(filename)) == 0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
-#endif /* H5_GROUP_REVISION */
+ if(file_size != empty_size) TEST_ERROR
PASSED();
@@ -958,28 +928,28 @@ test_filespace(void)
TESTING(" simple group hierarchy");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a small group hierarchy to remove */
- if((group = H5Gcreate (file, GROUPNAME, 0))<0) TEST_ERROR;
- if((group2 = H5Gcreate (group, GROUP2NAME, 0))<0) TEST_ERROR;
- if(H5Gclose (group2)<0) TEST_ERROR;
- if(H5Gclose (group)<0) TEST_ERROR;
+ if((group = H5Gcreate(file, GROUPNAME, (size_t)0)) < 0) TEST_ERROR
+ if((group2 = H5Gcreate (group, GROUP2NAME, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose (group2) < 0) TEST_ERROR
+ if(H5Gclose (group) < 0) TEST_ERROR
/* Remove the second group */
- if(H5Gunlink (file, GROUPNAME "/" GROUP2NAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, GROUPNAME "/" GROUP2NAME) < 0) TEST_ERROR
/* Remove the first group */
- if(H5Gunlink (file, GROUPNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, GROUPNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -987,34 +957,34 @@ test_filespace(void)
TESTING(" complex group hierarchy");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a complex group hierarchy to remove */
for(u=0; u<FILESPACE_TOP_GROUPS; u++) {
/* Create group */
sprintf(objname,"%s %u",GROUPNAME,u);
- if((group = H5Gcreate (file, objname, 0))<0) TEST_ERROR;
+ if((group = H5Gcreate (file, objname, (size_t)0)) < 0) TEST_ERROR
/* Create nested groups inside top groups */
for(v=0; v<FILESPACE_NESTED_GROUPS; v++) {
/* Create group */
sprintf(objname,"%s %u",GROUP2NAME,v);
- if((group2 = H5Gcreate (group, objname, 0))<0) TEST_ERROR;
+ if((group2 = H5Gcreate (group, objname, (size_t)0)) < 0) TEST_ERROR
/* Create datasets inside nested groups */
for(w=0; w<FILESPACE_NDATASETS; w++) {
/* Create & close a dataset */
sprintf(objname,"%s %u",DATASETNAME,w);
- if((dataset = H5Dcreate (group2, objname, H5T_NATIVE_INT, space, H5P_DEFAULT))<0) TEST_ERROR;
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if((dataset = H5Dcreate (group2, objname, H5T_NATIVE_INT, space, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Dclose (dataset) < 0) TEST_ERROR
} /* end for */
/* Close nested group */
- if(H5Gclose (group2)<0) TEST_ERROR;
+ if(H5Gclose (group2) < 0) TEST_ERROR
} /* end for */
/* Close top group */
- if(H5Gclose (group)<0) TEST_ERROR;
+ if(H5Gclose (group) < 0) TEST_ERROR
} /* end for */
/* Remove complex group hierarchy */
@@ -1022,47 +992,45 @@ test_filespace(void)
for(u=FILESPACE_TOP_GROUPS; u>0; u--) {
/* Open group */
sprintf(objname,"%s %u",GROUPNAME,(u-1));
- if((group = H5Gopen (file, objname))<0) TEST_ERROR;
+ if((group = H5Gopen (file, objname)) < 0) TEST_ERROR
/* Open nested groups inside top groups */
for(v=0; v<FILESPACE_NESTED_GROUPS; v++) {
/* Create group */
sprintf(objname,"%s %u",GROUP2NAME,v);
- if((group2 = H5Gopen (group, objname))<0) TEST_ERROR;
+ if((group2 = H5Gopen (group, objname)) < 0) TEST_ERROR
/* Remove datasets inside nested groups */
for(w=0; w<FILESPACE_NDATASETS; w++) {
/* Remove dataset */
sprintf(objname,"%s %u",DATASETNAME,w);
- if(H5Gunlink (group2, objname)<0) TEST_ERROR;
+ if(H5Gunlink (group2, objname) < 0) TEST_ERROR
} /* end for */
/* Close nested group */
- if(H5Gclose (group2)<0) TEST_ERROR;
+ if(H5Gclose (group2) < 0) TEST_ERROR
/* Remove nested group */
sprintf(objname,"%s %u",GROUP2NAME,v);
- if(H5Gunlink (group, objname)<0) TEST_ERROR;
+ if(H5Gunlink (group, objname) < 0) TEST_ERROR
} /* end for */
/* Close top group */
- if(H5Gclose (group)<0) TEST_ERROR;
+ if(H5Gclose (group) < 0) TEST_ERROR
/* Remove top group */
sprintf(objname,"%s %u",GROUPNAME,(u-1));
- if(H5Gunlink (file, objname)<0) TEST_ERROR;
+ if(H5Gunlink (file, objname) < 0) TEST_ERROR
} /* end for */
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
-#ifdef H5_GROUP_REVISION
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
-#endif /* H5_GROUP_REVISION */
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -1070,11 +1038,11 @@ test_filespace(void)
TESTING(" duplicate dataset");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single dataset to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, H5P_DEFAULT))<0) TEST_ERROR;
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Create another dataset with same name */
H5E_BEGIN_TRY {
@@ -1082,20 +1050,20 @@ test_filespace(void)
} H5E_END_TRY;
if (dataset>=0) {
H5Dclose(dataset);
- TEST_ERROR;
+ TEST_ERROR
} /* end if */
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -1103,32 +1071,32 @@ test_filespace(void)
TESTING(" duplicate group");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a single group to remove */
- if((group = H5Gcreate (file, GROUPNAME, 0))<0) TEST_ERROR;
- if(H5Gclose (group)<0) TEST_ERROR;
+ if((group = H5Gcreate (file, GROUPNAME, (size_t)0)) < 0) TEST_ERROR
+ if(H5Gclose (group) < 0) TEST_ERROR
/* Create another group with same name */
H5E_BEGIN_TRY {
- group = H5Gcreate (file, GROUPNAME, 0);
+ group = H5Gcreate (file, GROUPNAME, (size_t)0);
} H5E_END_TRY;
if (group>=0) {
H5Gclose(group);
- TEST_ERROR;
+ TEST_ERROR
} /* end if */
/* Remove the group */
- if(H5Gunlink (file, GROUPNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, GROUPNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -1136,36 +1104,36 @@ test_filespace(void)
TESTING(" duplicate named datatype");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create datatype to commit */
- if((type = H5Tcopy (H5T_NATIVE_INT))<0) TEST_ERROR;
+ if((type = H5Tcopy (H5T_NATIVE_INT)) < 0) TEST_ERROR
/* Create a single named datatype to remove */
- if(H5Tcommit (file, TYPENAME, type)<0) TEST_ERROR;
- if(H5Tclose (type)<0) TEST_ERROR;
+ if(H5Tcommit (file, TYPENAME, type) < 0) TEST_ERROR
+ if(H5Tclose (type) < 0) TEST_ERROR
/* Create datatype to commit */
- if((type = H5Tcopy (H5T_NATIVE_INT))<0) TEST_ERROR;
+ if((type = H5Tcopy (H5T_NATIVE_INT)) < 0) TEST_ERROR
/* Create another named datatype with same name */
H5E_BEGIN_TRY {
status = H5Tcommit (file, TYPENAME, type);
} H5E_END_TRY;
- if (status>=0) TEST_ERROR;
- if(H5Tclose (type)<0) TEST_ERROR;
+ if (status>=0) TEST_ERROR
+ if(H5Tclose (type) < 0) TEST_ERROR
/* Remove the named datatype */
- if(H5Gunlink (file, TYPENAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, TYPENAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -1173,21 +1141,21 @@ test_filespace(void)
TESTING(" duplicate attribute");
/* Create file */
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create datasets to remove */
- if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, contig_dcpl))<0) TEST_ERROR;
+ if((dataset = H5Dcreate (file, DATASETNAME, H5T_NATIVE_INT, space, contig_dcpl)) < 0) TEST_ERROR
/* Create a dataspace for the attributes */
- if((attr_space = H5Screate_simple(FILESPACE_ATTR_NDIMS, attr_dims, NULL))<0) TEST_ERROR;
+ if((attr_space = H5Screate_simple(FILESPACE_ATTR_NDIMS, attr_dims, NULL)) < 0) TEST_ERROR
/* Create an attribute on the dataset */
- if((attr = H5Acreate (dataset, ATTRNAME, H5T_NATIVE_INT, attr_space, H5P_DEFAULT))<0) TEST_ERROR;
+ if((attr = H5Acreate (dataset, ATTRNAME, H5T_NATIVE_INT, attr_space, H5P_DEFAULT)) < 0) TEST_ERROR
/* Don't worry about writing the attribute - it will have a fill value */
/* Close the attribute on the dataset */
- if(H5Aclose (attr)<0) TEST_ERROR;
+ if(H5Aclose (attr) < 0) TEST_ERROR
/* Create another attribute with same name */
H5E_BEGIN_TRY {
@@ -1195,26 +1163,26 @@ test_filespace(void)
} H5E_END_TRY;
if (attr>=0) {
H5Aclose(attr);
- TEST_ERROR;
+ TEST_ERROR
} /* end if */
/* Close the dataspace for the attributes */
- if(H5Sclose (attr_space)<0) TEST_ERROR;
+ if(H5Sclose (attr_space) < 0) TEST_ERROR
/* Close dataset */
- if(H5Dclose (dataset)<0) TEST_ERROR;
+ if(H5Dclose (dataset) < 0) TEST_ERROR
/* Remove the dataset */
- if(H5Gunlink (file, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink (file, DATASETNAME) < 0) TEST_ERROR
/* Close file */
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Get the size of the file */
- if((file_size=h5_get_file_size(filename))==0) TEST_ERROR;
+ if((file_size=h5_get_file_size(filename))==0) TEST_ERROR
/* Verify the file is correct size */
- if(file_size!=empty_size) TEST_ERROR;
+ if(file_size!=empty_size) TEST_ERROR
PASSED();
@@ -1224,16 +1192,15 @@ test_filespace(void)
HDfree(data);
/* Close property lists */
- if(H5Pclose(fapl)<0) TEST_ERROR;
- if(H5Pclose(fapl_nocache)<0) TEST_ERROR;
- if(H5Pclose(contig_dcpl)<0) TEST_ERROR;
- if(H5Pclose(early_chunk_dcpl)<0) TEST_ERROR;
- if(H5Pclose(late_chunk_dcpl)<0) TEST_ERROR;
- if(H5Pclose(comp_dcpl)<0) TEST_ERROR;
- if(H5Pclose(compact_dcpl)<0) TEST_ERROR;
+ if(H5Pclose(fapl_nocache) < 0) TEST_ERROR
+ if(H5Pclose(contig_dcpl) < 0) TEST_ERROR
+ if(H5Pclose(early_chunk_dcpl) < 0) TEST_ERROR
+ if(H5Pclose(late_chunk_dcpl) < 0) TEST_ERROR
+ if(H5Pclose(comp_dcpl) < 0) TEST_ERROR
+ if(H5Pclose(compact_dcpl) < 0) TEST_ERROR
/* Close dataspace */
- if(H5Sclose(space)<0) TEST_ERROR;
+ if(H5Sclose(space) < 0) TEST_ERROR
/* Indicate success */
/* Don't print final "PASSED", since we aren't on the correct line anymore */
@@ -1274,48 +1241,37 @@ static int test_create_unlink(const char *msg, hid_t fapl)
/* Create file */
h5_fixname(FILENAME[3], fapl, filename, sizeof filename);
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0)
- {
- H5_FAILED();
- puts(" Creating file failed");
- goto error;
- }
+ if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+ FAIL_PUTS_ERROR(" Creating file failed")
/* Create a many groups to remove */
for(u=0; u<UNLINK_NGROUPS; u++) {
sprintf(groupname,"%s %u",GROUPNAME,u);
- if((group = H5Gcreate (file, groupname, 0))<0)
- {
+ if((group = H5Gcreate (file, groupname, (size_t)0)) < 0) {
H5_FAILED();
- printf("group %s creation failed\n",groupname);
+ printf("group %s creation failed\n", groupname);
goto error;
- }
- if(H5Gclose (group)<0)
- {
+ } /* end if */
+ if(H5Gclose (group) < 0) {
H5_FAILED();
- printf("closing group %s failed\n",groupname);
+ printf("closing group %s failed\n", groupname);
goto error;
- }
+ } /* end if */
} /* end for */
/* Remove the all the groups */
for(u=0; u<UNLINK_NGROUPS; u++) {
sprintf(groupname,"%s %u",GROUPNAME,u);
- if(H5Gunlink (file, groupname)<0)
- {
+ if(H5Gunlink(file, groupname) < 0) {
H5_FAILED();
- printf("Unlinking group %s failed\n",groupname);
+ printf("Unlinking group %s failed\n", groupname);
goto error;
- }
+ } /* end if */
} /* end for */
/* Close file */
- if(H5Fclose(file)<0)
- {
- H5_FAILED();
- printf("Closing file failed\n");
- goto error;
- }
+ if(H5Fclose(file) < 0)
+ FAIL_PUTS_ERROR("Closing file failed")
PASSED();
return 0;
@@ -1341,9 +1297,8 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_link_slashes(void)
+test_link_slashes(hid_t fapl)
{
- hid_t fapl; /* File access property list */
hid_t fid; /* File ID */
hid_t gid,gid2; /* Group ID */
char filename[1024];
@@ -1351,41 +1306,40 @@ test_link_slashes(void)
TESTING("creating links with multiple slashes");
/* Create file */
- fapl = h5_fileaccess();
h5_fixname(FILENAME[5], fapl, filename, sizeof filename);
/* Create a file */
- if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT))<0) TEST_ERROR;
+ if((fid=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT)) < 0) TEST_ERROR
/* Create a group in the root group */
- if((gid = H5Gcreate(fid, SLASHES_GROUP_NAME, 0))<0) TEST_ERROR;
+ if((gid = H5Gcreate(fid, SLASHES_GROUP_NAME, (size_t)0)) < 0) TEST_ERROR
/* Create a nested group in the root group */
- if((gid2 = H5Gcreate(gid, SLASHES_GROUP_NAME, 0))<0) TEST_ERROR;
+ if((gid2 = H5Gcreate(gid, SLASHES_GROUP_NAME, (size_t)0)) < 0) TEST_ERROR
/* Close the nested group */
- if(H5Gclose(gid2)<0) TEST_ERROR;
+ if(H5Gclose(gid2) < 0) TEST_ERROR
/* Create a hard link to the nested group */
- if(H5Glink2(gid, SLASHES_GROUP_NAME, H5L_LINK_HARD, H5G_SAME_LOC, SLASHES_HARDLINK_NAME)<0) TEST_ERROR;
+ if(H5Glink2(gid, SLASHES_GROUP_NAME, H5L_TYPE_HARD, H5G_SAME_LOC, SLASHES_HARDLINK_NAME) < 0) TEST_ERROR
/* Create a soft link with a relative path to the nested group */
- if(H5Glink2(gid, SLASHES_GROUP_NAME, H5L_LINK_SOFT, H5G_SAME_LOC, SLASHES_SOFTLINK_NAME)<0) TEST_ERROR;
+ if(H5Glink2(gid, SLASHES_GROUP_NAME, H5L_TYPE_SOFT, H5G_SAME_LOC, SLASHES_SOFTLINK_NAME) < 0) TEST_ERROR
/* Create a soft link with the full path to the nested group */
- if(H5Glink2(gid, "////"SLASHES_GROUP_NAME""SLASHES_GROUP_NAME, H5L_LINK_SOFT, H5G_SAME_LOC, SLASHES_SOFTLINK2_NAME)<0) TEST_ERROR;
+ if(H5Glink2(gid, "////"SLASHES_GROUP_NAME""SLASHES_GROUP_NAME, H5L_TYPE_SOFT, H5G_SAME_LOC, SLASHES_SOFTLINK2_NAME) < 0) TEST_ERROR
/* Create a soft link to the root group */
- if(H5Glink2(gid, "////", H5L_LINK_SOFT, H5G_SAME_LOC, SLASHES_ROOTLINK_NAME)<0) TEST_ERROR;
+ if(H5Glink2(gid, "////", H5L_TYPE_SOFT, H5G_SAME_LOC, SLASHES_ROOTLINK_NAME) < 0) TEST_ERROR
/* Close the group */
- if(H5Gclose(gid)<0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Create a hard link to the existing group */
- if(H5Glink2(fid, SLASHES_GROUP_NAME, H5L_LINK_HARD, H5G_SAME_LOC, SLASHES_HARDLINK_NAME)<0) TEST_ERROR;
+ if(H5Glink2(fid, SLASHES_GROUP_NAME, H5L_TYPE_HARD, H5G_SAME_LOC, SLASHES_HARDLINK_NAME) < 0) TEST_ERROR
/* Close the file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1411,9 +1365,8 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_unlink_slashes(void)
+test_unlink_slashes(hid_t fapl)
{
- hid_t fapl; /* File access property list */
hid_t fid; /* File ID */
hid_t gid; /* Group ID */
char filename[1024];
@@ -1421,41 +1374,40 @@ test_unlink_slashes(void)
TESTING("deleting links with multiple slashes");
/* Create file */
- fapl = h5_fileaccess();
h5_fixname(FILENAME[5], fapl, filename, sizeof filename);
/* Open the file */
- if((fid=H5Fopen(filename, H5F_ACC_RDWR, H5P_DEFAULT))<0) TEST_ERROR;
+ if((fid=H5Fopen(filename, H5F_ACC_RDWR, H5P_DEFAULT)) < 0) TEST_ERROR
/* Open the top level group */
- if((gid = H5Gopen(fid, SLASHES_GROUP_NAME))<0) TEST_ERROR;
+ if((gid = H5Gopen(fid, SLASHES_GROUP_NAME)) < 0) TEST_ERROR
/* Delete the root link */
- if(H5Gunlink(gid,SLASHES_ROOTLINK_NAME)<0) TEST_ERROR;
+ if(H5Gunlink(gid,SLASHES_ROOTLINK_NAME) < 0) TEST_ERROR
/* Delete the soft link with the full path */
- if(H5Gunlink(gid,SLASHES_SOFTLINK2_NAME)<0) TEST_ERROR;
+ if(H5Gunlink(gid,SLASHES_SOFTLINK2_NAME) < 0) TEST_ERROR
/* Delete the soft link with the relative path */
- if(H5Gunlink(gid,SLASHES_SOFTLINK_NAME)<0) TEST_ERROR;
+ if(H5Gunlink(gid,SLASHES_SOFTLINK_NAME) < 0) TEST_ERROR
/* Delete the hard link */
- if(H5Gunlink(gid,SLASHES_HARDLINK_NAME)<0) TEST_ERROR;
+ if(H5Gunlink(gid,SLASHES_HARDLINK_NAME) < 0) TEST_ERROR
/* Delete the group itself */
- if(H5Gunlink(gid,SLASHES_GROUP_NAME)<0) TEST_ERROR;
+ if(H5Gunlink(gid,SLASHES_GROUP_NAME) < 0) TEST_ERROR
/* Close the group */
- if(H5Gclose(gid)<0) TEST_ERROR;
+ if(H5Gclose(gid) < 0) TEST_ERROR
/* Delete the hard link */
- if(H5Gunlink(fid,SLASHES_HARDLINK_NAME)<0) TEST_ERROR;
+ if(H5Gunlink(fid,SLASHES_HARDLINK_NAME) < 0) TEST_ERROR
/* Delete the group itself */
- if(H5Gunlink(fid,SLASHES_GROUP_NAME)<0) TEST_ERROR;
+ if(H5Gunlink(fid,SLASHES_GROUP_NAME) < 0) TEST_ERROR
/* Close the file */
- if(H5Fclose(fid)<0) TEST_ERROR;
+ if(H5Fclose(fid) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1472,20 +1424,20 @@ static int delete_node (hid_t pid, hid_t id)
char name[256]; /* Name of object to close */
/* Get the name of the object to delete */
- if(H5Iget_name(id, name, sizeof(name))<0) return (-1);
+ if(H5Iget_name(id, name, sizeof(name)) < 0) return (-1);
/* Close the object */
- if(H5Gclose (id)<0) return(-1);
+ if(H5Gclose (id) < 0) return(-1);
/* Unlink the object */
- if(H5Gunlink (pid, name)<0) return(-1);
+ if(H5Gunlink (pid, name) < 0) return(-1);
/* If this object is the right-most child, try opening the previous object */
if(HDstrcmp(name,"/Zone81")==0) {
hid_t gid;
- if((gid = H5Gopen (pid, "/Zone80"))<0) return(-1);
- if(H5Gclose(gid)<0) return(-1);
+ if((gid = H5Gopen (pid, "/Zone80")) < 0) return(-1);
+ if(H5Gclose(gid) < 0) return(-1);
} /* end if */
/* Indicate success */
@@ -1522,29 +1474,29 @@ test_unlink_rightleaf(hid_t fid)
/* Allocate space for the group IDs */
gids = (hid_t *) HDmalloc (ngroups * sizeof(hid_t));
- if(gids==NULL) TEST_ERROR;
+ if(gids==NULL) TEST_ERROR
- if((rootid = H5Gopen (fid, "/"))<0) TEST_ERROR;
+ if((rootid = H5Gopen (fid, "/")) < 0) TEST_ERROR
/* Create all the groups */
for (n = 0; n < ngroups; n++) {
sprintf(name, "Zone%d", n + 1);
- if((gids[n] = H5Gcreate (rootid, name, 0))<0) TEST_ERROR;
+ if((gids[n] = H5Gcreate (rootid, name, (size_t)0)) < 0) TEST_ERROR
} /* end for */
/* Unlink & re-create each group */
for (n = 0; n < ngroups; n++) {
- if(delete_node (rootid, gids[n])<0) TEST_ERROR;
+ if(delete_node (rootid, gids[n]) < 0) TEST_ERROR
sprintf(name, "Zone%d", n + 1);
- if((gids[n] = H5Gcreate (rootid, name, 0))<0) TEST_ERROR;
+ if((gids[n] = H5Gcreate (rootid, name, (size_t)0)) < 0) TEST_ERROR
} /* end for */
/* Close all the groups */
for (n = 0; n < ngroups; n++)
- if(H5Gclose(gids[n])<0) TEST_ERROR;
+ if(H5Gclose(gids[n]) < 0) TEST_ERROR
/* Close root group ID */
- if(H5Gclose(rootid)<0) TEST_ERROR;
+ if(H5Gclose(rootid) < 0) TEST_ERROR
/* Free memory */
HDfree(gids);
@@ -1586,29 +1538,29 @@ test_unlink_rightnode(hid_t fid)
/* Allocate space for the group IDs */
gids = (hid_t *) HDmalloc (ngroups * sizeof(hid_t));
- if(gids==NULL) TEST_ERROR;
+ if(gids==NULL) TEST_ERROR
- if((rootid = H5Gopen (fid, "/"))<0) TEST_ERROR;
+ if((rootid = H5Gopen (fid, "/")) < 0) TEST_ERROR
/* Create all the groups */
for (n = 0; n < ngroups; n++) {
sprintf(name, "ZoneB%d", n + 1);
- if((gids[n] = H5Gcreate (rootid, name, 0))<0) TEST_ERROR;
+ if((gids[n] = H5Gcreate (rootid, name, (size_t)0)) < 0) TEST_ERROR
} /* end for */
/* Close all the groups */
for (n = 0; n < ngroups; n++)
- if(H5Gclose(gids[n])<0) TEST_ERROR;
+ if(H5Gclose(gids[n]) < 0) TEST_ERROR
/* Unlink specific objects to trigger deletion of right leaf in non-leaf node */
- if(H5Gunlink(fid,"/ZoneB77")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneB78")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneB79")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneB8")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneB80")<0) TEST_ERROR;
+ if(H5Gunlink(fid,"/ZoneB77") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneB78") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneB79") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneB8") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneB80") < 0) TEST_ERROR
/* Close root group ID */
- if(H5Gclose(rootid)<0) TEST_ERROR;
+ if(H5Gclose(rootid) < 0) TEST_ERROR
/* Free memory */
HDfree(gids);
@@ -1650,172 +1602,172 @@ test_unlink_middlenode(hid_t fid)
/* Allocate space for the group IDs */
gids = (hid_t *) HDmalloc (ngroups * sizeof(hid_t));
- if(gids==NULL) TEST_ERROR;
+ if(gids==NULL) TEST_ERROR
- if((rootid = H5Gopen (fid, "/"))<0) TEST_ERROR;
+ if((rootid = H5Gopen (fid, "/")) < 0) TEST_ERROR
/* Create all the groups */
for (n = 0; n < ngroups; n++) {
sprintf(name, "ZoneC%d", n + 1);
- if((gids[n] = H5Gcreate (rootid, name, 0))<0) TEST_ERROR;
+ if((gids[n] = H5Gcreate (rootid, name, (size_t)0)) < 0) TEST_ERROR
} /* end for */
/* Close all the groups */
for (n = 0; n < ngroups; n++)
- if(H5Gclose(gids[n])<0) TEST_ERROR;
+ if(H5Gclose(gids[n]) < 0) TEST_ERROR
/* Unlink specific objects to trigger deletion of all leafs in "interior" non-leaf node */
- if(H5Gunlink(fid,"/ZoneC11")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC110")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC111")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC112")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC113")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC114")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC115")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC116")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC117")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC118")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC119")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC12")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC120")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC121")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC122")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC123")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC124")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC125")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC126")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC127")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC128")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC129")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC13")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC130")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC131")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC132")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC133")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC134")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC135")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC136")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC137")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC138")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC139")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC14")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC140")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC141")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC142")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC143")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC144")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC145")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC146")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC147")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC148")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC149")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC15")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC150")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC151")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC152")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC153")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC154")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC155")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC156")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC157")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC158")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC159")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC16")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC160")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC161")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC162")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC163")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC164")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC165")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC166")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC167")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC168")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC169")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC17")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC170")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC171")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC172")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC173")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC174")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC175")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC176")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC177")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC178")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC179")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC18")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC180")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC19")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC2")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC20")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC21")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC22")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC23")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC24")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC25")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC26")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC27")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC28")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC29")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC3")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC30")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC31")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC32")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC33")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC34")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC35")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC36")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC37")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC38")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC39")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC4")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC40")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC41")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC42")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC43")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC44")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC45")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC46")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC47")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC48")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC49")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC5")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC50")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC51")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC52")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC53")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC54")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC55")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC56")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC57")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC58")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC59")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC6")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC60")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC61")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC62")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC63")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC64")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC65")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC66")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC67")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC68")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC69")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC7")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC70")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC71")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC72")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC73")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC74")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC75")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC76")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC77")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC78")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC79")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC8")<0) TEST_ERROR;
- if(H5Gunlink(fid,"/ZoneC80")<0) TEST_ERROR;
+ if(H5Gunlink(fid,"/ZoneC11") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC110") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC111") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC112") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC113") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC114") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC115") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC116") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC117") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC118") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC119") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC12") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC120") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC121") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC122") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC123") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC124") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC125") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC126") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC127") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC128") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC129") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC13") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC130") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC131") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC132") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC133") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC134") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC135") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC136") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC137") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC138") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC139") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC14") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC140") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC141") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC142") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC143") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC144") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC145") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC146") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC147") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC148") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC149") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC15") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC150") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC151") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC152") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC153") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC154") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC155") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC156") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC157") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC158") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC159") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC16") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC160") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC161") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC162") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC163") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC164") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC165") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC166") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC167") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC168") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC169") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC17") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC170") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC171") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC172") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC173") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC174") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC175") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC176") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC177") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC178") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC179") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC18") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC180") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC19") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC2") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC20") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC21") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC22") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC23") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC24") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC25") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC26") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC27") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC28") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC29") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC3") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC30") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC31") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC32") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC33") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC34") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC35") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC36") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC37") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC38") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC39") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC4") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC40") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC41") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC42") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC43") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC44") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC45") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC46") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC47") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC48") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC49") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC5") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC50") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC51") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC52") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC53") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC54") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC55") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC56") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC57") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC58") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC59") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC6") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC60") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC61") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC62") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC63") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC64") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC65") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC66") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC67") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC68") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC69") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC7") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC70") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC71") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC72") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC73") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC74") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC75") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC76") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC77") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC78") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC79") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC8") < 0) TEST_ERROR
+ if(H5Gunlink(fid,"/ZoneC80") < 0) TEST_ERROR
/* Close root group ID */
- if(H5Gclose(rootid)<0) TEST_ERROR;
+ if(H5Gclose(rootid) < 0) TEST_ERROR
/* Free memory */
HDfree(gids);
@@ -1845,48 +1797,46 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_resurrect_dataset(void)
+test_resurrect_dataset(hid_t fapl)
{
- hid_t f=-1, s=-1, d=-1, fapl=-1;
+ hid_t f=-1, s=-1, d=-1;
char filename[1024];
TESTING("resurrecting dataset after deletion");
/* Create file */
- fapl = h5_fileaccess();
h5_fixname(FILENAME[6], fapl, filename, sizeof filename);
/* Create the file */
- if((f = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((f = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a dataset in the file */
- if((s = H5Screate(H5S_SCALAR))<0) TEST_ERROR;
- if((d = H5Dcreate(f, DATASETNAME, H5T_NATIVE_INT, s, H5P_DEFAULT))<0) TEST_ERROR;
- if(H5Sclose(s)<0) TEST_ERROR;
+ if((s = H5Screate(H5S_SCALAR)) < 0) TEST_ERROR
+ if((d = H5Dcreate(f, DATASETNAME, H5T_NATIVE_INT, s, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Sclose(s) < 0) TEST_ERROR
/* Unlink the dataset while it's open (will mark it for deletion when closed) */
- if(H5Gunlink(f, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink(f, DATASETNAME) < 0) TEST_ERROR
/* Check that dataset name is NULL */
- if(H5Iget_name(d, NULL, 0) != 0) TEST_ERROR;
+ if(H5Iget_name(d, NULL, (size_t)0) != 0) TEST_ERROR
/* Re-link the dataset to the group hierarchy (shouldn't get deleted now) */
- if(H5Glink2(d, ".", H5L_LINK_HARD, f, DATASET2NAME)<0) TEST_ERROR;
+ if(H5Glink2(d, ".", H5L_TYPE_HARD, f, DATASET2NAME) < 0) TEST_ERROR
/* Close things */
- if(H5Dclose(d)<0) TEST_ERROR;
- if(H5Fclose(f)<0) TEST_ERROR;
+ if(H5Dclose(d) < 0) TEST_ERROR
+ if(H5Fclose(f) < 0) TEST_ERROR
/* Re-open the file */
- if((f=H5Fopen(filename, H5F_ACC_RDONLY, fapl))<0) TEST_ERROR;
+ if((f=H5Fopen(filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* Attempt to open the dataset under the new name */
- if((d=H5Dopen(f,DATASET2NAME))<0) TEST_ERROR;
+ if((d=H5Dopen(f,DATASET2NAME)) < 0) TEST_ERROR
/* Close things */
- if(H5Dclose(d)<0) TEST_ERROR;
- if(H5Fclose(f)<0) TEST_ERROR;
- if(H5Pclose(fapl)<0) TEST_ERROR;
+ if(H5Dclose(d) < 0) TEST_ERROR
+ if(H5Fclose(f) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1896,7 +1846,6 @@ error:
H5Sclose(s);
H5Dclose(d);
H5Fclose(f);
- H5Pclose(fapl);
} H5E_END_TRY;
return 1;
} /* end test_resurrect_dataset() */
@@ -1919,46 +1868,45 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_resurrect_datatype(void)
+test_resurrect_datatype(hid_t fapl)
{
- hid_t file=-1, type=-1, fapl=-1;
+ hid_t file=-1, type=-1;
char filename[1024];
TESTING("resurrecting datatype after deletion");
/* Create file */
- fapl = h5_fileaccess();
h5_fixname(FILENAME[7], fapl, filename, sizeof filename);
/* Create the file */
- if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a named datatype in the file */
- if((type = H5Tcopy (H5T_NATIVE_INT))<0) TEST_ERROR;
- if(H5Tcommit (file, TYPENAME, type)<0) TEST_ERROR;
+ if((type = H5Tcopy (H5T_NATIVE_INT)) < 0) TEST_ERROR
+ if(H5Tcommit (file, TYPENAME, type) < 0) TEST_ERROR
/* Unlink the datatype while it's open (will mark it for deletion when closed) */
- if(H5Gunlink(file, TYPENAME)<0) TEST_ERROR;
+ if(H5Gunlink(file, TYPENAME) < 0) TEST_ERROR
/* Check that datatype name is NULL */
- if(H5Iget_name(type, NULL, 0) != 0) TEST_ERROR;
+ if(H5Iget_name(type, NULL, (size_t)0) != 0) TEST_ERROR
/* Re-link the datatype to the group hierarchy (shouldn't get deleted now) */
- if(H5Glink2(type, ".", H5L_LINK_HARD, file, TYPE2NAME) < 0) TEST_ERROR;
+ if(H5Glink2(type, ".", H5L_TYPE_HARD, file, TYPE2NAME) < 0) TEST_ERROR
/* Close things */
- if(H5Tclose(type)<0) TEST_ERROR;
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Tclose(type) < 0) TEST_ERROR
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Re-open the file */
- if((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl))<0) TEST_ERROR;
+ if((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* Attempt to open the datatype under the new name */
- if((type=H5Topen(file,TYPE2NAME))<0) TEST_ERROR;
+ if((type=H5Topen(file,TYPE2NAME)) < 0) TEST_ERROR
/* Close things */
- if(H5Tclose(type)<0) TEST_ERROR;
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Tclose(type) < 0) TEST_ERROR
+ if(H5Fclose(file) < 0) TEST_ERROR
PASSED();
return 0;
@@ -1989,45 +1937,44 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_resurrect_group(void)
+test_resurrect_group(hid_t fapl)
{
- hid_t file=-1, group=-1, fapl=-1;
+ hid_t file=-1, group=-1;
char filename[1024];
TESTING("resurrecting group after deletion");
/* Create file */
- fapl = h5_fileaccess();
h5_fixname(FILENAME[8], fapl, filename, sizeof filename);
/* Create the file */
- if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
+ if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create a group in the file */
- if((group = H5Gcreate (file, GROUPNAME, 0))<0) TEST_ERROR;
+ if((group = H5Gcreate (file, GROUPNAME, (size_t)0)) < 0) TEST_ERROR
/* Unlink the group while it's open (will mark it for deletion when closed) */
- if(H5Gunlink(file, GROUPNAME)<0) TEST_ERROR;
+ if(H5Gunlink(file, GROUPNAME) < 0) TEST_ERROR
/* Check that group's name is NULL */
- if(H5Iget_name(group, NULL, 0) != 0) TEST_ERROR;
+ if(H5Iget_name(group, NULL, (size_t)0) != 0) TEST_ERROR
/* Re-link the group into the group hierarchy (shouldn't get deleted now) */
- if(H5Glink2(group, ".", H5L_LINK_HARD, file, GROUP2NAME)<0) TEST_ERROR;
+ if(H5Glink2(group, ".", H5L_TYPE_HARD, file, GROUP2NAME) < 0) TEST_ERROR
/* Close things */
- if(H5Gclose(group)<0) TEST_ERROR;
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Gclose(group) < 0) TEST_ERROR
+ if(H5Fclose(file) < 0) TEST_ERROR
/* Re-open the file */
- if((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl))<0) TEST_ERROR;
+ if((file=H5Fopen(filename, H5F_ACC_RDONLY, fapl)) < 0) TEST_ERROR
/* Attempt to open the datatype under the new name */
- if((group=H5Gopen(file,GROUP2NAME))<0) TEST_ERROR;
+ if((group=H5Gopen(file,GROUP2NAME)) < 0) TEST_ERROR
/* Close things */
- if(H5Gclose(group)<0) TEST_ERROR;
- if(H5Fclose(file)<0) TEST_ERROR;
+ if(H5Gclose(group) < 0) TEST_ERROR
+ if(H5Fclose(file) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2057,9 +2004,8 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_unlink_chunked_dataset(void)
+test_unlink_chunked_dataset(hid_t fapl)
{
- hid_t fapl_id=-1;
hid_t file_id=-1;
hid_t dset_id=-1;
hid_t space_id=-1;
@@ -2072,50 +2018,46 @@ test_unlink_chunked_dataset(void)
TESTING("unlinking chunked dataset");
/* Create file */
- fapl_id = h5_fileaccess();
- h5_fixname(FILENAME[9], fapl_id, filename, sizeof filename);
+ h5_fixname(FILENAME[9], fapl, filename, sizeof filename);
/* Create the file */
- if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl_id))<0) TEST_ERROR;
+ if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create the dataspace */
- if((space_id=H5Screate_simple(FILESPACE_NDIMS,dims,max_dims))<0) TEST_ERROR;
+ if((space_id=H5Screate_simple(FILESPACE_NDIMS,dims,max_dims)) < 0) TEST_ERROR
/* Create the dataset creation filter */
- if((dcpl_id=H5Pcreate(H5P_DATASET_CREATE))<0) TEST_ERROR;
+ if((dcpl_id=H5Pcreate(H5P_DATASET_CREATE)) < 0) TEST_ERROR
/* Set to chunked storage */
- if(H5Pset_chunk(dcpl_id,FILESPACE_NDIMS,chunk_dims)<0) TEST_ERROR;
+ if(H5Pset_chunk(dcpl_id,FILESPACE_NDIMS,chunk_dims) < 0) TEST_ERROR
/* Set to early space allocation */
- if(H5Pset_alloc_time(dcpl_id,H5D_ALLOC_TIME_EARLY)<0) TEST_ERROR;
+ if(H5Pset_alloc_time(dcpl_id,H5D_ALLOC_TIME_EARLY) < 0) TEST_ERROR
/* Create the dataset */
- if((dset_id = H5Dcreate(file_id,DATASETNAME,H5T_NATIVE_INT,space_id,dcpl_id))<0) TEST_ERROR;
+ if((dset_id = H5Dcreate(file_id,DATASETNAME,H5T_NATIVE_INT,space_id,dcpl_id)) < 0) TEST_ERROR
/* Close the dataspace */
- if(H5Sclose(space_id)<0) TEST_ERROR;
+ if(H5Sclose(space_id) < 0) TEST_ERROR
/* Close the dataset creation property list */
- if(H5Pclose(dcpl_id)<0) TEST_ERROR;
+ if(H5Pclose(dcpl_id) < 0) TEST_ERROR
/* Close the dataset */
- if(H5Dclose(dset_id)<0) TEST_ERROR;
+ if(H5Dclose(dset_id) < 0) TEST_ERROR
/* Close the file */
- if(H5Fclose(file_id)<0) TEST_ERROR;
+ if(H5Fclose(file_id) < 0) TEST_ERROR
/* Re-open the file */
- if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl_id))<0) TEST_ERROR;
+ if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Delete the dataset */
- if(H5Gunlink(file_id, DATASETNAME)<0) TEST_ERROR;
+ if(H5Gunlink(file_id, DATASETNAME) < 0) TEST_ERROR
/* Close the file */
- if(H5Fclose(file_id)<0) TEST_ERROR;
-
- /* Close the file access property list */
- if(H5Pclose(fapl_id)<0) TEST_ERROR;
+ if(H5Fclose(file_id) < 0) TEST_ERROR
PASSED();
return 0;
@@ -2126,12 +2068,10 @@ error:
H5Sclose(space_id);
H5Dclose(dset_id);
H5Fclose(file_id);
- H5Pclose(fapl_id);
} H5E_END_TRY;
return 1;
} /* end test_unlink_chunked_dataset() */
-#ifdef H5_GROUP_REVISION
/*-------------------------------------------------------------------------
* Function: test_full_group_compact
@@ -2147,9 +2087,8 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_full_group_compact(void)
+test_full_group_compact(hid_t fapl)
{
- hid_t fapl_id = -1;
hid_t file_id = -1;
hid_t gid = -1, gid2 = -1; /* Group IDs */
H5G_stat_t sb; /* Stat buffer for object */
@@ -2162,12 +2101,11 @@ test_full_group_compact(void)
TESTING("unlinking non-empty compact group");
- /* Create file */
- fapl_id = h5_fileaccess();
- h5_fixname(FILENAME[10], fapl_id, filename, sizeof filename);
+ /* Create filename */
+ h5_fixname(FILENAME[10], fapl, filename, sizeof filename);
/* Create the file */
- if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl_id))<0) TEST_ERROR
+ if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group to link objects to */
if((gid = H5Gcreate(file_id, "/keep", (size_t)0)) < 0) TEST_ERROR
@@ -2189,22 +2127,22 @@ test_full_group_compact(void)
if((keep_size = h5_get_file_size(filename)) == 0) TEST_ERROR
/* Re-open the file */
- if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl_id)) < 0) TEST_ERROR
+ if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Create group to delete */
- if((gid = H5Gcreate(file_id, "/delete", (size_t)0)) < 0) goto error;
+ if((gid = H5Gcreate(file_id, "/delete", (size_t)0)) < 0) TEST_ERROR
/* Create external link (doesn't matter if it dangles) */
if(H5Lcreate_external("foo.h5", "/dst", gid, "external", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create soft link (doesn't matter if it dangles) */
- if(H5Glink2(file_id, "/foo", H5L_LINK_SOFT, gid, "soft") < 0) TEST_ERROR
+ if(H5Glink2(file_id, "/foo", H5L_TYPE_SOFT, gid, "soft") < 0) TEST_ERROR
/* Create hard links to objects in group to keep */
for(u = 0; u < FULL_GROUP_NUM_KEEP; u++) {
sprintf(objname, "/keep/keep %u\n", u);
sprintf(objname2, "keep %u\n", u);
- if(H5Glink2(file_id, objname, H5L_LINK_HARD, gid, objname2) < 0) TEST_ERROR
+ if(H5Glink2(file_id, objname, H5L_TYPE_HARD, gid, objname2) < 0) TEST_ERROR
} /* end for */
/* Create several objects to delete */
@@ -2215,9 +2153,9 @@ test_full_group_compact(void)
} /* end for */
/* Check on group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, NULL) != TRUE) TEST_ERROR;
- if(H5G_has_stab_test(gid) == TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, NULL) != TRUE) TEST_ERROR
+ if(H5G_has_stab_test(gid) == TRUE) TEST_ERROR
/* Close group with objects to delete */
if(H5Gclose(gid) < 0) TEST_ERROR
@@ -2234,7 +2172,7 @@ test_full_group_compact(void)
/* Re-open the file */
- if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl_id)) < 0) TEST_ERROR
+ if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Delete the full group */
if(H5Gunlink(file_id, "/delete") < 0) TEST_ERROR
@@ -2255,9 +2193,6 @@ test_full_group_compact(void)
/* Verify the file is correct size */
if(file_size != keep_size) TEST_ERROR
- /* Close the file access property list */
- if(H5Pclose(fapl_id) < 0) TEST_ERROR
-
PASSED();
return 0;
@@ -2266,7 +2201,6 @@ error:
H5Gclose(gid2);
H5Gclose(gid);
H5Fclose(file_id);
- H5Pclose(fapl_id);
} H5E_END_TRY;
return 1;
} /* end test_full_group_compact() */
@@ -2286,25 +2220,26 @@ error:
*-------------------------------------------------------------------------
*/
static int
-test_full_group_dense(void)
+test_full_group_dense(hid_t fapl)
{
- hid_t fapl_id = -1;
hid_t file_id = -1;
+ hid_t gcpl = (-1); /* Group creation property list ID */
hid_t gid = -1, gid2 = -1; /* Group IDs */
H5G_stat_t sb; /* Stat buffer for object */
char objname[128]; /* Buffer for name of objects to create */
char objname2[128]; /* Buffer for name of objects to create */
char filename[1024]; /* Buffer for filename */
+ off_t keep_size; /* Size of the file with objects to keep */
+ off_t file_size; /* Size of each file created */
unsigned u; /* Local index variable */
TESTING("unlinking non-empty dense group");
- /* Create file */
- fapl_id = h5_fileaccess();
- h5_fixname(FILENAME[10], fapl_id, filename, sizeof filename);
+ /* Create filename */
+ h5_fixname(FILENAME[10], fapl, filename, sizeof filename);
/* Create the file */
- if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl_id))<0) TEST_ERROR
+ if((file_id = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) TEST_ERROR
/* Create group to link objects to */
if((gid = H5Gcreate(file_id, "/keep", (size_t)0)) < 0) TEST_ERROR
@@ -2319,20 +2254,42 @@ test_full_group_dense(void)
/* Close group with objects to keep */
if(H5Gclose(gid) < 0) TEST_ERROR
+ /* Close the file */
+ if(H5Fclose(file_id) < 0) TEST_ERROR
+
+ /* Get the size of the file with only the objects to keep */
+ if((keep_size = h5_get_file_size(filename)) == 0) TEST_ERROR
+
+ /* Re-open the file */
+ if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
+
+ /* Set group creation "est. link info" closer to what will actually occur */
+ if((gcpl = H5Pcreate(H5P_GROUP_CREATE)) < 0) TEST_ERROR
+ if(H5Pset_est_link_info(gcpl, FULL_GROUP_EST_NUM_ENTRIES, FULL_GROUP_EST_ENTRY_LEN) < 0) TEST_ERROR
+
/* Create group to delete */
- if((gid = H5Gcreate(file_id, "/delete", (size_t)0)) < 0) goto error;
+ /* (use non-default GCPL, in order to make certain that the group's object
+ * header is large enough to hold the links inserted without allocating
+ * another object header message chunk - in order to make the file size
+ * computation below easier/correct - QAK)
+ */
+ if((gid = H5Gcreate_expand(file_id, gcpl, H5P_DEFAULT)) < 0) TEST_ERROR
+ if(H5Llink(file_id, "/delete", gid, H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
+
+ /* Close GCPL */
+ if(H5Pclose(gcpl) < 0) TEST_ERROR
/* Create external link (doesn't matter if it dangles) */
if(H5Lcreate_external("foo.h5", "/dst", gid, "external", H5P_DEFAULT, H5P_DEFAULT) < 0) TEST_ERROR
/* Create soft link (doesn't matter if it dangles) */
- if(H5Glink2(file_id, "/foo", H5L_LINK_SOFT, gid, "soft") < 0) TEST_ERROR
+ if(H5Glink2(file_id, "/foo", H5L_TYPE_SOFT, gid, "soft") < 0) TEST_ERROR
/* Create hard links to objects in group to keep */
for(u = 0; u < FULL_GROUP_NUM_KEEP; u++) {
sprintf(objname, "/keep/keep %u\n", u);
sprintf(objname2, "keep %u\n", u);
- if(H5Glink2(file_id, objname, H5L_LINK_HARD, gid, objname2) < 0) TEST_ERROR
+ if(H5Glink2(file_id, objname, H5L_TYPE_HARD, gid, objname2) < 0) TEST_ERROR
} /* end for */
/* Create several objects to delete */
@@ -2343,9 +2300,9 @@ test_full_group_dense(void)
} /* end for */
/* Check on group's status */
- if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR;
- if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR;
- if(H5G_has_stab_test(gid) != TRUE) TEST_ERROR;
+ if(H5G_is_empty_test(gid) == TRUE) TEST_ERROR
+ if(H5G_has_links_test(gid, NULL) == TRUE) TEST_ERROR
+ if(H5G_is_new_dense_test(gid) != TRUE) TEST_ERROR
/* Close group with objects to delete */
if(H5Gclose(gid) < 0) TEST_ERROR
@@ -2362,7 +2319,7 @@ test_full_group_dense(void)
/* Re-open the file */
- if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl_id)) < 0) TEST_ERROR
+ if((file_id = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) TEST_ERROR
/* Delete the full group */
if(H5Gunlink(file_id, "/delete") < 0) TEST_ERROR
@@ -2377,8 +2334,11 @@ test_full_group_dense(void)
/* Close the file */
if(H5Fclose(file_id) < 0) TEST_ERROR
- /* Close the file access property list */
- if(H5Pclose(fapl_id) < 0) TEST_ERROR
+ /* Get the size of the file */
+ if((file_size = h5_get_file_size(filename)) == 0) TEST_ERROR
+
+ /* Verify the file is correct size */
+ if(file_size != keep_size) TEST_ERROR
PASSED();
return 0;
@@ -2387,12 +2347,11 @@ error:
H5E_BEGIN_TRY {
H5Gclose(gid2);
H5Gclose(gid);
+ H5Pclose(gcpl);
H5Fclose(file_id);
- H5Pclose(fapl_id);
} H5E_END_TRY;
return 1;
} /* end test_full_group_dense() */
-#endif /* H5_GROUP_REVISION */
/*-------------------------------------------------------------------------
@@ -2414,16 +2373,18 @@ error:
int
main(void)
{
- hid_t fapl, fapl2, file;
- int nerrors = 0;
- char filename[1024];
const char *envval = NULL;
/* Don't run this test using the wrong file drivers */
envval = HDgetenv("HDF5_DRIVER");
- if (envval == NULL)
+ if(envval == NULL)
envval = "nomatch";
- if (HDstrcmp(envval, "core") && HDstrcmp(envval, "split") && HDstrcmp(envval, "multi") && HDstrcmp(envval, "family")) {
+ if(HDstrcmp(envval, "core") && HDstrcmp(envval, "split") && HDstrcmp(envval, "multi") && HDstrcmp(envval, "family")) {
+ hid_t fapl, fapl2, file;
+ int nerrors = 0;
+ char filename[1024];
+ hbool_t new_format;
+
/* Metadata cache parameters */
int mdc_nelmts;
size_t rdcc_nelmts;
@@ -2436,61 +2397,95 @@ main(void)
/* Open */
h5_reset();
fapl = h5_fileaccess();
- h5_fixname(FILENAME[0], fapl, filename, sizeof filename);
- if ((file=H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) TEST_ERROR;
-
- /* Make copy of regular fapl, to turn down the elements in the metadata cache */
- if((fapl2=H5Pcopy(fapl))<0)
- goto error;
-
- /* Get FAPL cache settings */
- if(H5Pget_cache(fapl2,&mdc_nelmts,&rdcc_nelmts,&rdcc_nbytes,&rdcc_w0)<0)
- printf("H5Pget_cache failed\n");
-
- /* Change FAPL cache settings */
- mdc_nelmts=1;
- if(H5Pset_cache(fapl2,mdc_nelmts,rdcc_nelmts,rdcc_nbytes,rdcc_w0)<0)
- printf("H5Pset_cache failed\n");
-
- /* Tests */
- nerrors += test_one(file);
- nerrors += test_many(file);
- nerrors += test_symlink(file);
- nerrors += test_rename(file);
- nerrors += test_new_move();
- nerrors += check_new_move();
- nerrors += test_filespace();
-
- /* Test creating & unlinking lots of objects with default FAPL */
- nerrors += test_create_unlink("create and unlink large number of objects",fapl);
- /* Test creating & unlinking lots of objects with a 1-element metadata cache FAPL */
- nerrors += test_create_unlink("create and unlink large number of objects with small cache",fapl2);
-
- nerrors += test_link_slashes();
- nerrors += test_unlink_slashes();
-
- /* Test specific B-tree removal issues */
- nerrors += test_unlink_rightleaf(file);
- nerrors += test_unlink_rightnode(file);
- nerrors += test_unlink_middlenode(file);
-
- /* Test "resurrecting" objects */
- nerrors += test_resurrect_dataset();
- nerrors += test_resurrect_datatype();
- nerrors += test_resurrect_group();
-
- /* Test unlinking chunked datasets */
- nerrors += test_unlink_chunked_dataset();
-
-#ifdef H5_GROUP_REVISION
- /* Test unlinked groups which still have objects in them */
- nerrors += test_full_group_compact();
- nerrors += test_full_group_dense();
-#endif /* H5_GROUP_REVISION */
-
- /* Close */
- if (H5Pclose(fapl2)<0) TEST_ERROR;
- if (H5Fclose(file)<0) TEST_ERROR;
+
+ /* Copy the file access property list */
+ if((fapl2 = H5Pcopy(fapl)) < 0) TEST_ERROR
+
+ /* Set the "use the latest version of the format" flag for creating objects in the file */
+ if(H5Pset_latest_format(fapl2, TRUE) < 0) TEST_ERROR
+
+ /* Test with old & new format groups */
+ for(new_format = FALSE; new_format <= TRUE; new_format++) {
+ hid_t my_fapl;
+
+ /* Set the FAPL for the type of format */
+ if(new_format) {
+ puts("\nTesting with new group format:");
+ my_fapl = fapl2;
+ } /* end if */
+ else {
+ puts("Testing with old group format:");
+ my_fapl = fapl;
+ } /* end else */
+
+ h5_fixname(FILENAME[0], my_fapl, filename, sizeof filename);
+ if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, my_fapl)) < 0) TEST_ERROR
+
+ /* Tests */
+ nerrors += test_one(file);
+ nerrors += test_many(file);
+ nerrors += test_symlink(file);
+ nerrors += test_rename(file);
+
+ nerrors += test_new_move(my_fapl);
+ nerrors += check_new_move(my_fapl);
+ nerrors += test_filespace(my_fapl);
+
+ /* Test creating & unlinking lots of objects with default FAPL */
+ nerrors += test_create_unlink("create and unlink large number of objects", my_fapl);
+
+ {
+ hid_t fapl_small_mdc;
+
+ /* Make copy of regular fapl, to turn down the elements in the metadata cache */
+ if((fapl_small_mdc = H5Pcopy(my_fapl)) < 0)
+ goto error;
+
+ /* Get FAPL cache settings */
+ if(H5Pget_cache(fapl_small_mdc, &mdc_nelmts, &rdcc_nelmts, &rdcc_nbytes, &rdcc_w0) < 0)
+ printf("H5Pget_cache failed\n");
+
+ /* Change FAPL cache settings */
+ mdc_nelmts=1;
+ if(H5Pset_cache(fapl_small_mdc, mdc_nelmts, rdcc_nelmts, rdcc_nbytes, rdcc_w0) < 0)
+ printf("H5Pset_cache failed\n");
+
+ /* Test creating & unlinking lots of objects with a 1-element metadata cache FAPL */
+ nerrors += test_create_unlink("create and unlink large number of objects with small cache", fapl_small_mdc);
+
+ if(H5Pclose(fapl_small_mdc) < 0) TEST_ERROR
+ } /* end block */
+
+ nerrors += test_link_slashes(my_fapl);
+ nerrors += test_unlink_slashes(my_fapl);
+
+ /* Test specific B-tree removal issues */
+ /* (only for old format groups) */
+ if(!new_format) {
+ nerrors += test_unlink_rightleaf(file);
+ nerrors += test_unlink_rightnode(file);
+ nerrors += test_unlink_middlenode(file);
+ } /* end if */
+
+ /* Test "resurrecting" objects */
+ nerrors += test_resurrect_dataset(my_fapl);
+ nerrors += test_resurrect_datatype(my_fapl);
+ nerrors += test_resurrect_group(my_fapl);
+
+ /* Test unlinking chunked datasets */
+ nerrors += test_unlink_chunked_dataset(my_fapl);
+
+ /* Test unlinked groups which still have objects in them */
+ /* (only for new format groups) */
+ if(new_format) {
+ nerrors += test_full_group_compact(my_fapl);
+ nerrors += test_full_group_dense(my_fapl);
+ } /* end if */
+
+ /* Close */
+ if(H5Fclose(file) < 0) TEST_ERROR
+ } /* end for */
+
if (nerrors) {
printf("***** %d FAILURE%s! *****\n", nerrors, 1==nerrors?"":"S");
exit(1);
@@ -2500,11 +2495,11 @@ main(void)
h5_cleanup(FILENAME, fapl);
}
else
- {
puts("All unlink tests skipped - Incompatible with current Virtual File Driver");
- }
+
return 0;
- error:
- return 1;
+error:
+ return 1;
}
+