summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2006-10-02 10:24:03 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2006-10-02 10:24:03 (GMT)
commita6f6462541cc57364586f770131e2ea074d63492 (patch)
tree0debf502fb7d66f9f470edb935a62223945960d4 /test
parent9bc29ea538b9ce2013a8cde5be230c18cf052009 (diff)
downloadhdf5-a6f6462541cc57364586f770131e2ea074d63492.zip
hdf5-a6f6462541cc57364586f770131e2ea074d63492.tar.gz
hdf5-a6f6462541cc57364586f770131e2ea074d63492.tar.bz2
[svn-r12700] Alert:
File format is not stable, don't keep files produced! Description: First stage of checkins modifying the format of groups to support creation order. Implement "dense" storage for links in groups. Try to clarify some of the symbols for the H5L API. Add the H5Pset_latest_format() flag for FAPLs, to choose to use the newest file format options (including "dense" link storage in groups) Add the H5Pset_track_creation_order() flag for GCPLs, to enable creation order tracking in groups (although no index on creation order yet). Remove --enable-group-revision configure flag, as file format issues are now handled in a backwardly/forwardly compatible way. Clean up lots of compiler warnings and other minor formatting issues. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/32 2.4 (heping) w/FORTRAN & C++ Linux/64 2.4 (mir) w/enable-v1.6 compa Mac OSX/32 10.4.8 (amazon) AIX 5.3 (copper) w/parallel & FORTRAN
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;
}
+